Installation#
Le SDK .NET officiel est maintenu dans le monorepo de Firecrawl à l’emplacement apps/dot-net-sdk.
Pour installer le SDK .NET de Firecrawl, ajoutez le package NuGet :
Utilisation#
- Obtenez une clé API sur firecrawl.dev
- Définissez la clé API comme variable d’environnement nommée
FIRECRAWL_API_KEY, ou passez-la au constructeurFirecrawlClient
Voici un exemple rapide avec l’API actuelle du SDK :
Scraping d’une URL#
Pour effectuer le scraping d’une seule URL, utilisez la méthode ScrapeAsync.
Extraction de JSON#
Extrayez des données JSON structurées avec JsonFormat via le point de terminaison scrape :
Effectuer un crawl sur un site web#
Pour effectuer un crawl sur un site web et attendre la fin de l'opération, utilisez CrawlAsync. Cette méthode gère automatiquement l'interrogation et la pagination.
Démarrer un crawl#
Lancez une tâche sans attendre avec StartCrawlAsync.
Vérifier l’état du crawl#
Consultez la progression du crawl avec GetCrawlStatusAsync.
Annuler un crawl#
Annulez un crawl en cours avec CancelCrawlAsync.
Cartographier un site web#
Découvrez les liens d’un site avec MapAsync.
Recherche sur le Web#
Effectuez une recherche avec des paramètres facultatifs via SearchAsync.
Scraping par lots#
Scrapez plusieurs URL en parallèle à l’aide de BatchScrapeAsync. Cette méthode gère automatiquement l’interrogation et la pagination.
Extraction par lot avec clé d’idempotence#
Pour éviter que des requêtes en double ne soient traitées, fournissez une IdempotencyKey :
Utilisation & métriques#
Vérifier la concurrence et les crédits restants :
Compatibilité async#
Toutes les méthodes du SDK .NET sont async par défaut et renvoient Task<T>. Elles prennent également en charge CancellationToken pour permettre une annulation coopérative.
Configuration#
Le constructeur FirecrawlClient accepte les options suivantes :
| Option | Type | Par défaut | Description |
|---|---|---|---|
apiKey | string? | variable d'environnement FIRECRAWL_API_KEY | Votre clé API Firecrawl |
apiUrl | string? | https://api.firecrawl.dev (ou FIRECRAWL_API_URL) | URL de base de l'API |
timeout | TimeSpan? | 5 minutes | Délai d'expiration de la requête HTTP |
maxRetries | int | 3 | Nouvelles tentatives automatiques en cas d'échecs temporaires |
backoffFactor | double | 0.5 | Facteur de backoff exponentiel en secondes |
httpClient | HttpClient? | Créé à partir de timeout | Instance HttpClient préconfigurée |
Client HTTP personnalisé#
Vous pouvez transmettre un HttpClient préconfiguré pour contrôler le pool de connexions, les proxys, les gestionnaires de messages et toute autre fonctionnalité de HttpClient. Lorsqu’il est fourni, le paramètre timeout est ignoré au profit de la configuration du client lui-même.
Configuration des variables d'environnement#
Le SDK détermine sa configuration à partir des variables d'environnement lorsque les paramètres du constructeur ne sont pas fournis :
Gestion des erreurs#
Le SDK génère des exceptions spécifiques dans Firecrawl.Exceptions.
La hiérarchie des exceptions :
| Exception | Code HTTP | Quand |
|---|---|---|
AuthenticationException | 401 | Clé API invalide ou manquante |
RateLimitException | 429 | Trop de requêtes |
JobTimeoutException | — | La tâche asynchrone (crawl/extraction par lot) n’a pas été terminée à temps |
FirecrawlException | variable | Exception de base pour toutes les autres erreurs de l’API |
Les échecs transitoires (408, 409, 502 et autres erreurs 5xx) sont automatiquement retentés avec un backoff exponentiel avant qu’une exception ne soit levée.
Êtes-vous un agent IA ayant besoin d’une clé API Firecrawl ? Consultez firecrawl.dev/agent-onboarding/SKILL.md pour les instructions d’intégration automatisée.

