Skip to main content

.NET

El SDK de Firecrawl para .NET es un wrapper de la API de Firecrawl que te permite convertir sitios web en markdown fácilmente.
3 min read

Instalación#

El SDK oficial de Firecrawl para .NET se mantiene en el monorepo de Firecrawl, en apps/dot-net-sdk.

Para instalar el SDK de Firecrawl para .NET, agrega el paquete NuGet:

Note
Requiere .NET 8.0 o posterior.

Uso#

  1. Obtén una clave de API de firecrawl.dev
  2. Configura la clave de API como una variable de entorno llamada FIRECRAWL_API_KEY o pásala al constructor de FirecrawlClient

Aquí tienes un ejemplo rápido con la API actual del SDK:

Hacer scraping de una URL#

Para hacer scraping de una sola URL, usa el método ScrapeAsync.

Extracción JSON#

Extrae JSON estructurado con JsonFormat a través del endpoint de scraping:

Rastreo de un sitio web#

Para rastrear un sitio web y esperar a que finalice, usa CrawlAsync. Este método gestiona el sondeo y la paginación automáticamente.

Iniciar un rastreo#

Inicia un trabajo sin esperar con StartCrawlAsync.

Consultar el estado del rastreo#

Consulta el progreso del rastreo con GetCrawlStatusAsync.

Cancelar un rastreo#

Cancela un rastreo en curso con CancelCrawlAsync.

Mapeo de un sitio web#

Descubre enlaces en un sitio con MapAsync.

Búsqueda en la Web#

Realiza búsquedas con opciones de búsqueda opcionales utilizando SearchAsync.

Scraping por lotes#

Realiza scraping de varias URL en paralelo con BatchScrapeAsync. Este método se encarga del sondeo y la paginación automáticamente.

Extracción por lotes con clave de idempotencia#

Para evitar que se procesen solicitudes duplicadas, pasa una IdempotencyKey:

Uso y métricas#

Consulta la concurrencia y los créditos restantes:

Compatibilidad con async#

Todos los métodos del SDK de Firecrawl para .NET son async de forma predeterminada y devuelven Task<T>. Admiten CancellationToken para una cancelación cooperativa.

Configuración#

El constructor de FirecrawlClient admite las siguientes opciones:

OpciónTipoPredeterminadoDescripción
apiKeystring?Variable de entorno FIRECRAWL_API_KEYTu clave de la API de Firecrawl
apiUrlstring?https://api.firecrawl.dev (o FIRECRAWL_API_URL)URL base de la API
timeoutTimeSpan?5 minutosTiempo de espera de la solicitud HTTP
maxRetriesint3Reintentos automáticos ante fallos transitorios
backoffFactordouble0.5Factor de retroceso exponencial en segundos
httpClientHttpClient?Se crea a partir de timeoutInstancia de HttpClient preconfigurada

Cliente HTTP personalizado#

Puedes pasar un HttpClient preconfigurado para controlar el pool de conexiones, los proxies, los manejadores de mensajes y cualquier otra funcionalidad de HttpClient. Cuando se proporciona, la configuración de timeout se ignora y prevalece la propia configuración del cliente.

Configuración de variables de entorno#

El SDK obtiene la configuración a partir de variables de entorno cuando se omiten los parámetros del constructor:

Manejo de errores#

El SDK lanza excepciones específicas bajo Firecrawl.Exceptions.

La jerarquía de excepciones:

ExceptionHTTP CodeWhen
AuthenticationException401Clave de API no válida o ausente
RateLimitException429Demasiadas solicitudes
JobTimeoutExceptionEl trabajo asíncrono (crawl/extracción por lotes) no se completó a tiempo
FirecrawlExceptionvaríaExcepción base para todos los demás errores de la API

Los fallos transitorios (408, 409, 502 y otros errores 5xx) se reintentan automáticamente con backoff exponencial antes de que se lance una excepción.

¿Eres un agente de IA y necesitas una clave de API de Firecrawl? Consulta firecrawl.dev/agent-onboarding/SKILL.md para obtener instrucciones de incorporación automatizada.