Passer au contenu principal
POST
/
map
Mapper plusieurs URL en fonction des options
curl --request POST \
  --url https://api.firecrawl.dev/v2/map \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "ignoreCache": false,
  "ignoreQueryParameters": true,
  "includeSubdomains": true,
  "limit": 5000,
  "location": {
    "country": "US",
    "languages": [
      "en-US"
    ]
  },
  "search": "<string>",
  "sitemap": "include",
  "timeout": 60000,
  "url": "<string>"
}
'
import requests

url = "https://api.firecrawl.dev/v2/map"

payload = {
"ignoreCache": False,
"ignoreQueryParameters": True,
"includeSubdomains": True,
"limit": 5000,
"location": {
"country": "US",
"languages": ["en-US"]
},
"search": "<string>",
"sitemap": "include",
"timeout": 60000,
"url": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
ignoreCache: false,
ignoreQueryParameters: true,
includeSubdomains: true,
limit: 5000,
location: {country: 'US', languages: ['en-US']},
search: '<string>',
sitemap: 'include',
timeout: 60000,
url: '<string>'
})
};

fetch('https://api.firecrawl.dev/v2/map', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://api.firecrawl.dev/v2/map",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'ignoreCache' => false,
'ignoreQueryParameters' => true,
'includeSubdomains' => true,
'limit' => 5000,
'location' => [
'country' => 'US',
'languages' => [
'en-US'
]
],
'search' => '<string>',
'sitemap' => 'include',
'timeout' => 60000,
'url' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://api.firecrawl.dev/v2/map"

payload := strings.NewReader("{\n \"ignoreCache\": false,\n \"ignoreQueryParameters\": true,\n \"includeSubdomains\": true,\n \"limit\": 5000,\n \"location\": {\n \"country\": \"US\",\n \"languages\": [\n \"en-US\"\n ]\n },\n \"search\": \"<string>\",\n \"sitemap\": \"include\",\n \"timeout\": 60000,\n \"url\": \"<string>\"\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://api.firecrawl.dev/v2/map")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"ignoreCache\": false,\n \"ignoreQueryParameters\": true,\n \"includeSubdomains\": true,\n \"limit\": 5000,\n \"location\": {\n \"country\": \"US\",\n \"languages\": [\n \"en-US\"\n ]\n },\n \"search\": \"<string>\",\n \"sitemap\": \"include\",\n \"timeout\": 60000,\n \"url\": \"<string>\"\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.firecrawl.dev/v2/map")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"ignoreCache\": false,\n \"ignoreQueryParameters\": true,\n \"includeSubdomains\": true,\n \"limit\": 5000,\n \"location\": {\n \"country\": \"US\",\n \"languages\": [\n \"en-US\"\n ]\n },\n \"search\": \"<string>\",\n \"sitemap\": \"include\",\n \"timeout\": 60000,\n \"url\": \"<string>\"\n}"

response = http.request(request)
puts response.read_body
{
  "links": [
    {
      "url": "<string>",
      "description": "<string>",
      "title": "<string>"
    }
  ],
  "success": true
}
{
"error": "Payment required to access this resource."
}
{
"error": "Request rate limit exceeded. Please wait and try again later."
}
{
"error": "An unexpected error occurred on the server."
}
Êtes-vous un agent IA qui a besoin d’une clé API Firecrawl ? Consultez firecrawl.dev/agent-onboarding/SKILL.md pour obtenir des instructions d’intégration automatisée.

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 démarrer le crawl

ignoreCache
boolean
défaut:false

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.

ignoreQueryParameters
boolean
défaut:true

Ne renvoyez pas d’URL contenant des paramètres de requête

includeSubdomains
boolean
défaut:true

Inclure les sous-domaines du site

limit
integer
défaut:5000

Nombre maximal de liens à retourner

Plage requise: x <= 100000
location
object

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é.

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.

sitemap
enum<string>
défaut:include

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.

Options disponibles:
skip,
include,
only
threatProtection
Threat Protection Override · object

Dérogation Protection contre les menaces 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.

timeout
integer

Délai d’attente en millisecondes. Aucun délai d’attente n’est appliqué par défaut.

Réponse

Réponse réussie

success
boolean