# Map (/fr/api-reference/endpoint/map)

<!-- agent-signals: reading_time_min: 5 · est_tokens: 2626 · updated: 2026-07-30 -->
Related: [Recherche](/fr/api-reference/endpoint/search.md), [Retour sur la recherche](/fr/api-reference/endpoint/search-feedback.md), [Scrape](/fr/api-reference/endpoint/scrape.md), [Scrape par lot](/fr/api-reference/endpoint/batch-scrape.md), [Obtenir l’état d’une extraction par lot](/fr/api-reference/endpoint/batch-scrape-get.md), [Annuler une extraction par lots](/fr/api-reference/endpoint/batch-scrape-delete.md)

> Êtes-vous un agent IA qui a besoin d’une clé API Firecrawl ? Consultez [firecrawl.dev/agent-onboarding/SKILL.md](https://www.firecrawl.dev/agent-onboarding/SKILL.md) pour obtenir des instructions d’intégration automatisée.

`POST /map`

Mapper plusieurs URL en fonction des options

## OpenAPI

```json
{
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "examples": {
          "example1": {
            "summary": "Exemple 1",
            "value": {
              "ignoreCache": false,
              "ignoreQueryParameters": true,
              "includeSubdomains": true,
              "limit": 5000,
              "location": {
                "country": "US",
                "languages": [
                  "en-US"
                ]
              },
              "search": "<string>",
              "sitemap": "include",
              "timeout": 60000,
              "url": "<string>"
            }
          }
        },
        "schema": {
          "properties": {
            "auditMetadata": {
              "additionalProperties": false,
              "description": "Informations d’attribution de l’utilisateur incluses dans les événements de journalisation SIEM lorsque SIEM Logging est activé pour l’organisation.",
              "properties": {
                "username": {
                  "description": "Le nom d’utilisateur associé à la requête.",
                  "maxLength": 1024,
                  "type": "string"
                }
              },
              "required": [
                "username"
              ],
              "type": "object"
            },
            "ignoreCache": {
              "default": false,
              "description": "Ignorez le cache du sitemap pour récupérer les URL les plus récentes. Les données du sitemap sont mises en cache pendant 7 jours ; utilisez ce paramètre lorsque votre sitemap a été mis à jour récemment.",
              "type": "boolean"
            },
            "ignoreQueryParameters": {
              "default": true,
              "description": "Ne renvoyez pas d’URL contenant des paramètres de requête",
              "type": "boolean"
            },
            "includeSubdomains": {
              "default": true,
              "description": "Inclure les sous-domaines du site",
              "type": "boolean"
            },
            "limit": {
              "default": 5000,
              "description": "Nombre maximal de liens à retourner",
              "maximum": 100000,
              "type": "integer"
            },
            "location": {
              "description": "Paramètres de localisation de la requête. Lorsqu’ils sont spécifiés, un proxy approprié est utilisé, si disponible, et les paramètres de langue et de fuseau horaire correspondants sont émulés. La valeur par défaut est « US » si aucun paramètre n’est spécifié.",
              "properties": {
                "country": {
                  "default": "US",
                  "description": "Code de pays ISO 3166-1 alpha-2 (par exemple « US », « AU », « DE », « JP »)",
                  "pattern": "^[A-Z]{2}$",
                  "type": "string"
                },
                "languages": {
                  "description": "Langues et paramètres régionaux préférés pour la requête, par ordre de priorité. Par défaut, la langue de l’emplacement spécifié est utilisée. Voir https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Language",
                  "items": {
                    "example": "en-US",
                    "type": "string"
                  },
                  "type": "array"
                }
              },
              "type": "object"
            },
            "search": {
              "description": "Spécifiez une requête de recherche pour classer les résultats par pertinence. Exemple : « blog » renverra les URL qui contiennent le mot « blog » dans leur adresse, classées par pertinence.",
              "type": "string"
            },
            "sitemap": {
              "default": "include",
              "description": "Mode sitemap lors du mapping. Si vous le réglez sur `skip`, le sitemap ne sera pas utilisé pour trouver des URL. Si vous le réglez sur `only`, seules les URL présentes dans le sitemap seront renvoyées. Par défaut (`include`), le sitemap et d’autres méthodes sont utilisés conjointement pour trouver des URL.",
              "enum": [
                "skip",
                "include",
                "only"
              ],
              "type": "string"
            },
            "threatProtection": {
              "description": "Dérogation [Protection contre les menaces](https://docs.firecrawl.dev/features/threat-protection) au niveau de la requête. Les champs que vous fournissez remplacent les champs correspondants de la politique de votre organisation pour cette requête uniquement ; les champs omis conservent leurs valeurs définies au niveau de l'organisation. La Protection contre les menaces doit être activée pour votre équipe (fonctionnalité Enterprise) ; sinon, la requête est rejetée avec un code 403. Si votre organisation a désactivé les dérogations par requête, toute requête qui inclut cet objet est rejetée avec un code 403. Si la Protection contre les menaces est appliquée à votre équipe, `mode` ne peut pas être défini sur `off`.",
              "properties": {
                "blacklist": {
                  "description": "Domaines à toujours bloquer, sous forme de domaines simples (`example.com`) ou de motifs avec joker (`*.example.com`). Sans protocole, chemin ni port.",
                  "items": {
                    "type": "string"
                  },
                  "maxItems": 1000,
                  "type": "array"
                },
                "blockedTlds": {
                  "description": "Domaines de premier niveau à bloquer systématiquement, en minuscules et sans le point initial (par ex. `zip`).",
                  "items": {
                    "type": "string"
                  },
                  "maxItems": 1000,
                  "type": "array"
                },
                "failurePolicy": {
                  "description": "Comportement à adopter lorsque le classifieur est injoignable : `closed` bloque la requête, `open` l'autorise.",
                  "enum": [
                    "open",
                    "closed"
                  ],
                  "type": "string"
                },
                "mode": {
                  "description": "Mode d’analyse des URL pour cette requête. `normal` vérifie les URL via Google Web Risk (+2 crédits par URL analysée).",
                  "enum": [
                    "off",
                    "normal"
                  ],
                  "type": "string"
                },
                "riskScoreThreshold": {
                  "description": "Score de risque normalisé (0–100) à partir duquel une décision du classifieur bloque l’URL. Plus il est faible, plus le filtrage est strict.",
                  "example": 75,
                  "maximum": 100,
                  "minimum": 0,
                  "type": "integer"
                },
                "whitelist": {
                  "description": "Domaines à toujours autoriser, sous forme de domaines simples ou de motifs avec joker. Prend le pas sur toutes les autres règles.",
                  "items": {
                    "type": "string"
                  },
                  "maxItems": 1000,
                  "type": "array"
                }
              },
              "title": "Threat Protection Override",
              "type": "object"
            },
            "timeout": {
              "description": "Délai d’attente en millisecondes. Aucun délai d’attente n’est appliqué par défaut.",
              "type": "integer"
            },
            "url": {
              "description": "L’URL de base à partir de laquelle démarrer le crawl",
              "format": "uri",
              "type": "string"
            }
          },
          "required": [
            "url"
          ],
          "type": "object"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "links": {
                "items": {
                  "properties": {
                    "description": {
                      "description": "Description de la page, le cas échéant.",
                      "type": "string"
                    },
                    "title": {
                      "description": "Le titre de la page, le cas échéant.",
                      "type": "string"
                    },
                    "url": {
                      "format": "uri",
                      "type": "string"
                    }
                  },
                  "required": [
                    "url"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "success": {
                "type": "boolean"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Réponse réussie"
    },
    "402": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "error": {
                "example": "Payment required to access this resource.",
                "type": "string"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Paiement requis"
    },
    "429": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "error": {
                "example": "Request rate limit exceeded. Please wait and try again later.",
                "type": "string"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Trop de requêtes"
    },
    "500": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "error": {
                "example": "An unexpected error occurred on the server.",
                "type": "string"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Erreur du serveur"
    }
  }
}
```
