メインコンテンツにスキップ
お客さまへの大切なお知らせ:膨大なサポート情報を少しでも早くお客さまにお届けするため、本コンテンツの日本語版は人間の翻訳者を介さない自動翻訳で提供されております。正確な最新情報については本コンテンツの英語版をご覧ください。
Workflows

HubSpotワークフローでWebhookを使用する

更新日時 2022年 8月 22日

対象製品

Operations Hub Professional, Enterprise

ワークフローでwebhooksを使用して、HubSpotと他の外部ツールの間で情報を送信または取得します。Webhookにはさまざまな用途がありますが、一般的なWebhookの使用例としては次のようなものがあります。

  • コンタクトがサイト内のフォームから情報を送信したときに、HubSpotのコンタクトデータをCRMなどの外部システムに送信する。

  • 取引データを外部出荷処理システムに送信して注文書を作成する。

  • 外部システムから社内のチャットストリームにチャットアラートを送信し、重要なことが起こったことを従業員に通知する。

  • 別のシステムからデータを取得してHubSpotのレコードを更新する。 

ワークフローを使用して、POST要求とGET要求の両方を送信できます。HubSpotは、Webhookトラフィックを他のワークフロープロセスから切り離して制御します。これは、ワークフローとWebhookのパフォーマンスを向上させるために行います。Webhookが遅い場合やタイムアウトした場合は、ワークフローアクションの実行に予想より長い時間がかかります。

注意: HubSpotは、失敗したWebhookを最大3日間再試行し、失敗から1分後に開始します。その後の失敗は、徐々に間隔を延ばして再試行されます。再試行の間隔は最大で8時間になります。HubSpot の開発者ドキュメントで、特定のエラーコード例外について確認する。

開発者WebhookドキュメントでWebhookの詳細をご確認ください。HubSpotでのWebhookの具体的な実装についてご不明な点がございましたら、HubSpot開発者フォーラムをご利用ください。

 ワークフローでWebhookをセットアップする

  • HubSpotアカウントにて、[自動化] > [ワークフロー]の順に進みます。
  • ワークフローの名前をクリックします。
  • +アイコンをクリックして、アクションを追加します。
  • 右側のパネルで[Webhookを送信]を選択します。
  • [メソッド]ドロップダウンメニューをクリックし、[POST]または[GET]を選択します。 
  • WebhookURLを入力します。WebhookURLには安全なプロトコルという制限があり、HTTPSで始まる必要があります。特定の情報を要求するには、Webhook URLに? queryparameter = abcなどのクエリパラメータを追加します。クエリーパラメーターが追加されなかった場合は、汎用のPOSTリクエストまたはGETリクエストが送信されます。  
  • 認証タイプを設定して、Webhookへの要求を認証します。 
    • Webhookヘッダーで要求署名を使用するには: 
      • [認証タイプ]ドロップダウンメニューをクリックします。次に、[ヘッダーに要求署名を含める]を選択します。
      • 次に、HubSpotアプリIDを入力します。リクエスト署名を確認する方法をご確認ください。
    • 認証にAPIキーを使用することもできます。認証にAPIキーを使用する場合、使用されるAPIキー名APIキーの場所は、Webhookの構成に依存します。セキュリティ上の理由から、APIキーはテストリクエストには表示されません。APIキーを使用するには: 
      • [認証タイプ]ドロップダウンメニューをクリックします。次に、APIキーを選択します。 
  • POST要求を設定する場合は、CRMレコードからすべてのプロパティを含めるか、特定のプロパティのみを送信するかを選択できます。
    • すべてのプロパティを含めるには、[要求本文のカスタマイズ]セクションで[すべてのプロパティを含める]を選択します。  
    • 特定のプロパティのみを含めるには: 
      • [要求本文のカスタマイズ]セクションで、[特定のプロパティを選択]を選択します。
      • [プロパティの選択]ドロップダウンメニューをクリックします。次に、このワークフローで[オブジェクト]をクリックし、プロパティを選択します。
      • Webhookでプロパティの名前を変更するには、[プロパティ名]テキストフィールドを編集します。これはPOST要求のプロパティ名のみを更新し、HubSpotのプロパティ名や内部名は更新しません。  
      • 別のプロパティを追加するには、[プロパティを追加]をクリックします。
      • プロパティを削除するには、[ ゴミ箱を削除]アイコンをクリックします。 
           


  • GET要求を設定する場合は、プロパティをクエリパラメーターとして使用できます。 
    • [クエリパラメータ]セクションで、[プロパティの選択]ドロップダウンメニューをクリックします。次に、このワークフローで[オブジェクト]をクリックし、プロパティを選択します。
    • クエリパラメーターでプロパティの名前を変更するには、[プロパティ名]テキストフィールドを編集します。これは、GET要求のプロパティ名のみを更新し、HubSpotのプロパティ名または内部名は更新しません。  
    • 別のプロパティを追加するには、[クエリパラメータの追加]をクリックします。
    • プロパティを削除するには、[ ゴミ箱を削除]アイコンをクリックします。     
  • [保存]をクリックします。



