Saltar al contenido principal
Rastrear envía una URL a Firecrawl y descubre y extrae de forma recursiva todas las subpáginas accesibles. Gestiona automáticamente sitemaps, renderizado de JavaScript y límites de tasa, y devuelve Markdown limpio o datos estructurados para cada página.
  • Descubre páginas mediante sitemap y recorrido recursivo de enlaces
  • Admite filtrado por ruta, límites de profundidad y control de subdominios/enlaces externos
  • Devuelve resultados mediante polling, WebSocket o webhook

Pruébalo en el Playground

Prueba el rastreo en el playground interactivo, sin escribir código.

Instalación

Uso básico

Envía un trabajo de rastreo llamando a POST /v2/crawl con una URL inicial. El endpoint devuelve un ID de trabajo que usas para consultar los resultados.
Cada página rastreada consume 1 crédito. El limit de rastreo predeterminado es de 10.000 páginas. Antes de comenzar, el endpoint de rastreo comprueba que tus créditos restantes alcancen para cubrir el limit; si no es así, devuelve un error 402 (Pago requerido). Establece un limit más bajo que se ajuste al tamaño de rastreo previsto (por ejemplo, limit: 100) para evitarlo. Se aplican créditos adicionales para ciertas opciones: el modo JSON cuesta 4 créditos adicionales por página, el proxy mejorado cuesta 4 créditos adicionales por página y el análisis de PDF cuesta 1 crédito por página de PDF.

Opciones de scraping

Todas las opciones del endpoint Scrape están disponibles en rastreo mediante scrapeOptions (JS) / scrape_options (Python). Se aplican a cada página que el crawler raspa, incluidos formatos, proxy, caché, acciones, ubicación y etiquetas.

Verificar el estado del rastreo

Usa el ID del trabajo para consultar el estado del rastreo y recuperar los resultados.
Los resultados de los trabajos están disponibles a través de la API durante 24 horas después de su finalización. Después de este periodo, aún puedes ver tu historial de rastreos y resultados en los activity logs.
Las páginas en el array data de los resultados del rastreo son páginas que Firecrawl extrajo correctamente, incluso si el sitio de destino devolvió un error HTTP como 404. El campo metadata.statusCode muestra el código de estado HTTP del sitio de destino. Para recuperar las páginas que Firecrawl no pudo extraer (por ejemplo, errores de red, tiempos de espera o bloqueos por robots.txt), usa el endpoint dedicado Get Crawl Errors (GET /crawl/{id}/errors).

Manejo de respuestas

La respuesta varía según el estado del rastreo. Para respuestas incompletas o de gran tamaño que superen los 10 MB, se proporciona un parámetro de URL next. Debes solicitar esta URL para obtener los siguientes 10 MB de datos. Si el parámetro next no está presente, indica el final de los datos del rastreo.
Los parámetros skip y next solo son relevantes cuando se consume la API directamente. Si usas el SDK, la paginación se gestiona automáticamente y todos los resultados se devuelven de una vez.

Métodos del SDK

Hay dos maneras de usar crawl con el SDK.

Rastrear y esperar

El método crawl espera a que el rastreo termine y devuelve la respuesta completa. Gestiona la paginación automáticamente. Esto se recomienda para la mayoría de los casos de uso.
La respuesta incluye el estado del rastreo y todos los datos extraídos:

Iniciar y luego verificar el estado

El método startCrawl / start_crawl devuelve de inmediato un ID de rastreo. Luego puedes verificar el estado manualmente. Esto es útil para rastreos de larga duración o lógica de sondeo personalizada.
La respuesta inicial devuelve el ID del trabajo:

Resultados en tiempo real con WebSocket

El método watcher proporciona actualizaciones en tiempo real a medida que se rastrean las páginas. Inicia un rastreo y luego suscríbete a los eventos para procesar los datos de inmediato.

Webhooks

Puedes configurar webhooks para recibir notificaciones en tiempo real a medida que avanza el rastreo. Esto te permite procesar las páginas conforme se van extrayendo, en lugar de esperar a que finalice todo el rastreo.
cURL

Tipos de eventos

Carga útil

Verificación de firmas de webhooks

Cada solicitud de webhook de Firecrawl incluye un encabezado X-Firecrawl-Signature que contiene una firma HMAC-SHA256. Verifica siempre esta firma para asegurarte de que el webhook sea auténtico y no haya sido manipulado.
  1. Obtén tu secreto de webhook en la pestaña Advanced de la configuración de tu cuenta
  2. Extrae la firma del encabezado X-Firecrawl-Signature
  3. Calcula el HMAC-SHA256 del cuerpo sin procesar (raw) de la solicitud usando tu secreto
  4. Compárala con el encabezado de la firma usando una función segura frente a ataques de temporización
Nunca proceses un webhook sin verificar primero su firma. El encabezado X-Firecrawl-Signature contiene la firma en el formato: sha256=abc123def456...
Para ver ejemplos completos de implementación en JavaScript y Python, consulta la documentación de seguridad de webhooks. Para consultar la documentación completa sobre webhooks, incluidos payloads de eventos detallados, estructura de payloads, configuración avanzada y solución de problemas, consulta la documentación de webhooks.

Referencia de configuración

El conjunto completo de parámetros disponibles al enviar un trabajo de rastreo:

Detalles importantes

De forma predeterminada, crawl ignora los subenlaces que no son descendientes de la URL que proporcionas. Por ejemplo, website.com/other-parent/blog-1 no se devolvería si hicieras crawl de website.com/blogs/. Usa el parámetro crawlEntireDomain para incluir rutas hermanas y superiores. Para hacer crawl de subdominios como blog.website.com al hacer crawl de website.com, usa el parámetro allowSubdomains.
  • Descubrimiento del sitemap: De forma predeterminada, el crawler incluye el sitemap del sitio web para descubrir URL (sitemap: "include"). Si estableces sitemap: "skip", solo se encontrarán las páginas accesibles mediante enlaces HTML desde la URL raíz. Recursos como PDF o páginas muy anidadas incluidas en el sitemap, pero no enlazadas directamente desde el HTML, no se encontrarán. Para obtener la máxima cobertura, mantén la configuración predeterminada.
  • Uso de créditos: Cada página rastreada cuesta 1 crédito. El modo JSON añade 4 créditos por página, el proxy mejorado añade 4 créditos por página y el análisis de PDF cuesta 1 crédito por cada página del PDF.
  • Expiración de resultados: Los resultados del trabajo están disponibles a través de la API durante 24 horas después de completarse. Después de ese plazo, consulta los resultados en los registros de actividad.
  • Errores de crawl: El array data contiene las páginas que Firecrawl extrajo correctamente. Usa el endpoint Get Crawl Errors para recuperar las páginas que fallaron debido a errores de red, tiempos de espera o bloqueos de robots.txt.
  • Resultados no deterministas: Los resultados de crawl pueden variar entre ejecuciones con la misma configuración. Las páginas se extraen de forma concurrente, por lo que el orden en que se descubren los enlaces depende de la latencia de la red y de qué páginas terminan de cargarse primero. Esto significa que diferentes ramas de un sitio pueden explorarse en distinta medida cerca del límite de profundidad, especialmente con valores altos de maxDiscoveryDepth. Para obtener resultados más deterministas, establece maxConcurrency en 1 o usa sitemap: "only" si el sitio tiene un sitemap completo.
¿Eres un agente de IA que necesita una clave de API de Firecrawl? Consulta firecrawl.dev/agent-onboarding/SKILL.md para obtener instrucciones de incorporación automatizada.