> ## Documentation Index
> Fetch the complete documentation index at: https://auth0.generaltranslation.app/llms.txt
> Use this file to discover all available pages before exploring further.

# アクションのトリガー：custom-phone-providerのAPIオブジェクト

> custom-phone-providerのAPIオブジェクトを使用する方法について説明します。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  電話メッセージプロバイダーは、現在早期アクセス版として提供されています。Auth0のリリースについては、「[製品のリリース段階](https://auth0.com/docs/troubleshoot/product-lifecycle/product-release-stages)」を参照してください。
</Callout>

`custom-phone-provider`アクショントリガーのAPIオブジェクトは以下を含みます。

<div id="apicache">
  ## `api.cache`
</div>

実行間で維持されるデータの保存と取得を行います。

<div id="apicachedeletekey">
  ### `api.cache.delete(key)`
</div>

提供されたkeyにキャッシュ済みの値が存在する場合は、それを記述したレコードを削除します。

値がキャッシュから削除されると、`CacheWriteResult`オブジェクトに`type: "success"`を含めて返します。操作に失敗すると、`type: "error"`を返します。エラーの場合には、返すオブジェクトにcodeプロパティを含めて、失敗の詳細を示します。

<table class="table">
  <thead>
    <tr>
      <th>パラメーター</th>
      <th>説明</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>`key`</td>

      <td>
        <p>
          <em>文字列</em>です。キャッシュに保管されているレコードのキーです。
        </p>
      </td>
    </tr>
  </tbody>
</table>

<div id="apicachegetkey">
  ### `api.cache.get(key)`
</div>

提供されたkeyにキャッシュ済みの値が存在する場合は、それを記述したレコードを取得します。レコードが見つかった場合には、返されたvalueプロパティにキャッシュ済みの値が含まれます。

提供された`key`にキャッシュが見つかった場合には、キャッシュレコードを返します。キャッシュレコードは`value`プロパティを含むオブジェクトで、このプロパティにはキャッシュ済みの値の他にも`expires_at`プロパティが含まれ、レコードの有効期間をUNIXエポックからの経過ミリ秒数で示します。

**重要** ：このキャッシュは、短命で一時的なデータ向けに設計されています。項目が所定のライフタイム内であったとしても、後のトランザクションでは利用できないかもしれません。

<table class="table">
  <thead>
    <tr>
      <th>パラメーター</th>
      <th>説明</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>`key`</td>

      <td>
        <p>
          <em>文字列</em>です。キャッシュに保管されているレコードのキーです。
        </p>
      </td>
    </tr>
  </tbody>
</table>

<div id="apicachesetkey-value-options">
  ### `api.cache.set(key, value, [options])`
</div>

指定されたkeyのキャッシュに文字列値を保管または更新します。

このキャッシュに保管された値は、それを設定するトリガーにスコープが限定されます。これは[アクションのキャッシュ制限](https://auth0.com/docs/ja-jp/customize/actions/limitations)の対象になります。

このように保管された値には、指定された`ttl`または`expires_at`値までのライフタイムがあります。ライフタイムが指定されない場合には、デフォルトのライフタイムである15分が使用されます。ライフタイムは[アクションのキャッシュ制限](https://auth0.com/docs/ja-jp/customize/actions/limitations)が定める最大値を超過してはいけません。

`options.ttl`

任意の数値です。このキャッシュエントリの存続時間をミリ秒単位で指定します。キャッシュ済みのレコードは早期に削除されることはあっても、`ttl`で指定された時点を過ぎて存続することはありません。

注意：同じ値が`expires_at`で指定されている場合には、この値を指定するべきではありません。両方で指定された場合は、2つの中で早い方の有効期限が適用されます。

<table class="table">
  <thead>
    <tr>
      <th>パラメーター</th>
      <th>説明</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>`key`</td>

      <td>
        <p>
          <em>文字列</em>です。キャッシュに保管されているレコードのキーです。
        </p>
      </td>
    </tr>

    <tr>
      <td>`value`</td>

      <td>
        <p>
          <em>文字列</em>です。保管するレコードの値です。
        </p>
      </td>
    </tr>

    <tr>
      <td>`options`</td>

      <td>
        <p>
          <em>任意のオブジェクト</em>です。キャッシュの動作を調整するためのオプションです。
        </p>
      </td>
    </tr>

    <tr>
      <td>`options.expires_at`</td>

      <td>
        <p>
          任意の数値です。UNIXエポックからのミリ秒単位で指定した絶対有効期限です。キャッシュ済みのレコードは早期に削除されることはあっても、`expires_at`で指定された時点を過ぎて存続することはありません。
        </p>

        <p>
          <b>注意：</b>同じ値が`ttl`で指定されている場合には、この値を指定するべきではありません。両方で指定された場合は、2つの中で早い方の有効期限が適用されます。
        </p>
      </td>
    </tr>

    <tr />
  </tbody>
</table>

<div id="apinotification">
  ### `api.notification`
</div>

通知イベントを再試行または中止するべきかをか知らせます。実際の動作については、これらの各メソッドの詳細を参照してください。呼び出しを複数回行った場合には、最後の呼び出しのみが有効になります。

<div id="apinotificationdropreason">
  ### `api.notification.drop(reason)`
</div>

呼び出されると、通知イベントは未回復の失敗として扱われます。

このイベント[`(fn)`](https://auth0.com/docs/ja-jp/deploy-monitor/logs/log-event-type-codes)はエラーとしてログに記録されますが、その後、アクションには送信されません。

この通知イベントの再試行が必要な場合には、代わりに`api.notification.retry`の呼び出しを検討してください。

<table class="table">
  <thead>
    <tr>
      <th>パラメーター</th>
      <th>説明</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>`reason`</td>

      <td>
        <p>
          <em>任意の文字列</em>です。これはログエントリに含まれるため、エラーを詳しく調べるのに役立ちます。このフィールドは1024文字に制限されているため、超える場合は切り詰められることに注意してください。
        </p>
      </td>
    </tr>
  </tbody>
</table>

<div id="apinotificationretryreason">
  ### `api.notification.retry(reason)`
</div>

呼び出されると、通知イベントは失敗として扱われますが、回復する可能性があります。

このイベント[`(fn)`](https://auth0.com/docs/ja-jp/deploy-monitor/logs/log-event-type-codes)はエラーとしてログに記録され、その後、数分にかけて5回まで再試行されます。

この通知イベントの再試行が不必要な場合には、代わりに`api.notification.drop`の呼び出しを検討してください。

<table class="table">
  <thead>
    <tr>
      <th>パラメーター</th>
      <th>説明</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>`reason`</td>

      <td>
        <p>
          <em>任意の文字列</em>です。これはログエントリに含まれるため、エラーを詳しく調べるのに役立ちます。このフィールドは1024文字に制限されているため、超える場合は切り詰められることに注意してください。
        </p>
      </td>
    </tr>
  </tbody>
</table>
