Présentation
Améliorations clés
-
Plus rapide par défaut : Les requêtes sont mises en cache avec
maxAgefixé par défaut à 2 jours, et des paramètres pertinents commeblockAds,skipTlsVerificationetremoveBase64Imagessont activés. -
Nouveau format de résumé : Vous pouvez désormais indiquer
"summary"comme format pour recevoir directement un résumé concis du contenu de la page. -
Extraction JSON mise à jour : L’extraction JSON et le suivi des modifications utilisent désormais un format objet :
{ type: "json", prompt, schema }. L’ancien format"extract"a été renommé en"json". -
Options de capture d’écran améliorées : Utilisez la forme objet :
{ type: "screenshot", fullPage, quality, viewport }. -
Nouvelles sources de recherche : Recherchez dans
"news"et"images", en plus des résultats web, en définissant le paramètresources. -
Crawl intelligent avec prompts : Fournissez un
prompten langage naturel au crawl et le système déduira automatiquement les chemins/limites. Utilisez le nouveau point de terminaison /crawl/params-preview pour prévisualiser les options dérivées avant de lancer un job.
Liste de contrôle de migration rapide
- Remplacez l’utilisation du client v1 par les clients v2 :
- JS :
const firecrawl = new Firecrawl({ apiKey: 'fc-YOUR-API-KEY' }) - Python :
firecrawl = Firecrawl(api_key='fc-YOUR-API-KEY') - API : utilisez les nouveaux points de terminaison
https://api.firecrawl.dev/v2/.
- JS :
- Mettez à jour les formats :
- Utilisez
"summary"si nécessaire - Mode JSON : utilisez
{ type: "json", prompt, schema }pour l’extraction JSON - Screenshot et Screenshot@fullPage : utilisez le format d’objet screenshot lors de la définition des options
- Utilisez
- Adoptez des flux asynchrones standardisés dans les SDK :
- Crawls :
startCrawl+getCrawlStatus(ou waitercrawl) - Batch :
startBatchScrape+getBatchScrapeStatus(ou waiterbatchScrape) - Extract :
startExtract+getExtractStatus(ou waiterextract)
- Crawls :
- Correspondance des options de crawl (voir ci-dessous)
- Vérifiez le
promptdu crawl avec/crawl/params-preview
Surface du SDK (v2)
JS/TS
Changements de noms de méthodes (migration v1 → v2)
| v1 (FirecrawlApp) | v2 (Firecrawl) |
|---|---|
scrapeUrl(url, ...) | scrape(url, options?) |
search(query, ...) | search(query, options?) |
mapUrl(url, ...) | map(url, options?) |
| v1 | v2 |
|---|---|
crawlUrl(url, ...) | crawl(url, options?) (bloquante) |
asyncCrawlUrl(url, ...) | startCrawl(url, options?) |
checkCrawlStatus(id, ...) | getCrawlStatus(id) |
cancelCrawl(id) | cancelCrawl(id) |
checkCrawlErrors(id) | getCrawlErrors(id) |
| v1 | v2 |
|---|---|
batchScrapeUrls(urls, ...) | batchScrape(urls, opts?) (bloquante) |
asyncBatchScrapeUrls(urls, ...) | startBatchScrape(urls, opts?) |
checkBatchScrapeStatus(id, ...) | getBatchScrapeStatus(id) |
checkBatchScrapeErrors(id) | getBatchScrapeErrors(id) |
| v1 | v2 |
|---|---|
extract(urls?, params?) | extract(args) |
asyncExtract(urls, params?) | startExtract(args) |
getExtractStatus(id) | getExtractStatus(id) |
| v1 | v2 |
|---|---|
generateLLMsText(...) | (non inclus dans le SDK v2) |
checkGenerateLLMsTextStatus(id) | (non inclus dans le SDK v2) |
crawlUrlAndWatch(...) | watcher(jobId, ...) |
batchScrapeUrlsAndWatch(...) | watcher(jobId, ...) |
Python (synchrones)
Changements de noms de méthodes (migration v1 → v2)
| v1 | v2 |
|---|---|
scrape_url(...) | scrape(...) |
search(...) | search(...) |
map_url(...) | map(...) |
| v1 | v2 |
|---|---|
crawl_url(...) | crawl(...) (waiter) |
async_crawl_url(...) | start_crawl(...) |
check_crawl_status(...) | get_crawl_status(...) |
cancel_crawl(...) | cancel_crawl(...) |
| v1 | v2 |
|---|---|
batch_scrape_urls(...) | batch_scrape(...) (waiter) |
async_batch_scrape_urls(...) | start_batch_scrape(...) |
get_batch_scrape_status(...) | get_batch_scrape_status(...) |
get_batch_scrape_errors(...) | get_batch_scrape_errors(...) |
| v1 | v2 |
|---|---|
extract(...) | extract(...) |
start_extract(...) | start_extract(...) |
get_extract_status(...) | get_extract_status(...) |
| v1 | v2 |
|---|---|
generate_llms_text(...) | (absent du SDK v2) |
get_generate_llms_text_status(...) | (absent du SDK v2) |
watch_crawl(...) | watcher(job_id, ...) |
Python (asynchrone)
AsyncFirecrawlpropose les mêmes méthodes (toutes awaitables).
Formats et options de scraping
- Utilisez des formats chaîne pour les bases :
"markdown","html","rawHtml","links","summary","images". - Au lieu de
parsePDF, utilisezparsers: [ { "type": "pdf" } | "pdf" ]. - Utilisez des formats objet pour JSON, le suivi des modifications et les captures d’écran :
Format JSON
Format de capture d’écran
Correspondance des options de crawl (v1 → v2)
| v1 | v2 |
|---|---|
allowBackwardCrawling | (supprimé) utiliser crawlEntireDomain |
maxDepth | (supprimé) utiliser maxDiscoveryDepth |
ignoreSitemap (booléen) | sitemap (p. ex. « only », « skip » ou « include ») |
| (aucun) | prompt |

