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 の呼び出しは同期ですか?

いいえ、非同期で送信されるため、タスク処理がブロックされません。