メインコンテンツへスキップ
Webhook を使用すると、処理の進行状況をステータスをポーリングせずにリアルタイムで通知として受け取れます。

サポートされている操作

Operationイベント
Crawlstarted, page, completed
Batch Scrapestarted, page, completed
Extractstarted, completed, failed

設定

リクエストに webhook オブジェクトを追加します:
JSON
{
  "webhook": {
    "url": "https://your-domain.com/webhook",
    "metadata": {
      "any_key": "any_value"
    },
    "events": ["started", "page", "completed", "failed"]
  }
}
フィールド必須説明
urlstringYesWebhook エンドポイントの URL(HTTPS)
headersobjectNoWebhook リクエストに含めるカスタムヘッダー
metadataobjectNoペイロードに含めるカスタムデータ
eventsarrayNo受信するイベントタイプ(既定: すべて)

使い方

Webhookでのクロール

cURL
curl -X POST https://api.firecrawl.dev/v2/crawl \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer YOUR_API_KEY' \
    -d '{
      "url": "https://docs.firecrawl.dev",
      "limit": 100,
      "webhook": {
        "url": "https://your-domain.com/webhook",
        "metadata": {
          "any_key": "any_value"
        },
        "events": ["started", "page", "completed"]
      }
    }'

Webhook を用いたバッチスクレイプ

cURL
curl -X POST https://api.firecrawl.dev/v2/batch/scrape \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer YOUR_API_KEY' \
    -d '{
      "urls": [
        "https://example.com/page1",
        "https://example.com/page2",
        "https://example.com/page3"
      ],
      "webhook": {
        "url": "https://your-domain.com/webhook",
        "metadata": {
          "any_key": "any_value"
        },
        "events": ["started", "page", "completed"]
      }
    }'

タイムアウトとリトライ

エンドポイントは 10秒以内2xx ステータスで応答する必要があります。 配信に失敗した場合(タイムアウト、非2xx、またはネットワークエラー)、Firecrawl は自動的にリトライします:
リトライ回数失敗後の遅延時間
1回目1分
2回目5分
3回目15分
3回のリトライがすべて失敗すると、Webhook は失敗としてマークされ、それ以上のリトライは行われません。