Passer au contenu principal
POST
/
crawl
Explorer plusieurs URL selon les options
curl --request POST \
  --url https://api.firecrawl.dev/v2/crawl \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "url": "<string>",
  "prompt": "<string>",
  "excludePaths": [
    "<string>"
  ],
  "includePaths": [
    "<string>"
  ],
  "maxDiscoveryDepth": 123,
  "sitemap": "include",
  "ignoreQueryParameters": false,
  "limit": 10000,
  "crawlEntireDomain": false,
  "allowExternalLinks": false,
  "allowSubdomains": false,
  "delay": 123,
  "maxConcurrency": 123,
  "webhook": {
    "url": "<string>",
    "headers": {},
    "metadata": {},
    "events": [
      "completed"
    ]
  },
  "scrapeOptions": {
    "formats": [
      "markdown"
    ],
    "onlyMainContent": true,
    "includeTags": [
      "<string>"
    ],
    "excludeTags": [
      "<string>"
    ],
    "maxAge": 172800000,
    "headers": {},
    "waitFor": 0,
    "mobile": false,
    "skipTlsVerification": true,
    "timeout": 123,
    "parsers": [
      "pdf"
    ],
    "actions": [
      {
        "type": "wait",
        "milliseconds": 2,
        "selector": "#my-element"
      }
    ],
    "location": {
      "country": "US",
      "languages": [
        "en-US"
      ]
    },
    "removeBase64Images": true,
    "blockAds": true,
    "proxy": "auto",
    "storeInCache": true
  },
  "zeroDataRetention": false
}
'
{
  "success": true,
  "id": "<string>",
  "url": "<string>"
}

Nouveautés de la v2

Indiquez au crawl ce que vous voulez

Décrivez en anglais simple ce que vous souhaitez lancer en crawl :
{
  "url": "https://example.com",
  "prompt": "Ne parcourir que les articles de blog et la documentation, ignorer les pages marketing"
}
Cela associera le prompt à un ensemble de paramètres d’exploration pour lancer le crawl.

Contrôle plus fin du sitemap

Dans la v1, l’utilisation du sitemap était un booléen. Dans la v2, l’option sitemap vous permet de choisir :
  • "include" (par défaut) : utiliser le sitemap et découvrir également d’autres pages.
  • "skip" : ignorer complètement le sitemap.

Nouvelles options de crawl

  • crawlEntireDomain - Crawler l’ensemble du domaine, pas seulement les pages enfants
  • maxDiscoveryDepth - Contrôler la profondeur de crawl (remplace maxDepth)
{
  "url": "https://example.com/features",
  "crawlEntireDomain": true,
  "maxDiscoveryDepth": 2,
  "sitemap": "include"
}

Autorisations

Authorization
string
header
requis

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Corps

application/json
url
string<uri>
requis

L’URL de base à partir de laquelle lancer l’exploration

prompt
string

Invite à utiliser pour générer les options du crawler (tous les paramètres ci-dessous) à partir d’un texte en langage naturel. Les paramètres définis explicitement auront la priorité sur les équivalents générés.

excludePaths
string[]

Motifs d’expressions régulières pour les chemins d’URL qui excluent du crawl les URL correspondantes. Par exemple, si vous définissez "excludePaths": ["blog/.*"] pour l’URL de base firecrawl.dev, tous les résultats correspondant à ce motif seront exclus, comme https://www.firecrawl.dev/blog/firecrawl-launch-week-1-recap.

includePaths
string[]

Motifs regex de chemins d’URL indiquant quelles URL inclure dans le crawl. Seuls les chemins correspondant aux motifs spécifiés seront inclus dans la réponse. Par exemple, si vous définissez "includePaths": ["blog/.*"] pour l’URL de base firecrawl.dev, seuls les résultats correspondant à ce motif seront inclus, comme https://www.firecrawl.dev/blog/firecrawl-launch-week-1-recap.

maxDiscoveryDepth
integer

Profondeur maximale d’exploration basée sur l’ordre de découverte. Le site racine et les pages issues du sitemap ont une profondeur de découverte de 0. Par exemple, si vous la définissez sur 1 et que vous définissez sitemap: 'skip', vous n’explorerez que l’URL saisie ainsi que toutes les URL qui y sont liées depuis cette page.

sitemap
enum<string>
défaut:include

Mode sitemap lors de l’exploration. Si vous le définissez sur « skip », le crawler ignorera le sitemap du site web et n’explorera que l’URL saisie, en découvrant ensuite les pages à partir de là.

Options disponibles:
skip,
include
ignoreQueryParameters
boolean
défaut:false

Ne relancez pas le scraping du même chemin avec des paramètres de requête différents (ou sans paramètres)

limit
integer
défaut:10000

Nombre maximal de pages à explorer. La limite par défaut est de 10 000.

crawlEntireDomain
boolean
défaut:false

Autorise le crawler à suivre les liens internes vers des URL de même niveau ou parentes, pas seulement les chemins enfants.

false : Explore uniquement les URL plus profondes (enfants). → p. ex. /features/feature-1 → /features/feature-1/tips ✅ → Ne suivra pas /pricing ou / ❌

true : Explore tous les liens internes, y compris les URL de même niveau et parentes. → p. ex. /features/feature-1 → /pricing, /, etc. ✅

Utilisez true pour une couverture interne plus large au‑delà des chemins imbriqués.

Permet au crawler de suivre des liens vers des sites Web externes.

allowSubdomains
boolean
défaut:false

Autorise le crawler à suivre les liens pointant vers les sous-domaines du domaine principal.

delay
number

Délai en secondes entre deux opérations de scraping. Cela permet de respecter les limites de fréquence imposées par les sites web.

maxConcurrency
integer

Nombre maximal d’opérations de scraping simultanées. Ce paramètre vous permet de définir une limite de parallélisme pour ce crawl. S’il n’est pas renseigné, le crawl utilise la limite de parallélisme définie pour votre équipe.

webhook
object

Objet de spécification de webhook.

scrapeOptions
object
zeroDataRetention
boolean
défaut:false

Si cette valeur est définie sur true, aucune donnée ne sera conservée pour ce crawl (zéro conservation des données). Pour activer cette fonctionnalité, veuillez contacter [email protected]

Réponse

Réponse réussie

success
boolean
id
string
url
string<uri>