Passer au contenu principal
Recevez une notification dès qu’un crawl, une extraction par lot, une extraction ou une tâche d’agent démarre, progresse ou se termine. Au lieu d’interroger périodiquement leur état, vous fournissez un point de terminaison HTTPS et Firecrawl y envoie les événements en temps réel.

Opérations prises en charge

OpérationÉvénements
Crawlstarted, page, completed
Batch Scrapestarted, page, completed
Extractstarted, completed, failed
Agentstarted, action, completed, failed, cancelled
Consultez les Types d’événements pour obtenir tous les détails du payload et des exemples.

Configuration

Ajoutez un objet webhook à votre requête :
JSON
{
  "webhook": {
    "url": "https://your-domain.com/webhook",
    "metadata": {
      "any_key": "any_value"
    },
    "events": ["start", "page", "completed", "failed"]
  }
}
ChampTypeRequisDescription
urlstringOuiL’URL de votre endpoint (HTTPS)
headersobjectNonEn-têtes personnalisés à inclure dans les requêtes du webhook
metadataobjectNonDonnées personnalisées incluses dans toutes les charges utiles du webhook
eventsarrayNonTypes d’événements à recevoir (par défaut : tous les événements)

Utilisation

Exploration avec 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"]
      }
    }'

Scrape par lots avec 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"]
      }
    }'

Expirations & Réessais

Votre endpoint doit répondre avec un statut 2xx en 10 secondes maximum. Si la livraison échoue (expiration, statut non-2xx ou erreur réseau), Firecrawl réessaie automatiquement :
RéessaiDélai après l’échec
1er1 minute
2e5 minutes
3e15 minutes
Après 3 réessais infructueux, le webhook est marqué comme échoué et aucune autre tentative n’est effectuée.