Skip to documentation
Browse documentation

Crawl site

Run a bounded breadth-first crawl across same-site pages and public files with robots rules, explicit scope patterns, controlled concurrency, stateless continuation, source-completeness reconciliation, and optional non-destructive AI relevance ranking.

Capability ID web.site.crawl
Maximum runtime 120 seconds
View raw

POST /execute Shared execution endpoint

Input parameters

accept_statuses array<integer> optional
ai string optional

Optional non-destructive relevance ranking for discovered documents. Every deterministic candidate remains in the result; auto leaves candidates unranked if AI is unavailable, while always requires ranking to succeed. Allowed values: `never`, `auto`, `always`. Default: `never`.

Available values neverautoalways
allow_browser_fallback boolean optional

Default: `false`.

allow_truncated boolean optional

Default: `false`.

concurrency integer optional

From 1 to 16. Default: `4`.

Example 2
continuation_token string optional

Opaque stateless frontier returned by a preceding crawl slice with the same options. A transiently failed URL is retained for at most one bounded retry; permanent failures are not amplified.

delay_ms integer optional

From 0 to 5000. Default: `0`.

detail string optional

Allowed values: `summary`, `standard`, `full`. Default: `standard`.

Example standard
Available values summarystandardfull
document object optional
document.chunk_chars integer optional

From 500 to 20000.

document.continuation_token string optional
document.ocr string optional

Allowed values: `auto`, `never`, `always`. Default: `auto`.

Available values autoneveralways
document.outputs array<string> optional

Requested document outputs. source returns the originally captured bytes: inline through 5.5 MB, otherwise through a hash-verified durable store, and fails if neither delivery path is available. When source is omitted, remote_source is provenance only and contains no bytes. Allowed values: `structured`, `text`, `markdown`, `source`.

Available values structuredtextmarkdownsource
document.page_end integer optional

From 1 to 1000000.

document.page_start integer optional

From 1 to 1000000.

exclude_patterns array<string> optional
include_patterns array<string> optional
include_subdomains boolean optional

When false, only the seed host is allowed. When true, hosts are still limited to the seed's registrable domain; unrelated hosts are never added. Default: `false`.

instructions string optional

Required when ai is auto or always. Describe which documents/files are relevant. Ranking is non-destructive: every deterministic candidate remains in the result.

max_body_bytes integer optional

From 1 to 104857600.

max_depth integer optional

From 1 to 10. Default: `2`.

Example 2
max_pages integer optional

Maximum number of result pages to fetch. From 1 to 100. Default: `10`.

Example 5
max_total_bytes integer optional

From 1 to 104857600.

respect_robots boolean optional

Default: `true`.

url string required

Public http(s) site URL to crawl.

Example https://example.com/

Response

Successful output is returned in results[0].data.

Raw platform output is intentionally open-ended and may evolve with the upstream source.

Illustrative sample The example response is shown in the response panel.

Illustrative output fields

Values illustrate one response. Read the guidance above for missing values and limits; fields can vary with the requested operation and the data available.

PathObserved typeExample
files array 0 items
final_url string https://example.com/
pages array 1 items
pages array 1 items
stats object 26 fields
stats.ai_attempts integer 0
stats.ai_completion_tokens integer 0
stats.ai_mode string never
stats.ai_prompt_tokens integer 0
stats.ai_ranking_mode string non_destructive
stats.ai_rejected_files integer 0
stats.ai_relevant_files integer 0
stats.ai_uncertain_files integer 0
stats.ai_unselected_files integer 0
stats.ai_used boolean false
stats.concurrency integer 2
stats.crawled_pages integer 1
stats.effective_delay_ms integer 0
stats.elapsed_ms integer 2203
stats.estimated_result_bytes integer 1151
stats.failed_pages integer 0
stats.files_before_compaction integer 0
stats.files_found integer 0
stats.files_omitted_by_compaction integer 0
stats.files_returned integer 0
stats.frontier_dropped integer 0
stats.max_depth integer 2
stats.remaining_frontier integer 0
stats.response_compacted boolean false
stats.returned_pages integer 1
stats.robots_applied boolean true
url string https://example.com/
warnings array 0 items

Execution behavior

A 200 response completed inline. A 202 response was queued; poll GET /jobs/:id until the job reaches completed or failed.