Installation
Le SDK Rust officiel est maintenu dans le monorepo de Firecrawl à l’emplacement apps/rust-sdk. Pour installer le SDK Rust de Firecrawl, ajoutez la dépendance depuis crates.io:Rust 1.70 ou version ultérieure est requis.
Utilisation
- Obtenez une clé API depuis firecrawl.dev
- Définissez la clé API dans une variable d’environnement nommée
FIRECRAWL_API_KEY, ou passez-la directement àClient::new(...)
Scraper une URL
Pour scraper une seule URL, utilisez la méthodescrape.
extraction JSON
Extrayez un JSON structuré à l’aide descrape_with_schema :
ScrapeOptions :
Analyse des fichiers envoyés
Utilisezparse pour envoyer un fichier local (.html, .htm, .pdf, .docx, .doc, .odt, .rtf, .xlsx, .xls) en multipart/form-data vers /v2/parse. Le point de terminaison renvoie un Document avec les formats demandés.
ParseOptions omet intentionnellement les champs propres au scrape que /v2/parse rejette (tels que actions, waitFor, location, mobile, screenshot, branding et changeTracking).
Créez un ParseFile à partir d’octets en mémoire ou directement depuis un chemin :
ParseFile
ParseOptions
Champs pris en charge (tous facultatifs, avec des noms en camelCase dans la requête) :
formats: Vec<ParseFormat>— au choix parmiMarkdown,Html,RawHtml,Links,Images,Summary,Json,Attributesonly_main_content: boolinclude_tags: Vec<String>/exclude_tags: Vec<String>headers: HashMap<String, String>timeout: u32(ms)parsers: Vec<ParserConfig>(par ex. configuration de l’analyseur PDF)skip_tls_verification: boolremove_base64_images: boolfast_mode: boolblock_ads: boolproxy: ParseProxyType(BasicouAuto)json_options: JsonOptionsattribute_selectors: Vec<AttributeSelector>zero_data_retention: boolintegration: String,origin: String,use_mock: String
Effectuer le crawl d’un site web
Pour effectuer le crawl d’un site web et attendre la fin de l’opération, utilisezcrawl.
Démarrer un crawl
Démarrez une tâche sans attendre à l’aide destart_crawl.
Vérifier l’état du crawl
Suivez la progression du crawl avecget_crawl_status.
Annuler un crawl
Annulez un crawl en cours aveccancel_crawl.
Vérifier les erreurs de crawl
Obtenez les erreurs d’une tâche de crawl avecget_crawl_errors.
Cartographier un site web
Découvrez les liens d’un site à l’aide demap.
map_urls :
Recherche sur le Web
Lancez une recherche avec des paramètres facultatifs à l’aide desearch.
Scraping par lots
Scrapez plusieurs URL en parallèle avecbatch_scrape.
Agent
Lancez un agent basé sur l’IA avecagent.
Session interactive liée au scraping
Utilisez l’ID d’une tâche de scraping pour exécuter ensuite du code dans le navigateur, dans le même contexte :interact(...)exécute du code ou des prompts dans la session de navigateur liée au scraping.stop_interaction(...)met fin à la session interactive lorsque vous avez terminé.
Configuration
Client::new(...) et Client::new_selfhosted(...) créent un client.
Variable d’environnement
Définissez la variable d’environnementFIRECRAWL_API_KEY au lieu de fournir directement la clé :
Intervalles d’interrogation
Les méthodes synchrones (crawl, batch_scrape, agent) interrogent le statut jusqu’à la fin du traitement. Vous pouvez personnaliser l’intervalle d’interrogation via la structure options :
Gestion des erreurs
Le SDK utilise l’énumérationFirecrawlError, qui implémente Error, Debug et Display. Toutes les méthodes renvoient Result<T, FirecrawlError>.
Êtes-vous un agent IA qui a besoin d’une clé API pour Firecrawl ? Consultez firecrawl.dev/agent-onboarding/SKILL.md pour obtenir des instructions d’intégration automatisée.

