apicheats.dev firecrawl/llms.txt Raw .md
POST

/extract

Firecrawl API

Extract structured data from pages using LLMs

Base URL
https://api.firecrawl.dev/v1
Auth
Authorization: Bearer <FIRECRAWL_API_KEY>
Last verified
2026-09-03 · upstream hash matched
Actions
Agents: curl -H "Accept: text/markdown" this URL
→ 223 tokens · Vary: Accept

Critical gotchas

The formats field controls the output shape and defaults to ["markdown"]. Omitting it does not return HTML — request ["markdown","html"] explicitly.

/crawl is asynchronous: it returns a job id, and results are collected by polling /crawl/{id} until status is completed.

cURL

curl -X POST 'https://api.firecrawl.dev/v1/extract' \  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \  -H 'Content-Type: application/json' \  -d '{  "urls": [    "https://example.com"  ],  "prompt": "string",  "schema": {},  "enableWebSearch": false,  "ignoreSitemap": false,  "includeSubdomains": true,  "showSources": false,  "scrapeOptions": {    "formats": [      "markdown"    ],    "onlyMainContent": true,    "includeTags": [      "string"    ],    "excludeTags": [      "string"    ],    "maxAge": 0,    "headers": {},    "waitFor": 0,    "mobile": false,    "skipTlsVerification": false,    "timeout": 30000,    "parsePDF": true,    "jsonOptions": {      "schema": {},      "systemPrompt": "string",      "prompt": "string"    },    "actions": [      {        "type": "wait",        "milliseconds": 0,        "selector": "#my-element"      }    ],    "location": {      "country": "US",      "languages": [        "en-US"      ]    },    "removeBase64Images": true,    "blockAds": true,    "proxy": "basic",    "changeTrackingOptions": {      "modes": [        "git-diff"      ],      "schema": {},      "prompt": "string",      "tag": null    },    "storeInCache": true  },  "ignoreInvalidURLs": false}'
Get a free Firecrawl API key → sponsored

Parameters

Name In Type Required Description
urls body string[] Yes Request body field urls.
prompt body string No Prompt to guide the extraction process
schema body object No Schema to define the structure of the extracted data. Must conform to [JSON Schema](https://json-schema.org/).
enableWebSearch body boolean No When true, the extraction will use web search to find additional data
ignoreSitemap body boolean No When true, sitemap.xml files will be ignored during website scanning
includeSubdomains body boolean No When true, subdomains of the provided URLs will also be scanned
showSources body boolean No When true, the sources used to extract the data will be included in the response as `sources` key
scrapeOptions body object No Request body field scrapeOptions.
ignoreInvalidURLs body boolean No If invalid URLs are specified in the urls array, they will be ignored. Instead of them failing the entire request, an extract using the remaining valid URLs will be performed, and the invalid URLs will be returned in the invalidURLs field of the response.

Response 200 OK

{
  "success": true,
  "id": "string",
  "invalidURLs": [
    "string"
  ]
}