# POST /scrape (Firecrawl API)
Base URL: https://api.firecrawl.dev/v1
Auth: Authorization: Bearer <FIRECRAWL_API_KEY>
Last verified: 2026-09-03

> Scrape a single URL and optionally extract information using an LLM

## 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/scrape' \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{"url":"https://example.com","formats":["markdown"]}'

## Parameters
| Name | In | Type | Required | Description |
| :--- | :--- | :--- | :--- | :--- |
| url | body | string | Yes | The URL to scrape |
| formats | body | string[] | No | Formats to include in the output. `ra... |
| onlyMainContent | body | boolean | No | Only return the main content of the p... |

## Response (200 OK)
{"success":true,"data":{"markdown":"string","html":"string"}}

---
Need an API key? Get one at https://www.firecrawl.dev/signin/signup