Webhook からの戻り値を使用する

以下の各セクションでは、Webhook からの戻り値を使用する方法を説明します。

Webhook の戻り値を構成する

タスクを構成する際は、必要に応じて次の設定を使用して Webhook からの戻り値をキャプチャします。

  • [Return value] 切り替えを有効にする
  • [Specific types] フィールドを使用して、JSON レスポンスの戻り値を AppSheet のデータ型にマッピングする

Webhook からの戻り値を自動化で使用する

: 戻り値を使用して、以下を定義することはできません

自動化でこのタスクの後に定義された式で Webhook からの戻り値を使用するには、次の構文を使用して出力を参照します。

  • [ステップ名].[フィールド名]
戻り値のフィールド名は大文字と小文字が区別され、文字、数字、アンダースコアのみを使用できます。

たとえば、Call Address Service という名前の Webhook 呼び出しタスクは、次の戻り値を取得します。

Specific type fields called ZipCode and StreetName that are mapped to Address and Text data types, respectively

戻り値を参照するには、次の形式を使用します。[Call Address Service].[フィールド名]

例:

CONCATENATE([Call Address Service].[ZipCode],[Call Address Service].[StreetName],"")

レスポンスのネストされたフィールドを使用する

複合型のネストされた配列はサポートされていません。戻り値の制限事項をご覧ください。

AppSheet は、レスポンス内の任意のレベルでネストされたオブジェクトをサポートします。ネストされたフィールドを使用するには、.(ドット)セパレータを使用します。

たとえば、ある従業員のレスポンス データに、次のように部署情報が含まれているとします。

"name": "John Doe",
"department": {
   "name": "Finance"
}

この場合、次の構文を使用して部署名を参照できます。

[ステップ名].[department.name] // 戻り値は「Finance」

レスポンスの配列内の値を使用する

INDEX() 関数を使用して、レスポンスの配列内の値を使用します。

たとえば、ある従業員のレスポンス データに、次のように組織情報が配列として含まれているとします。

{
  "ID": 123,
  "company": "mycompany",
  "function": {
    "role": "project-manager",
    "organizations": ["Finance", "Engineering", "Cloud"]
  }
}

この場合、次の構文を使用して Engineering 組織を参照できます。

INDEX([ステップ名].[function.organizations],2) // これで「Engineering」が返されます

戻り値のデバッグに関するヒント

次のセクションでは、戻り値のデバッグに関するヒントを提供します。

エラー メッセージ

型変換に失敗した場合でも、bot の実行は成功しますが、Automation Monitor にエラー メッセージが報告されます。

次の表に、JSON マッピングの問題に基づいて返されるエラー メッセージを示します。

JSON マッピングの問題 エラー メッセージ
配列内の異なる型 Failed Webhook type translation: List type for key '{0}' must only have a single child type

キーが見つからない

Failed Webhook type translation: Key 'key' not found in returned object

不正な型のマッピング 

Failed Webhook type translation: Failed to translate ‘type’ to 'userDefinedType' type

ネストされたオブジェクト

Failed Webhook type translation: Failed to translate ‘type’ to 'userDefinedType' type as the value is of object data type 

非プリミティブ配列

Failed Webhook type translation: List type for key '{0}' cannot contain nested or repeated types

Null レスポンス

Failed Webhook type translation: Return value is NULL

タイムアウト値

タイムアウトは次のように処理されます。

  • 次の値を比較する場合、タイムアウトの最小値が使用されます。
    • bot 実行タイムアウト
    • Webhook タスク タイムアウト
  • スケジュールされたイベントを伴う自動化の場合、タイムアウトの最大値は 5 分です。データ変更イベントを伴う自動化の場合、タイムアウトの最大値は 2 分です。

戻り値の制限事項

Webhook からの戻り値がサポートされているのは以下のみです。

  • HTTP GETPATCHPOSTPUTDELETE メソッド
  • JSON ファイル形式
  • 以下のような JSON レスポンス内のネストされたオブジェクト:

    {
      "ID": 123,
      "company": "mycompany",
      "employee": {
        "lastname": "Doe",
        "firstname": "Jane"
      }
    }

  • 以下のような同じ型のフラット配列:

    {
      "ID": 123,
      "company": "mycompany",
      "function": {
        "role": "project-manager",
        "organizations": ["Finance", "Engineering", "Cloud"]
      }
    }

現時点では、Webhook からの戻り値は以下ではサポートされていません

  • 再利用可能な自動化コンポーネント
  • 非同期 HTTP 呼び出し([Run Asynchronously] を有効にする)
  • XML などの他のファイル形式
  • 以下のような複合型のネストされた配列:

    {"company": "mycompany", 
        "Employees":
           [{
              "lastname": "Doe",
              "firstname": "Jane"
           },{
              "lastname": "Doe",
              "firstname": "John"
           }]
    }

この情報は役に立ちましたか?

改善できる点がありましたらお聞かせください。
検索
検索をクリア
検索を終了
Google アプリ
メインメニュー
7446754333405711365
true
ヘルプセンターを検索
true
true
true
false
false
false
false