コールバック呼び出し API

コールバック通話とは、エンドユーザーからリクエストされた通話のことです。コールバック呼び出し API を使用すると、コールバック呼び出しをプログラムでスケジュール設定し、スケジュール設定された呼び出しをキャンセルできます。これらの機能を使用すると、エンドユーザーが指定したキューからコールバック呼び出しをリクエストできるアプリケーションを作成できます。エンドユーザーは、以前にスケジュールした通話をキャンセルすることもできます。コールバック呼び出し API を使用した認証については、基本認証をご覧ください。

コールバック通話 API を使用する

コールバック呼び出し API を使用すると、コールバック呼び出しのスケジュール設定と、スケジュール設定された呼び出しのキャンセルを行うことができます。

電話相談を予約

呼び出しをスケジュールするには、POST https://<subdomain>.<domain>/apps/api/v1/calls を呼び出し、次のようなリクエスト本文を含めます。

{
    "call_type": "ScheduledCall",
    "menu_id": 12345,
    "end_user_number": "+18005550100",
    "scheduled_at": "2025-09-02T14:30:00Z"
}

リクエストが成功すると、通話 ID を含む通話オブジェクトが返されます。

スケジュール設定した通話をキャンセルする

スケジュールされた呼び出しをキャンセルするには、PATCH https://<subdomain>.<domain>/apps/api/v1/calls/scheduled/{id}/cancel を呼び出します。キャンセルする通話の ID を指定します。

リクエストが成功すると、更新された通話オブジェクトを含む 200 OK が返されます。コール オブジェクトの status は、コールがスケジュールされた時間を待機しているとき、またはキューに入っているとき、またはキューで待機しているときは cancelled です。最初のダイヤル試行をすでに完了しているアクティブな仮想エージェント コールバックをキャンセルすると、completed になります。通話がすでにキャンセルされている場合、リクエストは空の本文を含む 204 No Content を返します。キャンセル以外の理由ですでに失敗した通話、またはキャンセルできない状態の通話に対するリクエストは、400 を返します。

スケジュールされた複数の通話をキャンセルする

スケジュール設定された複数の呼び出しをキャンセルするには、PATCH https://<subdomain>.<domain>/apps/api/v1/calls/scheduled/cancel を呼び出します。キャンセルする通話の通話 ID の call_ids 配列を含むリクエスト本文を含めます。

次のコードサンプルを参照してください。

{
    "call_ids": [123, 456, 789]
}

リクエストが成功すると、202 Accepted が返されます。Location レスポンス ヘッダーは、完了をポーリングできるジョブリソースを指します。202 Accepted レスポンスは、すべての呼び出しがキャンセルされたことを意味するものではありません。Location ヘッダーに従って完了を確認し、部分的な失敗を検査します。

CRM でコールバック通話を使用する

コールバック通話 API は、Salesforce、Zendesk、ServiceNow CRM の統合で使用できます。

一般的なコールバックの動作

サポートされている CRM(Salesforce、Zendesk、ServiceNow)を使用している場合、次の条件がスケジュールされたコールバックの動作に影響します。

  • レコードが開いており、すでにアクティブなスケジュール設定された通話がある: チケット ID の検索で、レコードが開いており、すでにアクティブなスケジュール設定された通話があることが示された場合、通話はスケジュール設定されません。CRM レコードに次のコメントが添付されています。A scheduled call was not created because the record already has an active scheduled call

  • CRM にアクセスできない: チケット ID の検索で CRM にアクセスできないことが示された場合、通話はキャンセルされます。CRM レコードに次のコメントが添付されています。A scheduled call was canceled because the CRM was unreachable

クローズされたレコードでのコールバックの動作

クローズされたレコードのコールバック呼び出しの処理方法は、使用している CRM によって異なります。

  • Zendesk と ServiceNow のユーザー: チケット ID の検索でレコードがクローズされていることが示された場合、通話はスケジュールされません。CRM レコードに次のコメントが添付されています。A scheduled call was not created because the record is closed

  • Salesforce ユーザー: Salesforce でのコールバック通話を参照して、クローズされたレコードのスケジュールされた通話をインスタンスが処理する方法を構成します。

Salesforce でのコールバック

CCAI Platform を Salesforce と統合している場合は、クローズされたレコードのスケジュールされた通話をインスタンスが処理する方法を構成できます。Salesforce 統合の構成オプションは次のとおりです。

レコードのステータスを確認しない

CCAI Platform を構成して、スケジュールされた通話を行う前にレコードのステータスを確認しないようにできます。この構成では、レコードが開いているか閉じているかに関係なく、スケジュールどおりに呼び出しが行われます。

レコードのステータスを確認しないように CCAI Platform を構成する手順は次のとおりです。

  1. CCAI Platform ポータルで、[Settings] > [Operation Management] をクリックします。[設定] メニューが表示されない場合は、 [メニュー] をクリックします。

  2. [CRM Record Creation Details] > [Closed record options when initiating an API-scheduled call] に移動します。

  3. [レコードのステータスを確認しない。常に API でスケジュールされた呼び出しを開始します。

  4. [Save General] をクリックします。

レコードのステータスを確認し、クローズされたレコードを再開する

CCAI Platform を構成して、スケジュールされた通話を行う前にレコードのステータスを確認し、クローズされたレコードを再度開くことができます。この構成では、レコードのステータスがクローズされると、次のアクションが実行されます。

  • 予定どおりに電話をかけます。

  • レコードが再開されます。

  • CRM レコードに次のコメントが添付されています。The record was reopened at the time of a scheduled call

CCAI Platform を構成してレコードのステータスを確認し、クローズされたレコードを再開する手順は次のとおりです。

  1. CCAI Platform ポータルで、[Settings] > [Operation Management] をクリックします。[設定] メニューが表示されない場合は、 [メニュー] をクリックします。

  2. [CRM Record Creation Details] > [Closed record options when initiating an API-scheduled call] に移動します。

  3. [レコードのステータスを確認するレコードがクローズされている場合 > レコードを再オープンします。

  4. [Save General] をクリックします。

レコードのステータスを確認し、クローズされたレコードのスケジュールされた通話をキャンセルする

CCAI Platform を構成して、スケジュールされた通話を行う前にレコードのステータスを確認し、クローズされたレコードのスケジュールされた通話をキャンセルできます。この構成では、レコードのステータスがクローズされると、次のアクションが実行されます。

  • スケジュールされた通話がキャンセルされます。

  • CRM レコードに次のコメントが添付されています。A scheduled call was canceled because the record is closed

CCAI Platform を構成して、レコードのステータスを確認し、クローズされたレコードのスケジュールされた通話をキャンセルする手順は次のとおりです。

  1. CCAI Platform ポータルで、[Settings] > [Operation Management] をクリックします。[設定] メニューが表示されない場合は、 [メニュー] をクリックします。

  2. [CRM Record Creation Details] > [Closed record options when initiating an API-scheduled call] に移動します。

  3. [レコードのステータスを確認する記録がクローズされている場合 > 予定されたコールをキャンセルします。

  4. [Save General] をクリックします。