投稿リクエストをカスタマイズする

POST要求を設定する場合は、CRMレコードからすべてのプロパティを含めるか、特定のプロパティのみを送信するかを選択できます。

  • すべてのプロパティを含めるには、[要求本文のカスタマイズ]セクションで[すべてのプロパティを含める]を選択します。  
  • 特定のプロパティのみを含めるには: 
    • [要求本文のカスタマイズ]セクションで、[特定のプロパティを選択]を選択します。
    • [プロパティの選択]ドロップダウンメニューをクリックします。次に、このワークフローで[オブジェクト]をクリックし、プロパティを選択します。
    • Webhookでプロパティの名前を変更するには、[プロパティ名]テキストフィールドを編集します。これはPOST要求のプロパティ名のみを更新し、HubSpotのプロパティ名や内部名は更新しません。  
    • 別のプロパティを追加するには、[プロパティを追加]をクリックします。
    • プロパティを削除するには、[ ゴミ箱を削除]アイコンをクリックします。 
         


GETリクエストをカスタマイズする

GET要求を設定する場合は、プロパティをクエリパラメータとして使用して、特定のデータを取得できます。 

  • [クエリパラメータ]セクションで、[プロパティの選択]ドロップダウンメニューをクリックします。次に、このワークフローで[オブジェクト]をクリックし、プロパティを選択します。
  • クエリパラメーターでプロパティの名前を変更するには、[プロパティ名]テキストフィールドを編集します。これは、GET要求のプロパティ名のみを更新し、HubSpotのプロパティ名または内部名は更新しません。  
  • 別のプロパティを追加するには、[クエリパラメータの追加]をクリックします。
  • プロパティを削除するには、[ ゴミ箱を削除]アイコンをクリックします。     
  • [保存]をクリックします。

HubSpot内でWebhookをテストする

POST」または「GET」Webhookをセットアップする際に、Webhookレスポンスを確認するためのテストを実行できます。テスト中は第三者へのデータの送信と第三者からのデータの取得が行われますが、HubSpot内の既存のレコードには影響しません。認証にAPIキーを使用している場合、APIキーはテスト要求には表示されません。

Webhookのテスト後に、その後のワークフローで入力として使用するために出力するフィールドを選択できます。すべてのレスポンスで使用可能な出力のみを選択します。出力がその後のアクションで使用されるものの、レスポンスで使用できない場合、そのアクションは失敗します。

  • サイドパネルで[テストアクション]をクリックし、セクションを展開します。 
  • [オブジェクト]ドロップダウンメニューをクリックし、テストするレコードを選択します。
  • [テスト]をクリックします。 
  • Webhookの詳細を確認するには、[レスポンス]タブまたは[リクエスト]タブを選択します。各タブでは、[すべてを開く]をクリックするとすべてのセクションが展開され、[すべて折りたたむ]をクリックするとすべてのセクションが折りたたまれます。
    • [レスポンス]タブでは、[headers:]または[body:]をクリックすると、それぞれのセクションが展開されます。 
    • [リクエスト]タブでは、[httpHeaders:]をクリックすると、そのセクションが展開されます。

外部でWebhookをテストする

Webhookアクションを含むワークフローを作成したら、ダミーのWebhook URLを使用して、簡単なテストを実行できます。

  • ブラウザーでhttps://webhook.siteに移動し、一意のURLをコピーします。
  • Webhookアクションの[Webhook URL]フィールドに、コピーしたURLを貼り付けます。

POSTリクエストを含むWebhookアクションがトリガーされた場合は、コンタクトに関するすべての情報(フォーム送信、リストのメンバーシップ、すべてのコンタクトプロパティー値など)を格納したJSONレスポンス本文がWebhookに送信されます。レコードを受け取ったシステムは、そのJSONデータを解析し、システム固有のアプリケーションで使用します。

GETリクエストを含むWebhookアクションがトリガーされた場合は、追加のクエリーパラメーターが適用されていない限り、汎用のGETリクエストが送信されます。   

注:履歴プロパティー値はコンタクトベースのワークフローでのみ返されます。他のすべてのワークフロータイプで使用されるWebhookは最新の値のみを返します。

ワークフローWebhookでリクエスト署名を確認する

[Webhookの実行]アクションの[認証]セクションで、[リクエスト署名]を選択した場合、HubSpotはWebhookのX-HubSpot-Signatureヘッダーに、アプリケーションのアプリシークレット、HTTPメソッド、URI、未解析の本文をつなげたSHA-256ハッシュを取り込みます。開発者ドキュメントで詳細をご確認ください。

URLで受信したリクエストの送信元がHubSpotであることを確認するには、次のようにします。

Was this article helpful?
This form is used for documentation feedback only. Learn how to get help with HubSpot.