Vivoldi Webhook — リアルタイムイベント配信
リンククリック、クーポン利用、スタンプ付与イベントを、大規模トラフィック環境でもリアルタイムかつ安定して配信できます。
HMAC-SHA256 署名検証、重複イベント防止、自動リトライまで標準対応。追加設定なしでエンタープライズレベルの信頼性を利用できます。
Vivoldi Webhookとは?
Vivoldi Webhook は、イベント発生と同時にお客様のエンドポイントへデータを直接送信するリアルタイムなサーバー間連携システムです。
別途 API polling を行う必要はなく、Vivoldi に登録されたエンドポイントへイベントデータを即時配信することで、スムーズなリアルタイムデータ連携を実現します。
💡 Webhook を使用する理由は?
従来の API polling 方式では、定期的にサーバーへリクエストを送信する必要があるため、不要なAPIトラフィックが増加し、イベント検知に遅延が発生する場合があります。
Vivoldi Webhook は、イベント発生時のみお客様のサーバーを呼び出すため、不要なリクエストなしで即時対応が可能です。
CRM 更新、決済処理、マーケティング自動化など、リアルタイム性が重要なワークフローに最適です。
Webhook の動作フロー
ビボルディのWebhookは、イベント検知 → 署名生成 → HTTPS送信 → 受信確認の4ステップで動作します。
イベント検知
Webhookを有効にしたリンク・クーポン・スタンプカードでイベントが発生すると、ビボルディが即座に検知します。
署名生成
送信前にペイロードのHMAC-SHA256署名を生成し、リクエストヘッダーに含めます。
サーバー側でこの署名を検証することで、ビボルディから送信されたリクエストであることを確認できます。
HTTPS送信
登録済みのCallback URLへPOSTリクエストを送信します。応答タイムアウトは5秒です。
受信確認
サーバーから2xxレスポンスが返されると、送信成功として処理されます。応答がない場合やHTTPエラーが返された場合は、以下の再試行処理に進みます。
Webhookはどこで設定しますか?
グローバルWebhookを設定しただけでは、イベントは送信されません。 グローバル設定では、イベント送信に使用するデフォルトのCallback URLとSecret Keyを設定します。 イベントが送信されるのは、対象のリンク・クーポン・スタンプカードでWebhookを有効にした場合のみです。
リンクグループ・クーポングループ・スタンプカードに個別のWebhookが設定されている場合は、その設定がグローバル設定より優先されます。 グローバル設定と個別設定の両方が有効でも、同じイベントが重複して送信されることはありません。
送信に失敗した場合はどうなりますか?
レスポンスのステータスコードが2xx以外の場合、または5秒以内に応答がない場合は、送信失敗として処理されます。
失敗したリクエストはレスポンスのステータスコードに関係なく再試行されるため、1回の送信失敗だけでWebhookが停止することはありません。
送信に失敗しても、Webhookがすぐに停止することはありません。
まずメールで送信失敗を通知し、その後60分間の猶予期間を設けます。
この間に受信サーバーが復旧すれば、Webhookを停止せずに送信を継続します。
| 段階 | タイミング | 動作 |
|---|---|---|
| 即時再試行 | 1秒後 · 2秒後 | 一時的なネットワークエラーに対応するため再試行します。初回送信を含め、合計3回試行します。 |
| 遅延再試行 | 10分後 · 20分後 | 受信サーバーの再起動や一時的な障害に対応するため、追加で再試行します。初回送信を含め、最大5回試行します。 |
| 警告通知 | 約30分 | この段階ではWebhookは停止されません。 失敗した送信先と原因を確認できるよう、メールで通知します。 |
| 猶予期間 | 60分 | 猶予期間内に受信サーバーが復旧した場合、Webhookを停止せずに送信を自動再開します。猶予期間中に発生したクーポン・スタンプのイベントも順次送信されます。 |
| 自動停止 | 約90分 | 猶予期間を過ぎても送信失敗が続く場合、Webhookの状態をシステム停止に変更し、メールで通知します。 |
同じ受信先で継続的な送信失敗が発生した場合、一時的に送信を停止し、状態確認用のテスト送信を行ってサーバーが復旧しているか確認します。
応答しない受信サーバーにリクエストが蓄積し続けないよう管理し、お客様側のデプロイや一時的な障害など短時間の停止は自動的に解消されます。
クーポン利用・スタンプ付与イベントが失われることはありません。
一度だけ発生する重要なイベントであるため、送信リトライ中やレート制限が発生した場合はキューに保存し、送信可能になり次第、順番に配信します。
リンククリックイベントは繰り返し発生し、すべての分析データはビボルディに保存されるため、一時的な送信制限中に追加送信は行いません。
Webhookが自動停止された場合
Webhookの状態は3種類で管理されます。
一覧画面のWebhookフィルターを使用すると、状態別にWebhookを確認できます。
- 有効 Webhookが正常に動作し、イベントが送信されている状態です。
- 無効 ユーザーが手動で無効にした状態です。
- システム停止 継続的な送信失敗により、ビボルディが自動的に停止した状態です。停止時にはメールで通知します。
システム停止状態は、受信サーバーの問題を解決した後、ダッシュボードから再度有効にできます。
有効化後は新しいイベントから送信が再開され、停止中に発生したイベントは以前のポリシーに従って処理されます。
Webhook の主な機能
リアルタイム自動化
リンクアクセス、クーポン利用、スタンプの獲得および特典利用を即時に反映し、マーケティング・CRM・決済ワークフローを自動化しましょう。
エンタープライズセキュリティ
HMAC-SHA256署名、コンテンツハッシュ、タイムスタンプ検証により、リンク・クーポン・スタンプのイベントに対する改ざんやリプレイ攻撃を防止します。
運用の信頼性
少なくとも1回の配信保証、自動再試行、通知メール、無効化ロジックにより、システム障害時でもリンク・クーポン・スタンプのイベントを安定して処理します。
プラン別の提供範囲
Webhookはプレミアムプラン以上で利用できます。 利用可能なWebhook数は、Webhookを有効化できる対象数を基準に制限されます。
| 無料 · パーソナル | プレミアム | ビジネス | ビジネスプラス | エンタープライズ | |
|---|---|---|---|---|---|
| Webhook利用 | — | ✓ | ✓ | ✓ | ✓ |
| 個別リンク | — | 1件 | 5件 | 月間1,000リンクごとに1件 (最大50件) |
無制限 |
| リンクグループ | — | — | — | — | 無制限 |
| 個別クーポン | — | 無制限 | 無制限 | 無制限 | 無制限 |
| クーポングループ | — | — | 無制限 | 無制限 | 無制限 |
| スタンプカード | — | 1件 | 5件 | 月間1,000リンクごとに1件 (最大50件) |
無制限 |
| 分間 / 時間あたりのリクエスト数 | — | 240 / 12,000 | 384 / 20,000 | 614 / 32,000 から | 960 / 48,000 から |
Webhookの呼び出し上限は、API呼び出し上限の80%に設定されます。
ビジネスプラスプランでは、選択した月間リンク作成上限に応じて利用可能なWebhook数が増加します。
エンタープライズプランは、利用規模に応じて個別にご相談のうえ提供します。
詳細な上限値はプラン別の呼び出し上限で確認できます。
リンクグループWebhookはエンタープライズ専用機能です。
リンクグループでWebhookを有効にすると、そのグループに含まれるすべてのリンクに自動的に適用されます。
上位プランへ変更すると、Webhookの利用上限はすぐに拡張されます。
下位プランへ変更し、新しい上限を超える対象がある場合は、古い対象から順に自動的に無効化されます。無効化された対象一覧はメールで通知します。
利用期間終了後に無料プランへ変更された場合でも、Webhook設定は保持されます。再度有料プランを契約すると、追加設定なしで自動的に再開されます。
✨ エンタープライズ級リアルタイム連携
大量のリンク・クーポン・スタンプイベントを処理するエンタープライズ環境向けに最適化されています。
高可用性インフラと信頼性の高いキューイングシステムを基盤とし、急激なトラフィック増加時でもイベント欠損なく、CRM・決済・分析プラットフォームと安定して連携できます。