Skip to main content
A crawl’s id, from the first frame of its stream, is what every call on this page needs: crawl.id in TypeScript, crawl.job["id"] in Python once the first frame has arrived. Store it before you need it, especially if the connection that started the crawl might drop.

Status

Status, pages discovered, pages completed, spend so far, and the per-URL failures. Safe to poll, it is a row read and not a browser.

Results

The pages a crawl has delivered, oldest first, paginated with a cursor. Pages land during the crawl, so this answers before the crawl has finished, and a cancelled crawl still delivers what it had already fetched.

Cancel

Stops a crawl. It settles with the pages already reached. Pages already fetched stay billed, the limit you set on submit is the spending protection, not a refund argued afterward.
If the connection that started a streaming crawl drops, the crawl itself is cancelled. These three calls are how you read the pages you already paid for afterward.