Welcome to the Firecrawl API reference documentation. Firecrawl is an API service that scrapes, crawls, and extracts structured data from any website, providing LLM-ready output for AI applications.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/firecrawl/firecrawl/llms.txt
Use this file to discover all available pages before exploring further.
Base URL
All API requests should be made to:Authentication
Firecrawl uses Bearer token authentication. Include your API key in theAuthorization header of every request:
Getting Your API Key
- Sign up at firecrawl.dev
- Navigate to your dashboard to obtain your API key
- Keep your API key secure and never commit it to version control
Example Request
API Endpoints
The Firecrawl API is organized around the following main capabilities:Scraping
- POST /scrape - Scrape a single URL and optionally extract information using an LLM
- POST /batch/scrape - Scrape multiple URLs in a single batch operation
- GET /batch/scrape/ - Get the status of a batch scrape job
- DELETE /batch/scrape/ - Cancel a batch scrape job
- GET /batch/scrape//errors - Get errors from a batch scrape job
Crawling
- POST /crawl - Crawl multiple URLs based on options starting from a base URL
- GET /crawl/ - Get the status of a crawl job
- DELETE /crawl/ - Cancel a crawl job
- GET /crawl//errors - Get errors from a crawl job
- GET /crawl/active - Get all active crawls for your team
Mapping
- POST /map - Discover and map all URLs on a website
Extraction
- POST /extract - Extract structured data from pages using LLMs
- GET /extract/ - Get the status of an extract job
Search
- POST /search - Search the web and optionally scrape search results
Research
- POST /deep-research - Start a deep research operation on a query
- GET /deep-research/ - Get the status and results of a deep research operation
Billing
- GET /team/credit-usage - Get remaining credits for your team
- GET /team/token-usage - Get remaining tokens for your team (Extract only)
Response Format
All API responses follow a consistent structure:Success Response
Error Response
Common HTTP Status Codes
Request succeeded. The response body contains the requested data.
The request was invalid or malformed. Check your request parameters.
Authentication failed. Check that your API key is valid and properly formatted.
Your account has insufficient credits to complete this request.
The requested resource (e.g., job ID) was not found.
The request took too long to complete and timed out.
You’ve exceeded the rate limit. See Rate Limits for details.
An unexpected error occurred on the server. If this persists, contact support.
Content Type
All POST requests should include theContent-Type: application/json header, and request bodies should be valid JSON.
SDKs
While you can interact with the API directly using HTTP requests, we provide official SDKs for easier integration:- Python:
pip install firecrawl-py - Node.js:
npm install @mendable/firecrawl-js - Go: firecrawl-go
- Rust: See Rust SDK documentation
Support
If you encounter issues or have questions:- Check the documentation
- Join our Discord community
- Contact support@firecrawl.dev