現在のプランを確認
Suite Team、Growth、Professional、EnterpriseまたはEnterprise Plus
この記事では、2025年2月2日時点でAIエージェントを試用または公開していたお客様のみが利用できる機能について説明します。AIエージェント - Advancedアドオンの同等の機能については、「その他のプラットフォームとAIエージェント - Advancedとの統合」を参照してください。
「APIコールを実行」ステップでは、社内のCRMやERPなどの他のシステムへAPIコールを設定したり、Amazon Event BridgeやGoogleアナリティクスなどの外部のエンドポイントに会話の内容をプッシュすることが可能です。

この記事では、このステップをメッセージング用AIエージェントに含めて設定する手順について説明します。

「APIコールを実行」ステップとその設定ルールの概要については、「AIエージェントのステップタイプについて:APIコールを実行」を参照してください。

この記事では、次のトピックについて説明します。

  • 「APIコールを実行」ステップをAIエージェントに追加する
  • APIの詳細を追加する
  • APIレスポンスの変数を保存する
  • ステップの分岐について

「APIコールを実行」ステップをAIエージェントに追加する

「APIコールを実行」ステップをAIエージェントに追加するには、いくつかの個別のタスクを行う必要があります。

以下の手順は、すでにメッセージング用AIエージェントを作成してあり、そのAIエージェントにこのステップを追加することを想定しています。
メモ:呼び出されたシステムが10秒以内に応答しない場合、コールはタイムアウトになります。

「APIコールを実行」ステップを追加するには

  1. 管理センターで、サイドバーの「 AI」をクリックし、「AIエージェント」>「AIエージェント」を選択します。
  2. 「メッセージング用のAIエージェントの管理」をクリックします。
  3. 編集するAIエージェントの名前をクリックします。
  4. 「回答」タブをクリックし、新しい回答を作成するか、既存の回答を開きます。
  5. ボットビルダーで、ステップを挿入したい場所(分岐の最後、または既存の2つのステップの間)で、「ステップを追加」アイコンをクリックします。
  6. 「設定」パネルで「APIコールを実行」をクリックします。
  7. ステップの説明を入力します。
    • 名前:チームが識別しやすいコールの名前。
    • 説明(オプション):コールが実行するアクションの簡単な説明。

    この情報はカスタマーには表示されません。

  8. 「APIの詳細を追加する」のセクションの手順に進みます。

APIの詳細を追加する

APIの詳細セクションを使用して、HTTPリクエストメソッド、外部リソースの場所、および必要に応じてヘッダーの追加など、実行するHTTPコールを設定します。以下の手順は、前のセクションの手順の続きです。

APIの詳細を追加するには

  1. 「設定」パネルで、「APIの詳細」をクリックします。
  2. 「リクエスト方法」を以下から選択します。
    • GET:APIサービスから外部リソースを取得します。これは、最もよく使用される方法です。
    • POST:外部システムでリソースを作成するためのデータを送信します。リソースがすでに存在する場合は、送信されたデータによってリソースが変更されます。
    • PUT:リソースを更新するためのデータを送信します。
    • PATCH:外部サイトのリソースを更新するためのデータを送信します。リソースの部分的な変更を適用するために使用されます。
    • DELETE:外部サイトのリソースを削除します。
  3. エンドポイントURLを入力します。

    エンドポイントURLは、接続先の外部リソースの場所です。エンドポイントURLは、https://プロトコルをサポートしています。URLのパスやクエリ文字列の値に変数を含めることができます。詳細については、「APIコールで変数を渡す」を参照してください。

  4. オプションで、APIコールを認証するためのコネクションを選択します。
    メモ:コネクションを「APIコールを実行」ステップで使用する前に、コネクションを作成する必要があります。
  5. 必要であれば、オプションのヘッダーのキーと値を入力します。
    重要:認証にヘッダーを使用しないでください。今後はAPIコネクションを使用してください。

    認証関連のヘッダー(authorizationやx-api-keyなど)を含む「APIコールを実行」ステップは自動的に失敗します。「APIコールを実行」ステップが失敗すると、会話はそのステップの「APIコールに失敗」分岐に移動します。

  6. 「APIコールを実行」をクリックして、APIコールをテストします。

    ステップのURLやヘッダーに変数が追加されている場合、外部サービスにオプションのテストデータを入れて、APIコールが期待通りに動作しているかどうかを確認することができます。設定されたエンドポイントURLに対してHTTPリクエストが行われることに注意してください。

APIコールで変数を渡す

APIコールのエンドポイントURLを入力する際に、URLのパスまたはクエリの文字列値に変数を含めることができます。これにより、会話から外部システムにデータを渡すことができます。

たとえば、メッセージング用AIエージェントは、「詳細を質問」ステップを使用して、注文番号を入力するようカスタマーに求めることができます。その後、AIエージェントは「APIコールを実行」ステップを使用して、オンラインストアからその注文の出荷ステータスを取得することができます。

エンドポイントURLのドメインまたはサブドメイン内で変数を使用することはできません。次の表に、有効なエンドポイントURLの値と無効なエンドポイントURLの値の例を示します。

有効なエンドポイントURLの値 無効なエンドポイントURLの値
https://myshopify.com/admin/api/orders/order_number.json

Shopifyから注文IDを指定して注文を取得する。

https://domain.com/api/search?input=value

ドメイン/サブドメインに変数を追加することはできない

https://maps.googleapis.com/maps/api/place?input=city_name

Googleのplace APIからキーワード検索で場所を取得する

https://example.com/api/search?key=value

クエリ文字列のキーに変数を追加することはできない

変数が無効または空である場合、AIエージェントは会話中にその変数をスキップします。

メモ:変数の値は自動翻訳されません。メッセージングの会話で自動翻訳を使用する場合は、この点に留意してください。

APIレスポンスの変数を保存する

APIコールの詳細を設定し、テストした後、APIコールのJSONレスポンスの値を変数として保存することができます。「APIコールを実行」ステップでは、最大12つの変数を保存できます。変数の値の最初の280文字のみが保存されます。

レスポンスデータから変数を作成するには

  1. 「設定」パネルで「APIコールを実行」をクリックします。
  2. アコーディオンを展開し、外部システムから変数に変換するデータを見付けます。
    ヒント:「レスポンス本体」タブに切り替えると、外部システムから返された未加工応答が表示されます。
  3. 「保存」をクリックします。
  4. 新しい変数に名前を付けます。

    変数名に使用できる文字は、小文字、数字、アンダースコアのみです。

APIコールで配列変数を渡す

