Webhook連携
Webhookを使うと、Winkアカウントで発生した新しい予約、キャンセル、支払いの更新などのイベントをリアルタイムでシステムに通知できます。このガイドでは、設定方法とベストプラクティスを説明します。
このガイドは、Winkを物件管理システム(PMS)、チャネルマネージャー、CRM、カスタムダッシュボードなどの外部システムと連携する開発者向けです。
Webhookの仕組み
Section titled “Webhookの仕組み”- WinkにWebhookのURLを登録します。
- イベントが発生すると(例:新しい予約)、WinkがあなたのURLにHTTP POSTを送信します。
- サーバーがペイロードを処理し、
200 OKで応答します。
Webhookの設定
Section titled “Webhookの設定”- アカウントにログインします(Extranet、Studio、TripPayのいずれもWebhookをサポートしています)。
Applicationsに移動し、次にWebhooksを選択します。Webhooksを参照してください。Create webhookをクリックします。- 名前 を入力します(例:「PMS予約同期」)。
- Webhook URL を入力します — サーバーのHTTPSエンドポイントです。
- イベントを選択 — 購読する特定のイベントを選ぶか、すべてのイベントを受け取る場合は空欄のままにします。
- Enabled をオンに切り替えます。
Saveをクリックします。
イベントタイプ
Section titled “イベントタイプ”Winkはアカウント管理、予約契約、支払い、チャネルマネージャーの更新、管理エンティティの管理などのカテゴリで64以上のWebhookイベントタイプをサポートしています。よく使われるイベントは以下の通りです:
| カテゴリ | 例 |
|---|---|
| 予約 | booking.create, booking.cancelled |
| 予約契約 | booking.contract.created, booking.contract.processing, booking.contract.cancelled |
| 支払い | internal.payment.succeeded, internal.payment.failed |
| 返金 | booking.contract.refund.partial, booking.contract.refund.full |
| チャネルマネージャー | channel-manager.update.rate, channel-manager.update.availability |
| アカウント | account.create, account.status.updated |
すべてのイベントタイプと説明の完全なリストは、Webhookイベントカタログをご覧ください。
64以上のすべてのイベントタイプを見る
ベストプラクティス
Section titled “ベストプラクティス”- HTTPSを使用する — WinkはHTTPSエンドポイントにのみペイロードを送信します。
- 迅速に応答する — ペイロードを受け取ったらすぐに
200 OKを返してください。重い処理は非同期で行いましょう。 - 冪等性 — ハンドラーは冪等であるべきです。Winkは
200応答がない場合、再送を試みることがあります。 - 送信元の検証 — 処理前にリクエストがWinkからのものであることを確認してください。
- ログ記録 — 受信したWebhookペイロードはすべてログに記録しましょう。統合の問題をデバッグしやすくなります。
一時停止と削除
Section titled “一時停止と削除”Webhookは削除せずに無効化できます。これにより配信が一時停止し、設定を失うことなくトラブルシューティングが可能です。準備ができたら再度オンに切り替えます。
Webhookを削除すると完全に削除されます。そのWebhookに依存している統合は通知を受け取れなくなります。
- Webhookイベントカタログ — 64以上のすべてのイベントタイプの完全リスト。
- Webhooks — Webhook管理の完全リファレンス。
- Applications — API認証情報の管理。
- Developers > APIs — APIの完全なドキュメント。
