Admin API:Webhook
Webhook を作る、変える、削除する操作と、テストの送信、送信履歴、再送の操作です。共通の決まり(認証、エラーの形、日時)は Admin API のリファレンス にあります。
届く Webhook の形と署名の確かめ方は、Webhook を受け取る にあります。
例の <ホスト名> はあなたの環境のホスト名、<アクセストークン> は hako_pat_ で始まるアクセストークンに置き換えます。<slug> などのほかの山かっこの値は、各操作のパラメーターの表にあるものに置き換えます。
| 操作 | メソッドとパス |
|---|---|
| Webhook の一覧 | GET /admin/api/spaces/{slug}/webhooks |
| Webhook を作る | POST /admin/api/spaces/{slug}/webhooks |
| Webhook を取得する | GET /admin/api/spaces/{slug}/webhooks/{id} |
| Webhook の設定を変える | PATCH /admin/api/spaces/{slug}/webhooks/{id} |
| Webhook を削除する | DELETE /admin/api/spaces/{slug}/webhooks/{id} |
| Webhook の送信履歴 | GET /admin/api/spaces/{slug}/webhooks/{id}/deliveries |
| Webhook の送信を、同じ本文で送り直す | POST /admin/api/spaces/{slug}/webhooks/{id}/deliveries/{delivery_id}/redeliver |
| Webhook をテストで送る | POST /admin/api/spaces/{slug}/webhooks/{id}/test |
Webhook の一覧
Section titled “Webhook の一覧”GET /admin/api/spaces/{slug}/webhooks- ログイン:要る(セッションかアクセストークン)
パラメーター:
| 名前 | 場所 | 型 | 必須 | 決まり | 説明 |
|---|---|---|---|---|---|
slug |
パス | 文字列 | ○ | スペースのスラッグ |
返る値:
| 状態 | 本文 |
|---|---|
200 |
WebhookView の配列(application/json) |
うまくいかなかったときは、4xx か 5xx と、message を持つ JSON が返ります。状態ごとの意味は エラーの一覧 にあります。
例:
curl "https://<ホスト名>.hakocms.net/admin/api/spaces/<slug>/webhooks" \ -H "Authorization: Bearer <アクセストークン>"Webhook を作る
Section titled “Webhook を作る”POST /admin/api/spaces/{slug}/webhooks- ログイン:要る(セッションかアクセストークン)
パラメーター:
| 名前 | 場所 | 型 | 必須 | 決まり | 説明 |
|---|---|---|---|---|---|
slug |
パス | 文字列 | ○ | スペースのスラッグ |
リクエストの本文(application/json):
| 名前 | 型 | 必須 | 決まり | 説明 |
|---|---|---|---|---|
contentTypeId |
文字列か null | このコンテンツタイプのイベントだけを送る。null ならすべてのコンテンツタイプとメディア | ||
enabled |
真偽値か null | 送るか。既定 true | ||
events |
文字列の配列か null | 送るイベント名の配列。既定 [“entry.published”, “entry.deleted”] | ||
headers |
オブジェクト(値は文字列)か null | カスタムヘッダー(名前から値のオブジェクト)。20 個まで | ||
name |
文字列 | ○ | 名前 | |
preset |
文字列か null | 送る形。選べる値:custom, vercel, netlify, slack。既定 custom | ||
secret |
文字列か null | 署名のシークレット(8〜256 文字) | ||
url |
文字列 | ○ | 送信先(http:// か https://) |
返る値:
| 状態 | 本文 |
|---|---|
201 |
WebhookView(application/json) |
うまくいかなかったときは、4xx か 5xx と、message を持つ JSON が返ります。状態ごとの意味は エラーの一覧 にあります。
例:
curl -X POST "https://<ホスト名>.hakocms.net/admin/api/spaces/<slug>/webhooks" \ -H "Authorization: Bearer <アクセストークン>" \ -H "Content-Type: application/json" \ -d '{ "name": "<name>", "url": "<url>"}'Webhook を取得する
Section titled “Webhook を取得する”GET /admin/api/spaces/{slug}/webhooks/{id}- ログイン:要る(セッションかアクセストークン)
パラメーター:
| 名前 | 場所 | 型 | 必須 | 決まり | 説明 |
|---|---|---|---|---|---|
slug |
パス | 文字列 | ○ | スペースのスラッグ | |
id |
パス | 文字列 | ○ | ID |
返る値:
| 状態 | 本文 |
|---|---|
200 |
WebhookView(application/json) |
うまくいかなかったときは、4xx か 5xx と、message を持つ JSON が返ります。状態ごとの意味は エラーの一覧 にあります。
例:
curl "https://<ホスト名>.hakocms.net/admin/api/spaces/<slug>/webhooks/<id>" \ -H "Authorization: Bearer <アクセストークン>"Webhook の設定を変える
Section titled “Webhook の設定を変える”PATCH /admin/api/spaces/{slug}/webhooks/{id}- ログイン:要る(セッションかアクセストークン)
パラメーター:
| 名前 | 場所 | 型 | 必須 | 決まり | 説明 |
|---|---|---|---|---|---|
slug |
パス | 文字列 | ○ | スペースのスラッグ | |
id |
パス | 文字列 | ○ | ID |
リクエストの本文(application/json):
| 名前 | 型 | 必須 | 決まり | 説明 |
|---|---|---|---|---|
contentTypeId |
文字列か null | このコンテンツタイプのイベントだけを送る。null ならすべてのコンテンツタイプとメディア | ||
enabled |
真偽値か null | 送るか | ||
events |
文字列の配列か null | 送るイベント名の配列 | ||
headers |
オブジェクト(値は文字列)か null | カスタムヘッダー(名前から値のオブジェクト)。20 個まで | ||
name |
文字列か null | 名前 | ||
preset |
文字列か null | 送る形。選べる値:custom, vercel, netlify, slack | ||
secret |
文字列か null | 署名のシークレット(8〜256 文字)。null で外す | ||
url |
文字列か null | 送信先(http:// か https://) |
返る値:
| 状態 | 本文 |
|---|---|
200 |
WebhookView(application/json) |
うまくいかなかったときは、4xx か 5xx と、message を持つ JSON が返ります。状態ごとの意味は エラーの一覧 にあります。
例:
curl -X PATCH "https://<ホスト名>.hakocms.net/admin/api/spaces/<slug>/webhooks/<id>" \ -H "Authorization: Bearer <アクセストークン>" \ -H "Content-Type: application/json" \ -d '{}'Webhook を削除する
Section titled “Webhook を削除する”DELETE /admin/api/spaces/{slug}/webhooks/{id}- ログイン:要る(セッションかアクセストークン)
パラメーター:
| 名前 | 場所 | 型 | 必須 | 決まり | 説明 |
|---|---|---|---|---|---|
slug |
パス | 文字列 | ○ | スペースのスラッグ | |
id |
パス | 文字列 | ○ | ID |
返る値:
| 状態 | 本文 |
|---|---|
204 |
なし |
うまくいかなかったときは、4xx か 5xx と、message を持つ JSON が返ります。状態ごとの意味は エラーの一覧 にあります。
例:
curl -X DELETE "https://<ホスト名>.hakocms.net/admin/api/spaces/<slug>/webhooks/<id>" \ -H "Authorization: Bearer <アクセストークン>"Webhook の送信履歴
Section titled “Webhook の送信履歴”GET /admin/api/spaces/{slug}/webhooks/{id}/deliveries- ログイン:要る(セッションかアクセストークン)
パラメーター:
| 名前 | 場所 | 型 | 必須 | 決まり | 説明 |
|---|---|---|---|---|---|
slug |
パス | 文字列 | ○ | スペースのスラッグ | |
id |
パス | 文字列 | ○ | ID | |
limit |
クエリ | 整数 | 0 以上 | 件数 | |
cursor |
クエリ | 文字列 | 前の応答の nextCursor |
返る値:
| 状態 | 本文 |
|---|---|
200 |
DeliveriesResponse(application/json) |
うまくいかなかったときは、4xx か 5xx と、message を持つ JSON が返ります。状態ごとの意味は エラーの一覧 にあります。
例:
curl "https://<ホスト名>.hakocms.net/admin/api/spaces/<slug>/webhooks/<id>/deliveries" \ -H "Authorization: Bearer <アクセストークン>"Webhook の送信を、同じ本文で送り直す
Section titled “Webhook の送信を、同じ本文で送り直す”手動の再送:同じ本文(deliveryId も同じ)を、新しい送信として最初から送り直す。
POST /admin/api/spaces/{slug}/webhooks/{id}/deliveries/{delivery_id}/redeliver- ログイン:要る(セッションかアクセストークン)
パラメーター:
| 名前 | 場所 | 型 | 必須 | 決まり | 説明 |
|---|---|---|---|---|---|
slug |
パス | 文字列 | ○ | スペースのスラッグ | |
id |
パス | 文字列 | ○ | ID | |
delivery_id |
パス | 文字列 | ○ | 送信の ID |
返る値:
| 状態 | 本文 |
|---|---|
202 |
DeliveryView(application/json) |
うまくいかなかったときは、4xx か 5xx と、message を持つ JSON が返ります。状態ごとの意味は エラーの一覧 にあります。
例:
curl -X POST "https://<ホスト名>.hakocms.net/admin/api/spaces/<slug>/webhooks/<id>/deliveries/<delivery_id>/redeliver" \ -H "Authorization: Bearer <アクセストークン>"Webhook をテストで送る
Section titled “Webhook をテストで送る”テストの送信。すぐに送って結果を返す(再送しない、データの操作に結び付かないので、ジョブを使わない)
POST /admin/api/spaces/{slug}/webhooks/{id}/test- ログイン:要る(セッションかアクセストークン)
パラメーター:
| 名前 | 場所 | 型 | 必須 | 決まり | 説明 |
|---|---|---|---|---|---|
slug |
パス | 文字列 | ○ | スペースのスラッグ | |
id |
パス | 文字列 | ○ | ID |
返る値:
| 状態 | 本文 |
|---|---|
200 |
DeliveryView(application/json) |
うまくいかなかったときは、4xx か 5xx と、message を持つ JSON が返ります。状態ごとの意味は エラーの一覧 にあります。
例:
curl -X POST "https://<ホスト名>.hakocms.net/admin/api/spaces/<slug>/webhooks/<id>/test" \ -H "Authorization: Bearer <アクセストークン>"