Are you an AI agent that needs a Firecrawl API key? See firecrawl.dev/agent-onboarding/SKILL.md for automated onboarding instructions.
Get Crawl Status
1 min read
get/crawl/{id}
Request example
Response
get/crawl/{id}
Authorization
Path parameters
The ID of the crawl job
Responses
application/json
Successful response
The current status of the crawl. Can be
scraping, completed, or failed.The total number of pages that were attempted to be crawled.
The number of pages that have been successfully crawled.
The number of credits used for the crawl.
The date and time when the crawl will expire.
The date and time when the crawl was started.
The date and time when the crawl finished. Present only when the crawl is in a terminal state (
completed, failed, or cancelled).Crawl duration in seconds. For terminal crawls, this is the elapsed time from
createdAt to completedAt. For in-progress crawls, it is the elapsed time from createdAt to now.The URL to retrieve the next 10MB of data. Returned if the crawl is not completed or if the response is larger than 10MB.
The data of the crawl.
Show child attributesHide child attributes
Physical per-page markdown for PDFs. Present only when the request set the
pages PDF parser option.Per-page typed layout blocks for PDFs. Present only when the request set the
blocks PDF parser option.Show child attributesHide child attributes
1-based physical PDF page number.
Page render width in px — the anchor for denormalizing bbox coordinates. Null for pages that never rendered.
Page render height in px. Null for pages that never rendered.
Page-level rollup: ok | partial | failed.
Show child attributesHide child attributes
Stable within a response: p<page>.b<index in reading order>.
Block type: title, section_header, text, table, formula, figure, caption, page_number, page_header, page_footer. New types may appear over time.
Raw layout-model label, passthrough for forward compatibility.
[x0, y0, x1, y1] normalized 0-1 relative to the page width/height. Multiply by the page width/height to get pixel coordinates. Null when the page has no known dimensions.
Items: 4–4
Markdown fragment this block contributed to the document markdown.
[start, end) character offsets into the document markdown covering this block's fragment. Null when a post-processing transform rewrote the fragment.
Items: 2–2
Pipeline path that produced the block (for example native_text, layout_ocr, tsr, formula_model, full_page).
HTML version of the content on page if
includeHtml is trueRaw HTML content of the page if
includeRawHtml is trueThe Base64-encoded original HTTP response body if
rawBase64 is in formats. A bare Base64 string, not a data URI. The MIME type is in metadata.contentType.List of links on the page if
includeLinks is trueScreenshot of the page if
includeScreenshot is trueShow child attributesHide child attributes
Title extracted from the page, can be a string or array of strings
Show child attributesHide child attributes
Description extracted from the page, can be a string or array of strings
Show child attributesHide child attributes
Language extracted from the page, can be a string or array of strings
Show child attributesHide child attributes
The original URL that was requested. May differ from the page's final URL if redirects occurred.
The final URL of the page after all redirects have been followed.
Keywords extracted from the page, can be a string or array of strings
Show child attributesHide child attributes
Alternative locales for the page
The status code of the page
For PDF inputs, the number of pages parsed (capped by the parsers maxPages option).
For PDF inputs, the document's true page count before any maxPages capping. Omitted when it cannot be determined; a totalPages greater than numPages indicates the result was truncated.
The error message of the page
Whether this scrape was throttled due to team concurrency limits
Time in milliseconds the request waited in the concurrency queue. Only present when concurrencyLimited is true.

