HireHop 内で特定のイベントがトリガーされると、HireHop はデータを含むメッセージを他のアプリに送信できます。 このメッセージはWebhookと呼ばれ、関連するデータを必要な場所に自動的にプッシュします。

WebhooksWebhookとは何ですか?

HireHop(イベント)で特定のことが発生すると、Webhookはメッセージにデータを添付してメッセージを送信/プッシュします。 WebhookはHTTP経由で送信され(Webアドレスを呼び出します)、リアルタイムで他のアプリケーションにデータをプッシュする方法です。 Webhookは、関連するデータを発生時に特定のアプリケーションに配信します。つまり、受信側のアプリケーションは、イベントが発生した直後にデータを取得します。これは、データ変更のポーリングよりもはるかに効率的で高速です。

HireHop Webhookを使用して、他のアプリと直接通信したり、Zapierなどのコネクタに送信したりできます。このコネクタを使用して、データをフォーマットし、必要なAPI呼び出しをHireHopまたは別のアプリケーションに戻すことができます。

Webhookの設定

HireHopで、[設定]に移動し、[会社の設定]タブとページ上部の[Webhook]ボタンをクリックします。ポップアップウィンドウで、[新規]ボタンをクリックし、Webhookメッセージの送信先のURLを追加して、URLが応答するすべてのWebhookを選択します。 Webhookはいくつでも追加できますが、特定のURLが応答する必要なWebhookのみに制限する必要があります。

HireHop WebhookはデータをJSONとしてURLエンドポイントにPOSTし、次のデータまたは同様のデータを含みます。

{
    "time": "2022-03-29 07:50:42",
    "user_id": 1,
    "user_name": "John Smith",
    "user_email": "john@email.com",
    "company_id": 1,
    "export_key": "22u43mrjwe7u",
    "event": "invoice.status.updated",
    "data": { ... },
    "changes": {
        "FIELD_NAME": {
            "from": "年",
            "to": "新着"
        }, ...
    }
}

上記のJSONの例では、次のフィールドは次のとおりです。

  • time」は、Webhookが送信されたUTCの時刻と日付です。
  • user_id」は、イベントをトリガーしたユーザーのIDです。
  • user_name」はユーザーの名前です。
  • company_id」フィールドは、ユーザーが勤務している会社の一意の番号識別子です。
  • export_key」は、セキュリティチェックとして使用できる会社設定のエクスポートキーの値です。
  • event」は、トリガーされたWebhookイベントの名前です。
  • data」は、Webhookイベントに関連するデータです。
  • changes」とは、変更されたフィールドであり、変更されたものになります。

HireHopは、呼び出されたURLからの応答を待機したり、呼び出しによるHTTPエラーを報告したりしません。

WebhookデータをキャプチャするためのURLエンドポイントのPHPコードの例は次のとおりです。

<?php
	// JSONデータを取得する
	$postdata = file_get_contents('php://input');
	// JSONデータをオブジェクトに変換する
	$data_str = json_decode($postdata);
?>