Saltar al contenido principal
POST
/
crawl
Rastrear varias URL en función de las opciones
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>"
}

Novedades de la v2

Indica al rastreador lo que quieres

Describe en inglés sencillo qué deseas rastrear:
{
  "url": "https://example.com",
  "prompt": "Rastrea solo entradas del blog y documentación; omite las páginas de marketing"
}
Esto mapeará el prompt a un conjunto de ajustes del rastreador para ejecutar el rastreo.

Control mejorado del sitemap

En la v1, el uso de sitemap era un valor booleano. En la v2, la opción sitemap te permite elegir:
  • "include" (predeterminado): Usar el sitemap y además descubrir otras páginas.
  • "skip": Ignorar el sitemap por completo.

Nuevas opciones de rastreo

  • crawlEntireDomain - Rastrea todo el dominio, no solo las páginas hijas
  • maxDiscoveryDepth - Controla la profundidad del rastreo (reemplaza maxDepth)
{
  "url": "https://example.com/features",
  "crawlEntireDomain": true,
  "maxDiscoveryDepth": 2,
  "sitemap": "include"
}

Autorizaciones

Authorization
string
header
requerido

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

Cuerpo

application/json
url
string<uri>
requerido

La URL base desde la que se iniciará el rastreo

prompt
string

Un prompt que se usa para generar las opciones del crawler (todos los parámetros que se indican a continuación) a partir de lenguaje natural. Los parámetros establecidos explícitamente tendrán prioridad sobre los equivalentes generados.

excludePaths
string[]

Patrones de expresiones regulares para las rutas (pathname) de URL que excluyen del rastreo las URLs que coincidan con ellos. Por ejemplo, si configuras "excludePaths": ["blog/.*"] para la URL base firecrawl.dev, se excluirán todos los resultados que coincidan con ese patrón, como https://www.firecrawl.dev/blog/firecrawl-launch-week-1-recap.

includePaths
string[]

Patrones de expresiones regulares para rutas de URL (pathname) que se usan para incluir URLs coincidentes en el rastreo. Solo las rutas que coincidan con los patrones especificados se incluirán en la respuesta. Por ejemplo, si configuras "includePaths": ["blog/.*"] para la URL base firecrawl.dev, solo se incluirán los resultados que coincidan con ese patrón, como https://www.firecrawl.dev/blog/firecrawl-launch-week-1-recap.

maxDiscoveryDepth
integer

Profundidad máxima de rastreo basada en el orden de descubrimiento. El sitio raíz y las páginas incluidas en el sitemap tienen una profundidad de descubrimiento de 0. Por ejemplo, si la estableces en 1 y configuras sitemap: 'skip', solo se rastreará la URL introducida y todas las URL que estén enlazadas en esa página.

sitemap
enum<string>
predeterminado:include

Modo sitemap al rastrear. Si lo estableces en “skip”, el rastreador ignorará el sitemap del sitio web y solo rastreará la URL proporcionada y descubrirá páginas a partir de ahí.

Opciones disponibles:
skip,
include
ignoreQueryParameters
boolean
predeterminado:false

No vuelvas a scrapear la misma ruta con distintos parámetros de consulta (o sin parámetros)

limit
integer
predeterminado:10000

Número máximo de páginas a rastrear. El límite por defecto es 10.000.

crawlEntireDomain
boolean
predeterminado:false

Permite que el crawler siga enlaces internos a URLs hermanas o padre, no solo rutas hijas.

false: Solo rastrea URLs más profundas (hijas). → p. ej. /features/feature-1 → /features/feature-1/tips ✅ → No seguirá /pricing ni / ❌

true: Rastrea cualquier enlace interno, incluidos hermanos y padres. → p. ej. /features/feature-1 → /pricing, /, etc. ✅

Usa true para lograr una cobertura interna más amplia, más allá de las rutas anidadas.

Permite que el rastreador siga enlaces a sitios web externos.

allowSubdomains
boolean
predeterminado:false

Permite que el rastreador siga enlaces a subdominios del dominio principal.

delay
number

Intervalo en segundos entre scrapes. Esto ayuda a respetar los límites de velocidad de los sitios web.

maxConcurrency
integer

Número máximo de scrapes simultáneos. Este parámetro te permite establecer un límite de concurrencia para este rastreo. Si no se especifica, el rastreo respeta el límite de concurrencia de tu equipo.

webhook
object

Un objeto de especificación de webhook.

scrapeOptions
object
zeroDataRetention
boolean
predeterminado:false

Si se establece en true, se desactivará la retención de datos para este rastreo. Para habilitar esta función, póngase en contacto con [email protected]

Respuesta

Respuesta correcta

success
boolean
id
string
url
string<uri>