> ## Documentation Index
> Fetch the complete documentation index at: https://student-213fb9fc.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Crawl



## OpenAPI

````yaml fr/api-reference/v2-openapi.json post /crawl
openapi: 3.0.0
info:
  title: Firecrawl API
  version: v2
  description: >-
    API pour interagir avec les services Firecrawl afin d’effectuer des tâches
    de scraping et de crawling web.
  contact:
    name: Firecrawl Support
    url: https://firecrawl.dev/support
    email: support@firecrawl.dev
servers:
  - url: https://api.firecrawl.dev/v2
security:
  - bearerAuth: []
paths:
  /crawl:
    post:
      tags:
        - Crawling
      summary: Explorer plusieurs URL selon les options
      operationId: crawlUrls
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                url:
                  type: string
                  format: uri
                  description: L’URL de base à partir de laquelle lancer l’exploration
                prompt:
                  type: string
                  description: >-
                    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:
                  type: array
                  items:
                    type: string
                  description: >-
                    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:
                  type: array
                  items:
                    type: string
                  description: "Motifs d’expressions régulières appliqués aux chemins d’URL qui définissent les URL à inclure dans l’exploration. Seuls les chemins correspondant aux motifs spécifiés seront inclus dans la réponse. Remarque\_: l’URL de départ est également vérifiée par rapport à ces motifs — si elle ne correspond pas, l’exploration peut ne renvoyer aucune page. Par exemple, si vous définissez \"includePaths\"\_: [\"blog/.*\"] pour l’URL de base firecrawl.dev/blog, seules les pages sous /blog/ seront incluses dans les résultats, comme https://www.firecrawl.dev/blog/firecrawl-launch-week-1-recap."
                maxDiscoveryDepth:
                  type: integer
                  description: >-
                    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:
                  type: string
                  enum:
                    - skip
                    - include
                    - only
                  description: >-
                    Mode sitemap lors du crawling. Si vous le définissez sur «
                    skip », le crawler ignorera le sitemap du site et
                    n’explorera que l’URL fournie, en découvrant ensuite les
                    autres pages à partir de celle-ci. Si vous le définissez sur
                    « only », le crawler n’explorera que les URL issues du
                    sitemap (plus l’URL de départ) et n’explorera pas les liens
                    trouvés dans le HTML.
                  default: include
                ignoreQueryParameters:
                  type: boolean
                  description: >-
                    Ne relancez pas le scraping du même chemin avec des
                    paramètres de requête différents (ou sans paramètres)
                  default: false
                regexOnFullURL:
                  type: boolean
                  description: >-
                    Lorsque cette valeur est définie sur true, les expressions
                    régulières includePaths et excludePaths sont appliquées à
                    l’URL complète (y compris les paramètres de requête) plutôt
                    qu’au seul chemin de l’URL. Utile si vous devez filtrer des
                    URL en fonction des chaînes de requête.
                  default: false
                limit:
                  type: integer
                  description: >-
                    Nombre maximal de pages à explorer. La limite par défaut est
                    de 10 000.
                  default: 10000
                crawlEntireDomain:
                  type: boolean
                  description: >-
                    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.
                  default: false
                allowExternalLinks:
                  type: boolean
                  description: >-
                    Permet au crawler de suivre des liens vers des sites Web
                    externes.
                  default: false
                allowSubdomains:
                  type: boolean
                  description: >-
                    Autorise le crawler à suivre les liens pointant vers les
                    sous-domaines du domaine principal.
                  default: false
                delay:
                  type: number
                  description: >-
                    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:
                  type: integer
                  description: >-
                    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:
                  type: object
                  description: Objet de spécification de webhook.
                  properties:
                    url:
                      type: string
                      description: >-
                        L’URL à laquelle envoyer le webhook. Il sera déclenché
                        au démarrage du crawl (crawl.started), pour chaque page
                        explorée (crawl.page) et lorsque le crawl est terminé
                        (crawl.completed ou crawl.failed). La réponse sera
                        identique à celle du point de terminaison `/scrape`.
                    headers:
                      type: object
                      description: En-têtes à envoyer vers l’URL du webhook.
                      additionalProperties:
                        type: string
                    metadata:
                      type: object
                      description: >-
                        Métadonnées personnalisées qui seront incluses dans
                        toutes les charges utiles des webhooks de ce crawl
                      additionalProperties: true
                    events:
                      type: array
                      description: >-
                        Type d’événements à envoyer à l’URL du webhook. (par
                        défaut : tous)
                      items:
                        type: string
                        enum:
                          - completed
                          - page
                          - failed
                          - started
                  required:
                    - url
                scrapeOptions:
                  $ref: '#/components/schemas/ScrapeOptions'
                zeroDataRetention:
                  type: boolean
                  default: false
                  description: >-
                    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
                    help@firecrawl.dev
              required:
                - url
      responses:
        '200':
          description: Réponse réussie
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CrawlResponse'
        '402':
          description: Paiement requis
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    example: Payment required to access this resource.
        '429':
          description: Trop de requêtes
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    example: >-
                      Request rate limit exceeded. Please wait and try again
                      later.
        '500':
          description: Erreur du serveur
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    example: An unexpected error occurred on the server.
      security:
        - bearerAuth: []
