Webhook とは何か?
Webhook とは、あなたが提供する HTTP エンドポイントであり、タスクが完了したら(成功したか失敗したかに関わらず)、POST
リクエストを送信します。これにより、API を絶えずポーリングする必要がなくなり、システムがリアルタイムで反応できるようになります。
Webhook の使用方法
タスクを作成する際に、リクエストに webhook.url
フィールドを含めます。例:
{
"actor": "scraper.shopee",
"webhook": {
"url": "https://webhook.site/8fe8b27a-3902-42d9-a44e-b5e74466e475"
},
"input": {
"url": "https://shopee.tw/api/v4/pdp/get_pc?item_id=1413075726&shop_id=19675194"
}
}
Webhook ペイロード
タスクが完了すると、結果があなたの Webhook URL に POST
されます。
成功時のペイロード
{
"response": {
"data": "base64 json string",
"encoding": "base64"
},
"state": "completed",
"success": true,
"taskId": "7a0087db-05ae-4caf-887c-67e5efcaf3d1"
}
失敗時のペイロード
{
"state": "completed",
"status": {
"code": 4,
"message": "context deadline exceeded"
},
"success": false,
"taskId": "d5f188a7-9d87-4f7d-8801-5a7c6083b3e6"
}
ポーリングの方が良いですか?
問題ありません。いつでも手動で結果を取得できます。
curl --location --request GET 'https://api.scrapeless.com/api/v1/scraper/result/{taskId}' \
--header 'x-api-token: YOUR_API_KEY' \
--header 'Content-Type: application/json'
Webhook が設定されているかどうかに関わらず、これは機能します。
試してみる
Webhook.site を使用して Webhook をすぐにテストできます。これは、テスト可能な URL を生成し、リアルタイムで受信リクエストを表示する無料ツールです。
FAQ
Q: Webhook が失敗した場合、再試行しますか?
現在はありません。エンドポイントが信頼性があり、利用可能であることを確認してください。
Q: Webhook の呼び出しは同期ですか?
いいえ、非同期で送信されるため、タスク処理がブロックされません。