Webhook の作成

Webhook を作成するには、POST メソッドを使用します。POST のボディには少なくとも webhook および tableName 引数が JSON 形式で含まれている必要があります。

コンポーネント 説明

HTTP メソッド

POST

URL

https://ホスト/fmi/odata/<バージョン>/<データベース名>/Webhook.Add

<ホスト> – FileMaker Cloud または FileMaker Server のホスト名

<バージョン> – OData のバージョン。常に v4

<データベース名> – 共有データベースの名前

例: /fmi/odata/v4/連絡先管理/Webhook.Add

引数

JSON の例:

コピー
{
  "webhook": "https://my.example.com:8080/webhook",
  "endpointHeaders": {
    "Content-Type": "application/json"
  },
  "queryHeaders": {
     "Prefer": "fmodata.entity-ids",
     "Accept": "application/json;IEEE754Compatible=true"
  },
  "tableName": "myTable",
  "notifySchemaChanges": true,
  "select": "PrimaryKey,CreatedBy",
  "filter": "CreatedBy eq 'Admin'",
  "maxFailedAttempts": 10
}

メモ 

  • queryHeaders は Webhook ペイロードの生成方法を制御し、endpointHeaders (または従来の headers) は処理に影響を与えることなく常にエンドポイントに送信されます。上記の例では、queryHeaders には次が含まれています:

    • "Prefer": "fmodata.entity-ids" によって Webhook ペイロードではテーブル名やフィールド名の代わりにエンティティ ID が使用されます。

    • "Accept": "application/json;IEEE754Compatible=true" によって小数値は引用符で囲まれます。

  • maxFailedAttempts は作成した Webhook に適用されます。maxFailedAttempts を 0 に設定すると再試行の回数の制限がなくなります。ペイロードを正常に受信するか Webhook が削除されるまでペイロードの送信を再試行します。再試行は「fmodata.log」ファイルに記録されます。

  • リクエストに webhook と tableName のみが含まれる場合、次の引数にはデフォルト値が使用されます:

    コピー
    {
      ...
      "headers": {},
      "notifySchemaChanges": false,
      "maxFailedAttempts": 0,
      "select": "",
      "filter": ""
     }