ウェブフックを使用すると、エクソラ側で発生した構成済みイベントの即時通知を受信できます。ウェブフックを使用して、アプリケーションのバックエンドおよび補足機能を自 動化することができます。
通知可能なイベントの例:
構成されたイベントが発生すると、エクソラはウェブフックを介してそのことをシステムに通知します。たとえば、ウェブフックを受信した後、次の操作を実行できます:
以下は、支払い処理ウェブフックの動作事例です:
ウェブフックを正しく機能させるには、次の設定を適用する必要があります:
185.30.20.0/24
、185.30.21.0/24
、185.30.23.0/24
。通知
リスナーが既存のトランザクションIDを持つウェブフックを受信した場合、そのトランザクションの以前の結果を返す必要があります。ユーザーに2回請求したり、データベースに重複したレコードを作成することは推奨されません。
注
エクソラAPIは、成功したリクエストと失敗したリクエストに対して従来のHTTP応答コードを受け入れます。コード204は、処理が成功したことを示します。
インターネット接続は常に100%信頼できるとは限らないため、ウェブフックが失われたり遅延したりする可能性があります。この問題に対処するために、エクソラは、リスナ ーがウェブフックを受信するまで、失敗したウェブフックを再送信します。ウェブフックの再送信は、リスナーが受信を確認するまで、前回の送信から12時間以内に行われます 。再試行の最大回数は12回です。
注
接続の問題により、ウェブフックが失われたり、遅延したり、重複したりすることがありますが、最も一般的な原因は、リスナー側のロジックの欠陥です。
デジタル署名により、安全なデータ送信が可能になります。署名を生成するには:
POST /your_uri HTTP/1.1
host: your.host
accept: application/json
content-type: application/json
content-length: 165
authorization: Signature 52eac2713985e212351610d008e7e14fae46f902
{
"notification_type":"user_validation",
"user":{
"ip":"127.0.0.1",
"phone":"18777976552",
"email":"email@example.com",
"id":1234567,
"name":"Xsolla User",
"country":"US"
}
}
curl -v 'https://your.hostname/your/uri' \
-X POST \
-H 'authorization: Signature 52eac2713985e212351610d008e7e14fae46f902' \
-d '{
"notification_type":
"user_validation",
"user":
{
"ip": "127.0.0.1",
"phone": "18777976552",
"email": "email@example.com",
"id": 1234567,
"name": "Xsolla User",
"country": "US"
}
}'