components:
  schemas:
    ScrapeOptions:
      type: object
      properties:
        formats:
          $ref: '#/components/schemas/Formats'
        onlyMainContent:
          type: boolean
          description: >-
            Ne renvoyez que le contenu principal de la page, en excluant les
            en-têtes, éléments de navigation, pieds de page, etc.
          default: true
        includeTags:
          type: array
          items:
            type: string
          description: Balises à inclure dans le résultat.
        excludeTags:
          type: array
          items:
            type: string
          description: Balises à exclure du résultat.
        maxAge:
          type: integer
          description: "Retourne une version mise en cache de la page si elle est plus récente que cette durée (en millisecondes). Si une version mise en cache de la page est plus ancienne que cette valeur, la page sera à nouveau explorée (scrapée). Si vous n’avez pas besoin de données extrêmement récentes, activer cette option peut accélérer vos opérations de scraping de 500 %. Par défaut\_: 2\_jours."
          default: 172800000
        headers:
          type: object
          description: >-
            En-têtes à inclure dans la requête. Peuvent être utilisés pour
            envoyer des cookies, un user-agent, etc.
        waitFor:
          type: integer
          description: >-
            Indiquez un délai en millisecondes avant de récupérer le contenu,
            afin de laisser à la page suffisamment de temps pour se charger. Ce
            temps d’attente s’ajoute à la fonction d’attente intelligente de
            Firecrawl.
          default: 0
        mobile:
          type: boolean
          description: >-
            Définissez cette option sur true pour simuler le scraping depuis un
            appareil mobile. Utile pour tester des pages responsives et prendre
            des captures d’écran en mode mobile.
          default: false
        skipTlsVerification:
          type: boolean
          description: Ignorer la vérification du certificat TLS lors des requêtes.
          default: true
        timeout:
          type: integer
          description: >-
            Délai d’expiration de la requête (en millisecondes). La valeur par
            défaut est de 30 000 (30 secondes) et la valeur maximale est de 300
            000 (300 secondes).
          default: 30000
          maximum: 300000
        parsers:
          type: array
          description: >-
            Contrôle la façon dont les fichiers sont traités lors du scraping.
            Lorsque « pdf » est inclus (valeur par défaut), le contenu du PDF
            est extrait et converti au format Markdown, avec une facturation
            basée sur le nombre de pages (1 crédit par page). Lorsqu’un tableau
            vide est envoyé, le fichier PDF est renvoyé en encodage base64 avec
            un tarif fixe de 1 crédit pour l’ensemble du PDF.
          items:
            oneOf:
              - type: object
                properties:
                  type:
                    type: string
                    enum:
                      - pdf
                  mode:
                    type: string
                    enum:
                      - fast
                      - auto
                      - ocr
                    default: auto
                    description: >-
                      Mode d’analyse des PDF. « fast » : extraction basée
                      uniquement sur le texte (texte intégré, la plus rapide). «
                      auto » (par défaut) : tente d’abord une extraction rapide,
                      puis bascule vers l’OCR si nécessaire. « ocr » : impose
                      une analyse OCR (reconnaissance optique de caractères) sur
                      chaque page.
                  maxPages:
                    type: integer
                    minimum: 1
                    maximum: 10000
                    description: >-
                      Nombre maximal de pages du PDF à analyser. Doit être un
                      entier positif inférieur ou égal à 10 000.
                required:
                  - type
                additionalProperties: false
          default:
            - pdf
        actions:
          type: array
          description: Actions à effectuer sur la page avant de récupérer le contenu
          items:
            oneOf:
              - title: Wait
                oneOf:
                  - type: object
                    title: Wait by Duration
                    properties:
                      type:
                        type: string
                        enum:
                          - wait
                        description: Attendre un nombre spécifié de millisecondes
                      milliseconds:
                        type: integer
                        minimum: 1
                        description: Nombre de millisecondes à attendre
                    required:
                      - type
                      - milliseconds
                    additionalProperties: false
                  - type: object
                    title: Wait for Element
                    properties:
                      type:
                        type: string
                        enum:
                          - wait
                        description: Attendre l’apparition d’un élément spécifique
                      selector:
                        type: string
                        description: Sélecteur CSS à surveiller
                        example: '#my-element'
                    required:
                      - type
                      - selector
                    additionalProperties: false
              - type: object
                title: Screenshot
                properties:
                  type:
                    type: string
                    enum:
                      - screenshot
                    description: >-
                      Prenez une capture d’écran. Les liens se trouveront dans
                      le tableau `actions.screenshots` de la réponse.
                  fullPage:
                    type: boolean
                    description: >-
                      Indique s’il faut prendre une capture d’écran de la page
                      entière (en ignorant viewport.height) ou seulement de la
                      zone actuellement visible (viewport).
                    default: false
                  quality:
                    type: integer
                    description: >-
                      Qualité de la capture d’écran, de 1 à 100, 100 étant la
                      meilleure qualité.
                  viewport:
                    type: object
                    properties:
                      width:
                        type: integer
                        description: La largeur de la fenêtre d’affichage, en pixels
                      height:
                        type: integer
                        description: Hauteur du viewport en pixels
                    required:
                      - width
                      - height
                required:
                  - type
              - type: object
                title: Click
                properties:
                  type:
                    type: string
                    enum:
                      - click
                    description: Cliquez sur un élément
                  selector:
                    type: string
                    description: Sélecteur pour trouver l’élément par
                    example: '#load-more-button'
                  all:
                    type: boolean
                    description: >-
                      Clique sur tous les éléments correspondant au sélecteur,
                      et pas seulement sur le premier. Ne lève pas d’erreur si
                      aucun élément ne correspond au sélecteur.
                    default: false
                required:
                  - type
                  - selector
              - type: object
                title: Write text
                properties:
                  type:
                    type: string
                    enum:
                      - write
                    description: >-
                      Écrivez du texte dans un champ de saisie, une zone de
                      texte ou un élément contenteditable. Remarque : vous devez
                      d’abord placer le focus sur l’élément à l’aide d’une
                      action « click » avant d’écrire. Le texte sera saisi
                      caractère par caractère pour simuler une saisie au
                      clavier.
                  text:
                    type: string
                    description: Texte à saisir
                    example: Hello, world!
                required:
                  - type
                  - text
              - type: object
                title: Press a key
                description: >-
                  Appuyez sur une touche du clavier. Reportez-vous à
                  https://asawicki.info/nosense/doc/devices/keyboard/key_codes.html
                  pour la liste des codes de touches.
                properties:
                  type:
                    type: string
                    enum:
                      - press
                    description: Appuyez sur une touche de la page
                  key:
                    type: string
                    description: Touche sur laquelle appuyer
                    example: Enter
                required:
                  - type
                  - key
              - type: object
                title: Scroll
                properties:
                  type:
                    type: string
                    enum:
                      - scroll
                    description: Faites défiler la page ou un élément spécifique
                  direction:
                    type: string
                    enum:
                      - up
                      - down
                    description: Sens de défilement
                    default: down
                  selector:
                    type: string
                    description: Sélecteur CSS de l’élément à faire défiler
                    example: '#my-element'
                required:
                  - type
              - type: object
                title: Scrape
                properties:
                  type:
                    type: string
                    enum:
                      - scrape
                    description: >-
                      Extrait le contenu de la page actuelle et renvoie l’URL et
                      le HTML.
                required:
                  - type
              - type: object
                title: Execute JavaScript
                properties:
                  type:
                    type: string
                    enum:
                      - executeJavascript
                    description: Exécuter du code JavaScript sur la page
                  script:
                    type: string
                    description: Code JavaScript à exécuter
                    example: document.querySelector('.button').click();
                required:
                  - type
                  - script
              - type: object
                title: Generate PDF
                properties:
                  type:
                    type: string
                    enum:
                      - pdf
                    description: >-
                      Génère un PDF de la page en cours. Le PDF sera renvoyé
                      dans le tableau `actions.pdfs` de la réponse.
                  format:
                    type: string
                    enum:
                      - A0
                      - A1
                      - A2
                      - A3
                      - A4
                      - A5
                      - A6
                      - Letter
                      - Legal
                      - Tabloid
                      - Ledger
                    description: Le format de page du PDF obtenu
                    default: Letter
                  landscape:
                    type: boolean
                    description: Détermine s’il faut générer le PDF au format paysage
                    default: false
                  scale:
                    type: number
                    description: Facteur d’échelle du PDF généré
                    default: 1
                required:
                  - type
        location:
          type: object
          description: >-
            Paramètres de localisation pour la requête. Lorsqu’ils sont définis,
            un proxy approprié sera utilisé si disponible et les paramètres de
            langue et de fuseau horaire correspondants seront simulés. La valeur
            par défaut est « US » si aucun n’est spécifié.
          properties:
            country:
              type: string
              description: >-
                Code de pays ISO 3166-1 alpha-2 (p. ex. « US », « AU », « DE »,
                « JP »)
              pattern: ^[A-Z]{2}$
              default: US
            languages:
              type: array
              description: >-
                Langues et paramètres régionaux préférés pour la requête, par
                ordre de priorité. Utilise par défaut la langue de l’emplacement
                spécifié. Voir
                https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Language
              items:
                type: string
                example: en-US
        removeBase64Images:
          type: boolean
          description: >-
            Supprime toutes les images encodées en base64 de la sortie, car
            elles peuvent être très volumineuses. Le texte alternatif de l’image
            est conservé dans la sortie, mais l’URL est remplacée par une valeur
            fictive.
          default: true
        blockAds:
          type: boolean
          description: >-
            Active le blocage des publicités et des fenêtres contextuelles de
            cookies.
          default: true
        proxy:
          type: string
          enum:
            - basic
            - enhanced
            - auto
          description: "Spécifie le type de proxy à utiliser.\n\n - **basic**\_: Proxies pour le scraping de sites avec des solutions anti‑bots inexistantes ou basiques. Rapides et généralement efficaces.\n - **enhanced**\_: Proxies renforcés pour le scraping de sites avec des solutions anti‑bots avancées. Plus lents, mais plus fiables sur certains sites. Peut coûter jusqu’à 5 crédits par requête.\n - **auto**\_: Firecrawl réessaiera automatiquement le scraping avec des proxies renforcés si le proxy basic échoue. Si la nouvelle tentative avec le proxy renforcé réussit, 5 crédits seront facturés pour l’opération de scraping. Si la première tentative avec le proxy basic réussit, seul le coût standard sera facturé."
          default: auto
        storeInCache:
          type: boolean
          description: >-
            Si ce paramètre est défini sur true, la page sera stockée dans
            l’index et le cache de Firecrawl. Le définir sur false est utile si
            votre activité de scraping peut soulever des problèmes de protection
            des données. L’utilisation de certains paramètres associés à un
            scraping sensible (par ex. actions, headers) forcera ce paramètre à
            false.
          default: true
    CrawlResponse:
      type: object
      properties:
        success:
          type: boolean
        id:
          type: string
        url:
          type: string
          format: uri
    Formats:
      type: array
      items:
        oneOf:
          - type: object
            title: Markdown
            properties:
              type:
                type: string
                enum:
                  - markdown
            required:
              - type
          - type: object
            title: Summary
            properties:
              type:
                type: string
                enum:
                  - summary
            required:
              - type
          - type: object
            title: HTML
            properties:
              type:
                type: string
                enum:
                  - html
            required:
              - type
          - type: object
            title: Raw HTML
            properties:
              type:
                type: string
                enum:
                  - rawHtml
            required:
              - type
          - type: object
            title: Links
            properties:
              type:
                type: string
                enum:
                  - links
            required:
              - type
          - type: object
            title: Images
            properties:
              type:
                type: string
                enum:
                  - images
            required:
              - type
          - type: object
            title: Screenshot
            properties:
              type:
                type: string
                enum:
                  - screenshot
              fullPage:
                type: boolean
                description: >-
                  Indique s’il faut prendre une capture d’écran de la page
                  entière (en ignorant viewport.height) ou seulement de la zone
                  actuellement visible (viewport).
                default: false
              quality:
                type: integer
                description: >-
                  La qualité de la capture d’écran, sur une échelle de 1 à 100.
                  100 correspond à la qualité maximale.
              viewport:
                type: object
                properties:
                  width:
                    type: integer
                    description: Largeur du viewport en pixels
                  height:
                    type: integer
                    description: La hauteur du viewport en pixels
                required:
                  - width
                  - height
            required:
              - type
          - type: object
            title: JSON
            properties:
              type:
                type: string
                enum:
                  - json
              schema:
                type: object
                description: >-
                  Le schéma à utiliser pour la sortie JSON. Doit être conforme à
                  [JSON Schema](https://json-schema.org/).
              prompt:
                type: string
                description: L’invite à utiliser pour la sortie au format JSON
            required:
              - type
          - type: object
            title: Change Tracking
            properties:
              type:
                type: string
                enum:
                  - changeTracking
              modes:
                type: array
                items:
                  type: string
                  enum:
                    - git-diff
                    - json
                description: >-
                  Le mode de suivi des modifications à utiliser. « git-diff »
                  fournit un diff détaillé, tandis que « json » compare les
                  données JSON extraites.
              schema:
                type: object
                description: >-
                  Schéma JSON pour l’extraction en mode « json ». Définit la
                  structure des données à extraire et à comparer. Doit être
                  conforme à [JSON Schema](https://json-schema.org/).
              prompt:
                type: string
                description: >-
                  Invite (prompt) à utiliser pour le suivi des modifications en
                  mode « json ». S’il n’est pas fourni, l’invite (prompt) par
                  défaut sera utilisée.
              tag:
                type: string
                nullable: true
                default: null
                description: >-
                  Tag à utiliser pour le suivi des modifications. Les tags
                  peuvent séparer l’historique du suivi des modifications en «
                  branches » distinctes, où le suivi avec un tag spécifique ne
                  sera comparé qu’aux extractions effectuées avec ce même tag.
                  S’il n’est pas fourni, le tag par défaut (null) sera utilisé.
            required:
              - type
          - type: object
            title: Branding
            properties:
              type:
                type: string
                enum:
                  - branding
            required:
              - type
      description: >-
        Formats de sortie à inclure dans la réponse. Vous pouvez spécifier un ou
        plusieurs formats, soit sous forme de chaînes (par ex. `'markdown'`),
        soit sous forme d’objets avec des options supplémentaires (par ex. `{
        type: 'json', schema: {...} }`). Certains formats requièrent la
        définition d’options spécifiques. Exemple : `['markdown', { type:
        'json', schema: {...} }]`.
      default:
        - markdown
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````