NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1644 most downloaded on PyPI
Python SDK for the Firecrawl API: web scraping, crawling, web search, and scientific literature search over a research paper index of PubMed, bioRxiv, medRxiv and arXiv abstracts
Last release 2 days ago
02 Oct 2026
Ships fairly regularly
a new release about every 2 weeks
No release notes found
nothing matched a version
Nothing withdrawn
no release was ever pulled
2 years old
203 releases · first in 2024
The legacy /v2/research/* mount is kept as a deprecated alias.
/scrape, /search, /interact, and /parse without an API key from official MCP, CLI, and SDK clients.redactPII option that strips personal and sensitive data like names, emails, phone numbers, addresses, and secrets out of scraped content before it's returned.deterministicJson format — Added a format that returns structured JSON without running an LLM on every request. Firecrawl generates a reusable extractor for your schema and caches it per site, so repeat scrapes are cheaper and return consistent results.video format to find videos on any page, not just supported providers like YouTube, returning each video's URL, title, thumbnail, duration, and more.cdpUrl) to browser session responses, so you can drive a live Firecrawl browser session directly with Playwright, Puppeteer, or any other CDP client.goal to monitors so an LLM judges each detected change as meaningful or noise against what you actually care about, cutting alert spam and surfacing the changes that matter first in summary emails.Monitor responses now report each recipient's subscription status.daily at 9am and daily at 5:30pm, converted to the correct UTC cron expression.crawl() scrape kwargs — Added direct scrape kwargs (formats, headers, include_tags, exclude_tags, etc.) to crawl() and start_crawl(), removing the need to wrap them in ScrapeOptions(...)..data errors — Improved the error raised when accessing .data on a search result to point at .web, .news, and .images with their counts, instead of returning a silent None.type= argument on JsonFormat and ChangeTrackingFormat, defaulting it like ScreenshotFormat.ChangeTrackingFormat casing — Added acceptance of both change_tracking and changeTracking for the format type so payloads round-trip between snake_case and camelCase clients.axios, esbuild, ws, openssl, and other dependencies.metadata.ogImage on roughly half of Wikimedia URLs.status reports cancelled immediately.skipped_no_credits and stop the run.changed verdicts when field values were identical but reordered; diffs now use order-insensitive equality.changed on every run.monitor.page and monitor.check.completed payloads in an array to match the crawl/batch shape.GET /v2/monitor/:id/checks/:checkId; bad data now surfaces as no diff.td cells; the markdown converter now promotes it to a header so column labels survive into document.markdown.ChangeTrackingFormat options (modes, prompt, and related fields) being dropped through Python SDK serialization round-trips.pii format with redactPII (boolean or { mode?, entities?, replaceStyle? }) on POST /v2/scrape, /v2/batch/scrape, /v2/crawl, /v2/parse, and /v2/extract; when enabled, document.markdown returns redacted text (defaults mode: "accurate", replaceStyle: "tag"). The old pii format and document.pii block are removed, and requests including "pii" in formats are now rejected.deterministicJson format ({ type: "deterministicJson", schema?, prompt? }) to POST /v2/scrape, /v2/batch/scrape, /v2/crawl, /v2/parse, and /v2/extract, populating document.json. Cannot be combined with the json format.document.videos: VideoItem[] (with url, sourceURL, source, and optional title, thumbnail, duration, dimensions, and more) to POST /v2/scrape and the endpoints sharing its options when the video format is requested. The legacy document.video string remains for supported providers.createdAt, completedAt, and duration (seconds) to GET /v2/crawl/{id} and GET /v2/batch/scrape/{id}; completedAt is present only on terminal states./v2/search/research proxy — GET /v2/search/research/papers, /papers/:id, /papers/:id/similar, and /github — billed against SEARCH_CREDITS at 2 credits per 10 results (10 per 10 for ZDR teams). The legacy /v2/research/* mount is kept as a deprecated alias.POST/GET /interact, POST /interact/:sessionId/execute, and DELETE /interact/:sessionId as full aliases for the /v2/browser session endpoints; behavior, rate limits, and the 2-credit session-create charge are identical.cdpUrl (Python: cdp_url) to the POST /v2/scrape/:jobId/interact and /v2/browser execute responses, exposing the raw CDP WebSocket URL alongside the existing live-view URLs.POST /v2/feedback covering search, scrape, parse, and map jobs with shared recording and refund logic; the legacy POST /v2/search/:jobId/feedback keeps working and writes to the same store.POST /v2/parse, matching scrape and search, and tightened keyless credit accounting so concurrent requests stay within the per-IP daily cap.WWW-Authenticate: Bearer realm="firecrawl" header to all 401 responses across /v0, /v1, and /v2 so agent clients can discover the credential scheme.searchZDR values "forced-zdr" and "forced-anon" and deprecated "forced" (now an alias for "forced-zdr"); the resolved mode drives both billing and routing.goal and judgeEnabled to POST /v2/monitor and PATCH /v2/monitor/:id; judgeEnabled defaults to true when goal is set, and goal: null clears it.judgment, meaningfulChange (with a per-change reason), meaningfulChanges[], a structured diff object (text and/or json), and a snapshot field to monitor check pages; JSON-mode checks return field-level diffs plus a current-value snapshot.POST /v2/monitor/email/confirm and POST /v2/monitor/email/unsubscribe (token accepted in the request body only), plus an emailRecipientSubscriptions array on Monitor responses reporting each recipient's email, status (pending/confirmed/unsubscribed), source, and confirmationEmailSent.origin to monitor create/update bodies, matching the other v2 endpoints.delay for POST /v2/crawl and POST /v1/crawl; non-numeric, negative, or values over 86400 are now rejected with a schema error instead of being silently applied.include_domains and exclude_domains to the Python SDK's sync Firecrawl.search(), matching the async client and the /v2/search payload.scrape_url/scrapeUrl, crawl_url/crawlUrl, batch_scrape_urls, map_url, etc.) on the V2 Python and JS clients; aliases emit a DeprecationWarning.data in an array; monitor.page now includes isMeaningful, judgment, and a diff object.scrapeOptions.formats so changeTracking json mode is rewritten to json, and the mixed ["json", "git-diff"] form now runs both diffs instead of silently falling back to one.Full Changelog: https://github.com/firecrawl/firecrawl/compare/v2.10...v2.11.0
One column per month.
Firecrawl v2.11.0 ships the Firecrawl Research Index, keyless endpoint access, automatic PII redaction, a deterministicJson format, and video discovery on any page - plus much more.
Firecrawl Research Index — Search across 3M+ arXiv papers and the GitHub code behind them (issues, merged PRs, and READMEs, refreshed daily), fetch a paper's details or related work, and check claims against full text. It has state-of-the-art recall on arXivQA, outperforming the next best provider by 18% at comparable cost.
Keyless access for core endpoints — Use /scrape , /search , /interact , and /parse without an API key from official MCP, CLI, and SDK clients.
Automatic PII redaction — A new redactPII option strips personal and sensitive data like names, emails, phone numbers, addresses, and secrets out of scraped content before it's returned.
deterministicJson format — Get structured JSON without running an LLM on every request. Firecrawl generates a reusable extractor for your schema and caches it per site, so repeat scrapes are cheaper and return consistent results.
Video discovery on any page — The video format now finds videos on any page, not just supported providers like YouTube, returning each video's URL, title, thumbnail, duration, and more.
Read the full changelog here .
Jun 16, 2026
Nothing published for this version
Resolved multiple CVEs across dependencies including handlebars, path-to-regexp, fast-xml-parser, rollup (CVE-2026-27606), undici, and others.
/interact endpoint — Scrape a page, then call /interact to take actions on it — click buttons, fill forms, navigate deeper, or extract dynamic content. Describe what you want in natural language via prompt, or write Playwright code (Node.js, Python) and Bash (agent-browser) for full control. Sessions persist across calls, with live view and interactive live view URLs for real-time browser streaming. Persistent profiles let you save and reuse browser state (cookies, localStorage) across scrapes. Available in JS, Python, Java, and Rust SDKs.query format — Added query format to the /scrape endpoint — pass a natural-language prompt and get a direct answer back in data.answer.audio format — Added audio format option to scrape responses, returning audio output as a field on the document.onlyCleanContent parameter — Added onlyCleanContent parameter to the /scrape endpoint, which strips navigation, ads, cookie banners, and other non-semantic content from markdown output.fast, auto, ocr) and a maxPages option to control extraction depth and OCR behavior..doc file support — Added support for parsing legacy .doc files.contentType in scrape responses — Added contentType to scrape responses for PDFs and documents.timeout, max_retries, and backoff_factor — these were previously accepted but silently ignored.o3-mini model on extract jobs.time_taken in /v1/map always returning ~0.failed status with an error message and partial data when a crawl-level failure occurs.maxPages not being passed to the PDF extractor — previously, full PDF content was returned while only charging for the limited page count.maxCredits threshold.colors.secondary not being populated.removeBase64Images running after deriveDiff in the transformer pipeline, causing diff issues.ZodError in /v1/search controller.handlebars, path-to-regexp, fast-xml-parser, rollup (CVE-2026-27606), undici, and others.GET /v2/team/activity endpoint for listing recent scrape, crawl, and extract jobs with cursor-based pagination (last 24 hours, up to 100 results per page, filterable by endpoint type).regexOnFullURL parameter on crawl requests to apply includePaths/excludePaths filtering against the full URL including query parameters. Available in JS, Python, Java, and Elixir SDKs.deduplicateSimilarURLs parameter on crawl requests. Available in JS, Python, Java, and Elixir SDKs.extract endpoint — use the /agent endpoint instead. Existing extract methods in JS and Python SDKs are marked deprecated.persistentSession to profile on browser/interact requests (writeMode is now saveChanges). The old parameter name remains functional but is no longer documented.Full Changelog: https://github.com/firecrawl/firecrawl/compare/v2.8.0...v2.9.0
Firecrawl v2.9.0 includes browser interaction via /interact , new scrape formats, smarter PDF handling, two new SDKs, and a long list of reliability fixes.
Browser Interaction via /interact — Scrape a page, then call /interact to click buttons, fill forms, navigate, or extract dynamic content. Use natural language or write Playwright / Bash code for full control. Sessions persist across calls with live view URLs and reusable browser profiles.
Question Format — Pass a natural-language prompt to /scrape and get a direct answer back in data.answer .
Audio Format — Request audio output from any scrape, returned as a field on the document.
onlyCleanContent Parameter — Strip navigation, ads, cookie banners, and other non-semantic content from markdown output in a single flag.
PDF Parsing Modes — Choose fast , auto , or ocr parsing with a maxPages option for fine-grained extraction control.
Java & Elixir SDKs — Official SDKs with full v2 API support, joining JS, Python, Go, and Rust.
Read the full changelog here .
Mar 25, 2026
Multiple security vulnerability fixes, including CVE-2025-59466 and lodash prototype pollution.
Firecrawl v2.8.0 brings major improvements to agent workflows, developer tooling, and self-hosted deployments across the API and SDKs, including our new Skill.
/agent queries simultaneously, powered by our new Spark 1 Fast model.And much more, check it out below!
Parallel Agents
Execute thousands of /agent queries in parallel with automatic failure handling and intelligent waterfall execution. Powered by Spark 1-Fast for instant retrieval, automatically upgrading to Spark 1 Mini for complex queries requiring full research.
Firecrawl CLI
New command-line interface for Firecrawl with full support for scrape, search, crawl, and map commands. Install with npm install -g firecrawl-cli.
Firecrawl Skill
Enables agents like Claude Cursor, Codex, and OpenCode to use Firecrawl for web scraping and data extraction, installable via npx skills add firecrawl/cli.
Spark Model Family
Three new models powering /agent: Spark 1 Fast for instant retrieval (currently available in Playground), Spark 1 Mini (default) for everyday extraction tasks at 60% lower cost, and Spark 1 Pro for complex multi-domain research requiring maximum accuracy. Spark 1 Pro achieves ~50% recall while Mini delivers ~40% recall, both significantly outperforming tools costing 4-7x more per task.
Firecrawl MCP Server Agent Tools
New firecrawl_agent and firecrawl_agent_status tools for autonomous web data gathering via MCP-enabled agents.
Agent Webhooks
Agent endpoint now supports webhooks for real-time notifications on job completion and progress.
Agent Model Selection
Agent endpoint now accepts a model parameter and includes model info in status responses.
Multi-Arch Docker Images
Self-hosted deployments now support linux/arm64 architecture in addition to amd64.
Sitemap-Only Crawl Mode
New crawl option to exclusively use sitemap URLs without following links.
ignoreCache Map Parameter
New option to bypass cached results when mapping URLs.
Custom Headers for /map
Map endpoint now supports custom request headers.
Background Image Extraction
Scraper now extracts background images from CSS styles.
Improved Error Messages
All user-facing error messages now include detailed explanations to help diagnose issues.
400 for unsupported actions with clear errors when requested actions aren't supported by available engines.og:title or twitter:title when missing.gid parameter when rewriting Google Sheets URLs.robots.txt fetching and parsing.Watcher and WatcherOptions now exported from the SDK entrypoint.jobId for debugging.max_pages handling in crawl requests.lopdf metadata loading performance.html-to-markdown module with multiple bug fixes.firecrawl --api-url http://localhost:3002 for local instances.Full Changelog: https://github.com/firecrawl/firecrawl/compare/v2.7.0...v2.8.0
Firecrawl v2.8.0 brings major improvements to agent workflows, developer tooling, and self-hosted deployments across the API and SDKs.
Parallel Agents - Execute thousands of /agent queries simultaneously with automatic failure handling and intelligent waterfall execution. Powered by Spark 1 Fast for instant retrieval, automatically upgrading to Spark 1 Mini for complex queries requiring deeper research.
Firecrawl Skill - Enables agents to use Firecrawl for web scraping and data extraction, install via npx -y firecrawl-cli@latest init --all --browser .
Firecrawl CLI - Command-line interface with full scrape, search, crawl & map support, install via npm install -g firecrawl-cli .
Spark Model Family - Three new models powering /agent: Spark 1 Fast for instant retrieval (currently only available in Playground), Spark 1 Mini for complex research queries, and Spark 1 Pro for advanced extraction tasks.
Agent Enhancements - Webhook support, model selection, and new MCP Server tools for autonomous web data gathering.
Read the full changelog here .
Jan 30, 2026
Nothing published for this version
Updated Express version and patched vulnerable packages.
And a lot more enhacements, check it out below!
Improved Branding Extract
Better logo and color detection for more accurate brand extraction results.
NOQ Scrape System (Experimental)
New scrape pipeline with improved stability and integrated concurrency checks.
Enhanced Redirect Handling
URLs now resolve before mapping, with safer redirect-chain detection and new abort timeouts.
Enterprise Search Parameters
New enterprise-level options available for the /search endpoint.
Integration-Based User Creation
Users can now be automatically created when coming from referring integrations.
minAge Scrape Parameter
Allows requiring a minimum cached age before re-scraping.
Extract Billing Credits
Extract jobs now use the same credit billing system as other endpoints.
Self-Host: Configurable Crawl Concurrency
Self-hosted deployments can now set custom concurrency limits.
Sentry Enhancements
Added Vercel AI integration, configurable sampling rates, and improved exception filtering.
UUIDv7 IDs
All new resources use lexicographically sortable UUIDv7.
maxAge fixes, recursive sitemap support, Vue/Angular router normalization, and skipping subdomain logic for IP addresses./v2/batch/scrape/:jobId/errors endpointdocument event handling.ignoreQueryParameter.Full Changelog: https://github.com/firecrawl/firecrawl/compare/v2.6.0...v2.7.0
Full Changelog: https://github.com/firecrawl/firecrawl/compare/v2.6.0...v2.7.0
ZDR Search Support - Enterprise customers can now search with Zero Data Retention enabled end to end. If you're interested, contact alex@firecrawl.dev to enable for your team.
Partner Integrations API - Available in closed beta for native integrations. Get in touch with us at partnerships@firecrawl.dev if you are intested in offering Firecrawl as a native integration in your product.
Improved Branding Format - Better detection and support across all platforms.
Faster Screenshots - Enhanced viewport and full page screenshots with improved speed and accuracy.
Self-hosted Improvements - Significant enhancements for deployments and infrastructure.
Performance Enhancements - Platform-wide improvements for better user experience.
Read the full changelog here
Nov 14, 2025
Unified Billing Model - Credits and tokens merged into single system. Extract now uses credits (15 tokens = 1 credit), existing tokens work everywhere
python-sdk with model selection by @Chadha93 in https://github.com/firecrawl/firecrawl/pull/2266Full Changelog: https://github.com/firecrawl/firecrawl/compare/v2.5.0...v2.6.0
Unified Billing Model - Credits and tokens merged into single system. Extract now uses credits (15 tokens = 1 credit), existing tokens work everywhere.
Enhanced Branding Format - Full support across Playground, MCP, JS and Python SDKs.
Reliability and Speed Improvements - All endpoints significantly faster with improved reliability.
Instant Credit Purchases - Buy credit packs directly from dashboard without waiting for auto-recharge.
Improved Markdown Parsing - Enhanced markdown conversion and main content extraction accuracy.
Change Tracking - Faster and more reliable detection of web page content updates.
Core Stability Fixes - Fixed tons of core stability issues, PDF timeouts, and improved error handling.
Read the full changelog here
Oct 25, 2025
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
We now have the highest quality and most comprehensive web data API available powered by our new semantic index and custom browser stack.
We now have the highest quality and most comprehensive web data API available powered by our new semantic index and custom browser stack.
See the benchmarks below:
<img width="1200" height="675" alt="image" src="https://github.com/user-attachments/assets/96a2ba36-0c7f-4fa3-829e-d6ac91b53705" />
.xlsx (Excel) files./search pricing updatetracing instead of print.Full diff: https://github.com/firecrawl/firecrawl/compare/v2.4.0...v2.5.0
tracing instead of print by @codetheweb in https://github.com/firecrawl/firecrawl/pull/2324Full Changelog: https://github.com/firecrawl/firecrawl/compare/v2.4.0...v2.5.0
Today, we're excited to announce Firecrawl v2.5, which delivers the highest quality and most comprehensive web data API available. This release represents a significant leap forward in web data extraction, powered by two major infrastructure improvements: our new Semantic Index and a completely custom browser stack.
See the benchmarks below:
We've open-sourced these benchmarks! Check out scrape-evals , our reproducible framework for testing web scraping engines on 1,000 real URLs.
Open-Source Scrape-Evals Benchmark
We've released scrape-evals , an open-source benchmark testing 13 web scraping engines on 1,000 real URLs for coverage and quality.
Full-Page, High-Quality Extraction
Improved browser stack ensures complete and consistent data from any type of website.
Semantic Index for Faster Results
Retrieve either fresh data or a previously indexed snapshot with faster speeds and increased coverage.
5x Cheaper Search & New Credit Packs
Search is now 5x cheaper and now every plan has an auto-recharge credit pack sized to match your scale.
Smarter Concurrency & Crawl Architecture
New crawling system improves throughput, reliability, and queue fairness across large workloads.
Excel (.xlsx) Scraping Support
Extract clean data directly from spreadsheets or csv files.
Firecrawl v2.5 is available now for all users - no code changes required. You can start experiencing the improved quality and coverage today:
Experiment in our interactive playground
Review the complete documentation
Sign up to integrate Firecrawl into your applications
We're excited to see what you build with the world's most reliable web data API.
Read more about it in our blog post here and view the full changelog here
Oct 13, 2025
Nothing published for this version
Nothing published for this version
Nothing published for this version
New PDF Search Category - You can now search for only pdfs via our v2/search endpoints by specifying .pdf category
/v2/x402) — Added a next-gen search API with improved accuracy and speed (#2218)crawl_status_2 RPC (#2239)"cancelled" job status handling and poll interval fixes (#2240, #2265)getDoneJobsOrderedUntil for more stable Redis retrieval (#2258)$ref schema validation edge cases (#2238)docker-compose.yaml issues (#2242, #2252)🔗 Full Changelog: v2.3.0 → v2.4.0
poll_interval param in watcher by @Chadha93 in https://github.com/firecrawl/firecrawl/pull/2155$ref for recursive schema validation by @Chadha93 in https://github.com/firecrawl/firecrawl/pull/2238queue_scrape for nuq schema by @Chadha93 in https://github.com/firecrawl/firecrawl/pull/2272Full Changelog: https://github.com/firecrawl/firecrawl/compare/v2.3.0...v2.4.0
New PDF Search Category - Search specifically for PDF documents using our v2/search endpoint with the new 'pdf' category filter
10x Better Semantic Crawling - Improved accuracy and relevance when crawling with a prompt
New x402 Search Endpoint - Our search API available via Coinbase x402 integration
Fire-enrich v2 Example - AI-powered data enrichment tool that transforms emails into rich datasets. See repo
Enhanced Crawl Status & Warnings - Real-time status updates with clear feedback for robots.txt limitations and low-result scenarios
20+ Self-Host Improvements - Major stability and functionality upgrades for self-hosted deployments
Read the full changelog here
Sep 19, 2025
YouTube Support: You can now get YouTube transcripts
pkgvuln issueFull Changelog: https://github.com/firecrawl/firecrawl/compare/v2.2.0...v2.3.0
YouTube transcript support
Added odt & rtf parsing support
Docx parsing is ~50x faster
Enterprise Auto-Recharge
Playground UX improvements
Self hosting improvements
Read the full changelog here
Sep 12, 2025
MCP version 3 is live. Stable support for cloud mcp with HTTP Transport and SSE modes. Compatible with v2 and v1 from.
maxPages parameter to v2 scrape API for pdf parsing/team/queue-status endpoint.nuq feature.VIASOCKET integration.maxPages parameter for PDF parser.get_queue_status to aio + normalization of docs in search results..gz sitemap support.zod-to-json-schema import.🔗 Full Changelog: v2.1.0...v2.2.0
include entries by @amplitudesxd in https://github.com/firecrawl/firecrawl/pull/2134Full Changelog: https://github.com/firecrawl/firecrawl/compare/v2.1.0...v2.2.0
MCP version 3 is live. Stable support for cloud mcp with HTTP Transport and SSE modes. Compatible with v2 and v1 from.
Webhooks: Now we support signatures + extract support + event failures
Map is now 15x faster + supports more urls
Search reliability improvements
Usage is now tracked by API Key
Support for additional locations (CA, CZ, IL, IN, IT, PL, and PT)
Queue status endpoint
Added maxPages parameter to v2 scrape API for pdf parsing
Read the full changelog here
Aug 29, 2025
Nothing published for this version
Nothing published for this version
Search Categories: Filter search results by specific categories using the categories parameter:
categories parameter:
github: Search within GitHub repositories, code, issues, and documentationresearch: Search academic and research websites (arXiv, Nature, IEEE, PubMed, etc.)data-* attributes.scrapeOptions.formats.credits_billed in v0 scrape.Full Changelog: https://github.com/firecrawl/firecrawl/compare/v2.0.1...v2.1.0
Nothing published for this version
This release fixes the "SSRF Vulnerability via malicious webhook" security advisory. It is recommended that people using the self-hosted version of Fi…
This release fixes the "SSRF Vulnerability via malicious webhook" security advisory. It is recommended that people using the self-hosted version of Firecrawl update to v2.0.1 immediately. More info in the advisory: https://github.com/firecrawl/firecrawl/security/advisories/GHSA-p2wg-prhf-jx79
fix(api): update vulnerable pkgs by @mogery in https://github.com/firecrawl/firecrawl/pull/1829
Faster by default: Requests are cached with maxAge defaulting to 2 days, and sensible defaults like blockAds, skipTlsVerification, and removeBase64Images are enabled.
New summary format: You can now specify "summary" as a format to directly receive a concise summary of the page content.
Updated JSON extraction: JSON extraction and change tracking now use an object format: { type: "json", prompt, schema }. The old "extract" format has been renamed to "json".
Enhanced screenshot options: Use the object form: { type: "screenshot", fullPage, quality, viewport }.
New search sources: Search across "news" and "images" in addition to web results by setting the sources parameter.
Smart crawling with prompts: Pass a natural-language prompt to crawl and the system derives paths/limits automatically. Use the new crawl-params-preview endpoint to inspect the derived options before starting a job.
const firecrawl = new Firecrawl({ apiKey: 'fc-YOUR-API-KEY' })firecrawl = Firecrawl(api_key='fc-YOUR-API-KEY')https://api.firecrawl.dev/v2/ endpoints."summary" where needed{ type: "json", prompt, schema } for JSON extractionstartCrawl + getCrawlStatus (or crawl waiter)startBatchScrape + getBatchScrapeStatus (or batchScrape waiter)startExtract + getExtractStatus (or extract waiter)prompt with crawl-params-previewScrape, Search, and Map
| v1 (FirecrawlApp) | v2 (Firecrawl) |
|---|---|
scrapeUrl(url, ...) |
scrape(url, options?) |
search(query, ...) |
search(query, options?) |
mapUrl(url, ...) |
map(url, options?) |
Crawling
| v1 | v2 |
|---|---|
crawlUrl(url, ...) |
crawl(url, options?) (waiter) |
asyncCrawlUrl(url, ...) |
startCrawl(url, options?) |
checkCrawlStatus(id, ...) |
getCrawlStatus(id) |
cancelCrawl(id) |
cancelCrawl(id) |
checkCrawlErrors(id) |
getCrawlErrors(id) |
Batch Scraping
| v1 | v2 |
|---|---|
batchScrapeUrls(urls, ...) |
batchScrape(urls, opts?) (waiter) |
asyncBatchScrapeUrls(urls, ...) |
startBatchScrape(urls, opts?) |
checkBatchScrapeStatus(id, ...) |
getBatchScrapeStatus(id) |
checkBatchScrapeErrors(id) |
getBatchScrapeErrors(id) |
Extraction
| v1 | v2 |
|---|---|
extract(urls?, params?) |
extract(args) |
asyncExtract(urls, params?) |
startExtract(args) |
getExtractStatus(id) |
getExtractStatus(id) |
Other / Removed
| v1 | v2 |
|---|---|
generateLLMsText(...) |
(not in v2 SDK) |
checkGenerateLLMsTextStatus(id) |
(not in v2 SDK) |
crawlUrlAndWatch(...) |
watcher(jobId, ...) |
batchScrapeUrlsAndWatch(...) |
watcher(jobId, ...) |
Core Document Types
| v1 | v2 |
|---|---|
FirecrawlDocument |
Document |
FirecrawlDocumentMetadata |
DocumentMetadata |
Scrape, Search, and Map Types
| v1 | v2 |
|---|---|
ScrapeParams |
ScrapeOptions |
ScrapeResponse |
Document |
SearchParams |
SearchRequest |
SearchResponse |
SearchData |
MapParams |
MapOptions |
MapResponse |
MapData |
Crawl Types
| v1 | v2 |
|---|---|
CrawlParams |
CrawlOptions |
CrawlStatusResponse |
CrawlJob |
Batch Operations
| v1 | v2 |
|---|---|
BatchScrapeStatusResponse |
BatchScrapeJob |
Action Types
| v1 | v2 |
|---|---|
Action |
ActionOption |
Error Types
| v1 | v2 |
|---|---|
FirecrawlError |
SdkError |
ErrorResponse |
ErrorDetails |
Scrape, Search, and Map
| v1 | v2 |
|---|---|
scrape_url(...) |
scrape(...) |
search(...) |
search(...) |
map_url(...) |
map(...) |
Crawling
| v1 | v2 |
|---|---|
crawl_url(...) |
crawl(...) (waiter) |
async_crawl_url(...) |
start_crawl(...) |
check_crawl_status(...) |
get_crawl_status(...) |
cancel_crawl(...) |
cancel_crawl(...) |
Batch Scraping
| 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(...) |
Extraction
| v1 | v2 |
|---|---|
extract(...) |
extract(...) |
start_extract(...) |
start_extract(...) |
get_extract_status(...) |
get_extract_status(...) |
Other / Removed
| v1 | v2 |
|---|---|
generate_llms_text(...) |
(not in v2 SDK) |
get_generate_llms_text_status(...) |
(not in v2 SDK) |
watch_crawl(...) |
watcher(job_id, ...) |
AsyncFirecrawl mirrors the same methods (all awaitable)."markdown", "html", "rawHtml", "links", "summary".parsePDF use parsers: [ { "type": "pdf" } | "pdf" ]. curl -X POST https://api.firecrawl.dev/v2/scrape \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
"url": "https://docs.firecrawl.dev/",
"formats": [{
"type": "json",
"prompt": "Extract the company mission from the page."
}]
}'
curl -X POST https://api.firecrawl.dev/v2/scrape \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
"url": "https://docs.firecrawl.dev/",
"formats": [{
"type": "screenshot",
"fullPage": true,
"quality": 80,
"viewport": { "width": 1280, "height": 800 }
}]
}'
| v1 | v2 |
|---|---|
allowBackwardCrawling |
(removed) use crawlEntireDomain |
maxDepth |
(removed) use maxDiscoveryDepth |
ignoreSitemap (bool) |
sitemap (e.g., "only", "skip", or "include") |
| (none) | prompt |
See crawl params preview examples:
curl -X POST https://api.firecrawl.dev/v2/crawl-params-preview \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
"url": "https://docs.firecrawl.dev",
"prompt": "Extract docs and blog"
}'
crawl:<id>:visited size in Redis by 16x by @mogery in https://github.com/firecrawl/firecrawl/pull/1936maxAge: 0 explicit in Index tests by @mogery in https://github.com/firecrawl/firecrawl/pull/1946Full Changelog: https://github.com/firecrawl/firecrawl/compare/v1.15.0...v2.0.0
Nothing published for this version
Release Go SDK apps/go-sdk/v1.16.0
Release Go SDK apps/go-sdk/v1.16.0
Release Go SDK apps/go-sdk/v1.15.0
Release Go SDK apps/go-sdk/v1.15.0
scrapeURL and HTML transformercreated_at field in /crawl/active responsefilterLinks ported to RustscrapeURL index bug & waitFor exclusionparsePDF=falsecrawl-status resilience for ejected jobsFull Changelog: https://github.com/mendableai/firecrawl/compare/v1.14.0...v1.15.0
We're excited to announce the release of Firecrawl v1.15.0, packed with tons of improvements, bug fixes and enterprise features.
SSO for enterprise
Improved scraping reliability
Search params added to activity logs
FireGEO example (Open Source FireGEO). See repo
And over 50 PRs merged for bug & improvements 🔥
Read the full changelog here
Jul 4, 2025
Nothing published for this version
Release Go SDK apps/go-sdk/v1.14.0
Release Go SDK apps/go-sdk/v1.14.0
We're excited to announce the release of Firecrawl v1.14.0, packed with cool updates.
Full Changelog: https://github.com/mendableai/firecrawl/compare/v1.13.0...v1.14.0
We're excited to announce the release of Firecrawl v1.14.0, packed with cool updates.
Authenticated scraping (Join the waitlist here )
Zero data retention for enterprise (Email us at help@firecrawl.com to enable it)
Improved p75 speeds
New MCP version w/ maxAge + better tool calling
Open Researcher Example (Open Source Researcher). See repo
And so much more. Check out here for all the details 🔥
Jun 27, 2025
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Added AU, FR, DE to Stealth Mode
scrapeURL via safeFetchparsePDF support in Python & JS SDKspdf, credits scope, ignoreInvalidURLs bugsFull Changelog: https://github.com/mendableai/firecrawl/compare/v1.12.0...v1.13.0
We're excited to announce the release of Firecrawl v1.13.0, packed with awesome features.
Added AU, FR, DE to Enhanced Mode
Crawl subdomains with allowSubdomains
Google slides scraping
Generate a PDF of the current page. See docs
Higher res screenshots with quality param
Weekly view for usage on the dashboard
Fireplexity Example (Open Source Perplexity). See repo
And more!
Jun 20, 2025
Release Go SDK apps/go-sdk/v1.12.0
Release Go SDK apps/go-sdk/v1.12.0
P.S. Have feedback or ideas for v1.13.0? Hit reply and let us know. We're always listening to our community to build the features you need most.
maxConcurrency parameter (FIR-2191) by @mogery in https://github.com/mendableai/firecrawl/pull/1643Full Changelog: https://github.com/mendableai/firecrawl/compare/v1.11.0...v1.12.0
We're excited to announce the release of Firecrawl v1.12.0, packed with new features.
New Concurrency System - Specify max concurrency by request in crawl and batch scrape for better control. See docs .
Crawl Entire Domain Param - Follow internal links to sibling or parent URLs, not just child paths (prev. allowBackwardLinks). See docs .
Google Docs Scraping - We now officially support scraping Google Docs files
Improved Activity Logs - Better support for FIRE-1 requests. See your logs here.
/search Playground Enhanced - Location Params added. Check out the playground.
Plus tons of performance improvements and bug fixes.
Jun 13, 2025
Nothing published for this version
Speed up scrapes 5x if opted in
GET /crawl/ongoing endpointintegration field to jobs and propagated through queue workermuqueryIndexAtSplitLevel to RPCcredits_billed field across pipelinecallWebhook and added loggingPLAYWRIGHT_MICROSERVICE_URL in env exampleFull Changelog: https://github.com/mendableai/firecrawl/compare/v1.10.0...v1.11.0
Full Changelog: https://github.com/mendableai/firecrawl/compare/v1.10.0...v1.11.0
We're excited to announce the release of Firecrawl v1.11.0, packed with major performance improvements and new features.
Major Updates:
Firecrawl Index : 500% faster scraping speeds when opted in. See docs for more details.
Enhanced Activity Logs :
View webhook events
See and manage active crawls
Fire Enrich Example : New open-source Clay integration. Open Source repository here .
Community Java SDK : Expanding our SDK support. View repository .
And many more improvements!
Jun 3, 2025
Nothing published for this version
Nothing published for this version
We’re excited to announce the launch of our new Search API endpoint that combines web search with Firecrawl’s powerful scraping capabilities.
We’re excited to announce the launch of our new Search API endpoint that combines web search with Firecrawl’s powerful scraping capabilities.
scrapeURL, js-sdk) #1551, #1602scrapeURL/pdf #1570, #1604, #1592ignoreBlockedURLs, ignore concurrency limit #1580, #1617/cclog endpoint for concurrency logging #1589itemprop attributes #1624LLMs.txt + bypass option #1557og:locale:alternate, adblock toggle, Playwright-only logic, malformed metadata arrays #1597, #1616, #1574/scrape calls on worker side with stricter timeout enforcement (FIR-2162) by @mogery in https://github.com/mendableai/firecrawl/pull/1607Full Changelog: https://github.com/mendableai/firecrawl/compare/v1.9.0...v.10.0
Fixed support for LLM Providers
Self-Host Improvements
MCP Improvements (v1.11.0)
SDK & API Enhancements
Performance & Limits
Fixes & Stability
Dashboard (Cloud version)
Full Changelog: https://github.com/mendableai/firecrawl/compare/v1.8.0...v1.9.0
For the final day of Launch Week III, we’re rolling out new and updated integrations that make it easier to connect Firecrawl to the tools and platfor
For the final day of Launch Week III, we’re rolling out new and updated integrations that make it easier to connect Firecrawl to the tools and platforms you already use.
From automation platforms to AI pipelines, Firecrawl now integrates with 20+ services, giving you a faster path from web data to workflow execution.
More integrations are on the way — and if there’s one you’re missing, we’d love to hear about it.
Today we’re launching a major upgrade to our Firecrawl MCP server, our implementation of the Model Context Protocol for LLM-connected scraping workflows.
This release brings FIRE-1 agent support to the MCP, letting you unlock data hidden behind interaction barriers like logins and buttons — all via scrape and extract endpoints.
We’re also introducing Server-Sent Events (SSE) support for local use, making setup and real-time integration easier than ever.
These updates make it simpler to stream web data into LLM pipelines, with intelligent agents handling the heavy lifting.
Today is all about developers. We’re rolling out upgrades that make building with Firecrawl smoother and more scalable — whether you’re working in Python, Rust, or your favorite editor.
We’ve introduced a fully async Python SDK with named params and return types, powerful new features in the Rust SDK, expanded team support on every plan, and a brand new Firecrawl Dark Theme for VSCode and compatible editors.
Today we’re announcing http://llmstxt.new — the fastest way to turn any website into a clean, consolidated text file for LLMs.
Just add llmstxt.new/ in front of any URL, and you’ll get back a plain .txt file, optimized for AI training and inference. No boilerplate, no noise — just useful content.
Built on top of Firecrawl, this tool makes it effortless to prepare real-world web content for use in LLM pipelines.
llmstxt.new/ before any URL.llms.txt for concise summaries, llms-full.txt for full content.http://llmstxt.new/{YOUR_URL} or with a Firecrawl API key for full output.Today we’re launching /extract v2, a major upgrade to our extraction system — powered by the FIRE-1 agent.
With full support for pagination, multi-step flows, and dynamic interactions, extract v2 goes way beyond what we shipped back in January. It’s also now possible to extract data without a URL, using a built-in search layer to find the content you’re after.
We’ve rebuilt the internals from the ground up — improved models, better architecture, and significantly better performance across our internal benchmarks.
Meet FIRE-1, Firecrawl's first AI Agent built to take web scraping to the next level. With intelligent navigation and interaction capabilities, FIRE-1 can go far beyond traditional scraping methods.
From handling pagination to interacting with dynamic site elements like buttons and links, FIRE-1 allows for powerful, context-aware scraping and extraction workflows.
Change tracking is a powerful feature that allows you to monitor and detect changes in web content over time. It is available in both the JavaScript and Python SDKs.
Using the changeTracking format, you can effectively monitor changes on a website and receive comprehensive information about the timestamp of the previous scrape, the result of the comparison between the two page versions, and the visibility of the current page/URL.
We're excited to release our official Firecrawl Editor Theme! Available now for most editors including Cursor, Windsurf, and more.
The Firecrawl Editor Theme provides a clean, focused coding experience for everyone. Our color palette emphasizes readability while maintaining the Firecrawl brand identity.
You can download the editor theme on the VS Code Marketplace here.
_async_monitor_job_status in AsyncFirecrawlApp by @jmbledsoe in https://github.com/mendableai/firecrawl/pull/1498Full Changelog: https://github.com/mendableai/firecrawl/compare/v1.7.0...v1.8.0
Nothing published for this version
Deep Research Open Alpha: Structured outputs + customizability.
maxDiscoveryDepth option added.llmExtract.Full Changelog: https://github.com/mendableai/firecrawl/compare/v1.6.0...v1.7.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
The /llmstxt endpoint allows you to transform any website into clean, LLM-ready text files. Simply provide a URL, and Firecrawl will crawl the site an
The /llmstxt endpoint allows you to transform any website into clean, LLM-ready text files. Simply provide a URL, and Firecrawl will crawl the site and generate both llms.txt and llms-full.txt files that can be used for training or analysis with any LLM.
Docs here: https://docs.firecrawl.dev/features/alpha/llmstxt
The /deep-research endpoint enables AI-powered deep research and analysis on any topic. Simply provide a research query, and Firecrawl will autonomously explore the web, gather relevant information, and synthesize findings into comprehensive insights.
Join the waitlist here: https://www.firecrawl.dev/deep-research
Introducing the Firecrawl MCP Server. Give Cursor, Windsurf, Claude enhanced web extraction capabilities. Big thanks to @vrknetha, @cawstudios for the initial implementation!
See here: https://github.com/mendableai/firecrawl-mcp-server
Full Changelog: v1.5.0...v1.6.0
Full Changelog: https://github.com/mendableai/firecrawl/compare/v1.5.0...v1.6.0
Reworked Guide: The SELF_HOST.md and docker-compose.yaml have been updated for clarity and compatibility
SELF_HOST.md and docker-compose.yaml have been updated for clarity and compatibility/search endpoint (#1193)For the complete details, check out the full changelog.
Full Changelog: https://github.com/mendableai/firecrawl/compare/v1.4.4...v1.5.0
We’re excited to announce the release of /extract - get data from any website with just a prompt. With /extract, you can retrieve any information from
We’re excited to announce the release of /extract - get data from any website with just a prompt. With /extract, you can retrieve any information from anywhere on a website without being limited by scraping roadblocks or the typical context constraints of LLMs.
No more manual copy-pasting, broken scraping scripts, or debugging LLM calls. - it’s never been easier to enrich your data, create datasets, or power AI applications with clean, structured data from any website.
Companies are already using extract to:
Instead of spending hours manually researching, fixing broken scrapers, or piecing together data from multiple sources, simply specify what information you need and the target website, and let the Firecrawl handle the entire retrieval process.
Specifically, you can:
This versatility translates into a wide range of real-world applications—enabling you to enrich web data for just about any use case.
Curious to try /extract out for yourself? Visit our playground to try out /extract - you get 500,000 tokens for free Dive into our Extract Beta documentation for detailed technical guidance and API reference Want a no-code solution? Connect /extract to thousands of applications through our enhanced Zapier integration
That's all for now! Happy Extracting from the whole Firecrawl team 🔥
Full Changelog: https://github.com/mendableai/firecrawl/compare/v.1.3.0...v1.4.0
Nothing published for this version
feat: new snips test framework (FIR-414) by @mogery in https://github.com/mendableai/firecrawl/pull/1033
Full Changelog: https://github.com/mendableai/firecrawl/compare/v1.2.1...v.1.3.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
Indexes, Caching for /extract, Improvements by @nickscamara in https://github.com/mendableai/firecrawl/pull/1037
We have updated the /extract endpoint to now be asynchronous. When you make a request to /extract, it will return an ID that you can use to check the status of your extract job. If you are using our SDKs, there are no changes required to your code, but please make sure to update the SDKs to the latest versions as soon as possible.
For those using the API directly, we have made it backwards compatible. However, you have 10 days to update your implementation to the new asynchronous model.
For more details about the parameters, refer to the docs sent to you.
Full Changelog: https://github.com/mendableai/firecrawl/compare/v1.2.0...v1.2.1
Changelog: https://www.firecrawl.dev/changelog#/extract-changes
Your coding agent can read these notes before it upgrades. Set up the MCP server →