「APIコールを実行」を使用して配列変数を渡し、外部システムにURLを提供することができます。外部システムにはAPIエンドポイントが必要です。APIエンドポイントとは、APIがリクエストを受け取り、レスポンスを送信するURLです。これで2つのシステムが相互にやりとりできるようになります。以下の例に示すように、レスポンスはJavaScript Object Notation(JSON)フォーマットでレンダリングされます。
{               
    "info": {   
        "count": 50,
        "pages": 2,
        "next": "https://mycompany.com/api/orders?page=2",
        "prev": null
    },      
    "results": [
        {   
            "id": 1052,
            "name": "Alexander Cummings",
            “address”: “123 MyStreet”,
            "Item": "belt",
            "price": "15.00",
            "image": "https://mycompany.com/api/orders/avatar/1.jpeg",
	…
    
返されるデータを視覚化するために、配列変数の最初の項目のみが管理センターに表示されます。たとえば、上記のJSON出力では、id、name、address、item、price、imageがすべて表示されます。このデータは通常カルーセルに渡されますが、カルーセルはデータを最大10個までしか表示できません。
メモ:プロパティ値の最初の280文字だけがレスポンスに表示されます。
ネストされたJSON配列は、配列変数として保存することもできます。たとえば、以下のようなJSON出力がある場合、lastnameとfirstnameは別々の配列変数として保存できます。
"name": 
   {
      "lastname": "Cummings”,
      "firstname": “Alexander"
   },
    

配列や配列の値を管理センターのカルーセル設定内で編集することはできません。データを変更する必要がある場合は、管理センターで配列を削除し、新しい配列を作成する必要があります。

返された変数がNULLの場合、アイテムはカルーセルに表示されません。たとえば、次のようなシナリオで、変数{{customer.order}}の値が空であるとします。カード1の場合、カードには「Order number」というタイトルの一部がレンダリングされます。カード2の場合、結果のタイトルは空なので、カード2はレンダリングされません。
Card 1
Title: Order number {{customer.order}}
Description: Here's your order {{product.description}}

Card 2
Title: {{customer.order}}
Description: Here's your order {{product.description}}
    

例

この例では、注文の配列を返すAPIエンドポイントを使用して配列変数を作成します。注文の配列は、以下のようにAPIレスポンススニペットの"results"プロパティで指定します。

     {
  "info": {
   "count": 5,
   "pages": 1
  },
  "results": [
   {
    "createdAt": "July 10, 2023",
    "name": "Connie Stokes",
    "Shippingaddress": "123 Street, City, State",
    "order": {
      "Status": "Ordered",
      "Image": "https://images.pexels.com/photos/1484808/pexels-photo-1484808.jpeg"
    },
    "Quantity": 1,
    "Price": 45,
    "Item": "Shirt",
    "id": "1"
   },
…   

この例を使って、「APIコールを実行」ステップを使って配列変数を作成し、動的カルーセルを使用してエンドユーザーに結果を表示します。

配列を作成するには

  1. 「設定」パネルで「APIコールを実行」をクリックします。
  2. 名前に「orders」と入力します。
  3. 「設定」パネルで、「APIの詳細」をクリックします。
  4. 「リクエスト方法」ドロップダウンをクリックし、「GET」を選択します。
  5. エンドポイントURLのURLを入力します。
  6. 「認証」で、認証方法を選択します。

    詳細については、「外部サービスと統合するためのコネクションの作成」を参照してください。

  7. 「APIコールを実行」をクリックします。
  8. resultsの横にある「保存」をクリックします。

  9. 「値」ドロップダウンから、「Order」、「Image」の順に選択します。

    デフォルトの変数名(image)を使用します。

  10. 「項目を追加」をクリックし、上記の手順を繰り返して、「Order Status」と「Item」の項目を作成します。

    最大12個の項目(キーと値のペア)を追加できます。

  11. 「保存」をクリックします。
動的カルーセルを作成するには
  1. ボットビルダーの「APIコールに成功」で「ステップを追加」をクリックし、「カルーセルを追加」を選択します。
  2. 「設定」パネルで、「動的メッセージに変換」をクリックします。
  3. 「配列」ドロップダウンで、「results」をクリックします。これは、上記で作成した配列です。
  4. タイトルでは、プラス記号(+)をクリックしresults.itemを選択します。

    タイトルと説明には最大128文字まで入力できます。

  5. 「ボタンのリンク」で、プラス記号(+)をクリックし、results.imageを選択します。
  6. 「ボタンのテキスト」で、プラス記号(+)をクリックし、results.statusを選択します。
  7. 「画像のリンク」で、プラス記号(+)をクリックし、results.imageを選択します。
  8. 「完了」をクリックします。

動的カルーセルの例を以下に示します。

ステップの分岐について

「APIコールを実行」ステップは、分岐ステップです。このステップを追加すると、APIリクエストが正常に実行されたかどうかによって、AIエージェントの応答が分岐します。

次のような場合、AIエージェントは失敗の分岐をたどります。
  • APIが応答コード400または500を返した。
  • 保存された変数のいずれかが見つからないか、null 値である。

それ以外の場合、AIエージェントは成功の分岐をたどります。

「APIコールを実行」ステップを使用する場合、接続する外部システムが「Zendesk以外の第三者サービス」(「メインサービス契約」に定義)であることを了承するものとします。Zendeskは、ボットビルダーの拡張機能の使用によって可能になる「Zendesk以外の第三者サービス」については運営も管理も行いません。また、Zendeskはお客様または「Zendesk以外の第三者サービス」の法的または規制遵守義務について責任を負いません。
Powered by Zendesk