Webhooks - HTTP webhookトリガー経由の新規イベント
New event via HTTP webhookトリガーは、webhookを受信したときにレシピのアクションを実行します。 このトリガーは、レシピが停止している場合にwebhookを処理しません。
入力
| 入力フィールド | 説明 |
|---|---|
| Event name(イベント名) | このwebhookトリガーがリッスンするイベントの名前を入力します。 この名前は、webhookトリガーの一意のURIを作成するために使用されます。 |
| Payload configuration | このフィールドを展開して、webhookイベントから想定されるpayloadを手動で設定します。 |
| Webhookタイプ | 受信webhookに一致するtypeを選択します。 次のリストから選択できます。 |
| Payload schema | webhookイベントから受信すると想定されるフィールドを記述します。 webhooks wizardを使用する場合、サンプルwebhookイベントをテンプレートとして使用してschemaが自動生成されます。 それ以外の場合は、各フィールドをschemaに手動で追加する必要があります。 次のwebhookタイプを使用する場合は、このフィールドを定義する必要があります: GET request、PUT/POST with JSON payload、PUT/POST with XML payload、PUT/POST with FORM encoded payload。 |
| クエリパラメーター | webhookイベントから想定されるquery parameterを記述します。 |
| ヘッダー | webhookイベントから想定されるheadersを記述します。 webhooks wizardを使用する場合、サンプルwebhookイベントをテンプレートとして使用してHeadersが自動生成されます。 それ以外の場合は、このinput fieldを設定する方法が2つあります。 より簡単な方法は、サンプルJSONを使用してすべてのフィールドを一度に生成することです。 または、各フィールドを個別に追加できます。 |
重複排除ヘッダー
X-Workato-Dedupヘッダーは、任意の受信webhookイベントに追加できる任意のwebhookヘッダーです。
X-Workato-Dedupヘッダーを使用すると、重複するwebhookイベントによってWorkatoで重複ジョブが作成されるのを防止できます。 指定されている場合、Workatoはジョブを作成する前に、このイベントのX-Workato-Dedupヘッダー値がこのレシピで以前に検出されていないことを検証します。 これは、イベントの"at least once"配信を保証するカスタムシステムに役立ちます。
Webhookタイプ
Webhook typeとして次のオプションを選択できます:
- GET request
- PUT/POST with JSON payload
- PUT/POST with XML payload
- PUT/POST with FORM encoded payload
- PUT/POST with raw binary data
- PUT/POST with unicodeテキストdata
出力
| 出力フィールド | 説明 |
|---|---|
| ヘッダー | この出力オブジェクトには、このレシピを呼び出すwebhookイベントから想定されるすべてのheadersのデータピルが含まれています。 不足しているheadersを追加するには、Headers input fieldにフィールドを追加します。 |
| ペイロード | この出力オブジェクトには、このレシピを呼び出すwebhookイベントから想定されるデータに一致するデータピルが含まれています。 これらのフィールドを追加または編集するには、Payload schema input fieldを更新します。 |
Webhook response
Webhookトリガーはデフォルトで、200response codeと{"status":"ok"}のJSON payloadでイベントに応答します。 以下に例を示します:
$ curl 'https://www.workato.com/webhooks/rest/b48a7c64-a7dd-4185-936b-ada1ca84e9fd/foobar' -i
HTTP/1.1 200 OK
Date: Wed, 28 Jul 2021 10:03:18 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive
Server: nginx
Vary: Origin
X-Request-Id: 0b6d7f2ffbfab278c685080aed91d690
X-Correlation-Id: 0b6d7f2ffbfab278c685080aed91d690
Strict-Transport-Security: max-age=31536000; includeSubDomains
{"status":"ok"}WEBHOOK検証
- Workatoは、payloadが有効なJSONであることを確認するために、定義した
Webhook typeで示されるJSONベースのwebhookに対して検証を実行します。 そうでない場合、Workatoは400 bad requestで応答します。 - Workatoは、payloadがUTF-8互換であることを確認するために、定義した
Webhook typeで示されるJSON/Form/XML/Unicodeテキストベースのwebhookに対して検証を実行します。 そうでない場合、Workatoは400 bad requestで応答します。 payloadがUTF-8非互換の場合は、Webhook TypeにRaw Binary Dataオプションを使用します
Custom responses
状況によっては、webhookクライアントでHTTP responseの1つ以上の部分に異なる構造が必要になります。 これを実現するために、webhooks connectorはquery parameterによるデフォルトresponse構造の変更をサポートしています。
| Query parameter | 使用可能な値 | 説明 |
|---|---|---|
| workato_response_code | 2XXコードのみ。 デフォルトは`200`です。 | 別のresponse status codeを返します。 例: 201または204。 204 NO CONTENT RESPONSE CODE
|
| workato_empty_response |
| {"status":"ok"}の代わりに空のresponse bodyを返します |
次の例では、workato_response_code=201を使用してHTTP response codeとして201 Createdを返します:
$ curl 'https://www.workato.com/webhooks/rest/b48a7c64-a7dd-4185-936b-ada1ca84e9fd/custom-code?workato_response_code=201' -i
HTTP/1.1 201 Created
Date: Wed, 28 Jul 2021 10:05:03 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 15
Connection: keep-alive
Server: nginx
Vary: Origin
X-Request-Id: b23380f48d02c38fa761e8afa4b94862
X-Correlation-Id: b23380f48d02c38fa761e8afa4b94862
Strict-Transport-Security: max-age=31536000; includeSubDomains
{"status":"ok"}コネクターのstatic webhook URIはどこで確認できますか。
custom connectorのstatic webhook URIを確認するには、次の手順を完了します:
ツール > Connector SDKに移動します。
使用するコネクターを選択します。
Source codeに移動し、Test codeタブをクリックします。
Static webhook URIセクションを展開し、指定されたURIをコピーします:
コネクターwebhook URI
Last updated: