crawl_start
Starts an asynchronous Cloudflare Browser Rendering crawl job and returns a job_id immediately. Poll it with crawl_status or wait for completion with crawl_and_wait.
Instructions
Start an asynchronous crawl job using Cloudflare's Browser Rendering Crawl API.
Submits a crawl job and returns a job_id immediately. Use crawl_status to poll for results, or use crawl_and_wait to block until completion.
Args: url: The starting URL to crawl (required). limit: Maximum number of pages to crawl (default: 10, max: 100000). depth: Maximum link depth to follow (default: 100000). source: URL discovery source — "all", "sitemaps", or "links" (default: "all"). formats: Output formats — any of ["html", "markdown", "json"] (default: ["html"]). Note: "json" uses Workers AI and incurs additional charges. render: Whether to execute JavaScript via headless browser (default: true). Set false for faster, unbilled static HTML fetching. max_age: Cache duration in seconds (default: 86400, max: 604800). modified_since: Unix timestamp — only crawl pages modified since this time. crawl_purposes: Declare content use — any of ["search", "ai-input", "ai-train"]. include_patterns: URL patterns to include (* = any chars except /, ** = any chars). exclude_patterns: URL patterns to exclude (takes priority over include_patterns). include_external_links: Whether to follow links to external domains. include_subdomains: Whether to follow links to subdomains. authenticate: HTTP authentication credentials for protected sites. Example: {"username": "user", "password": "pass"}. extra_http_headers: Custom HTTP headers to send with each crawl request. Example: {"X-API-Key": "abc123"}. json_options: AI-based structured data extraction config (requires "json" in formats). Keys: "prompt" (str) — extraction instruction, "response_format" (dict) — JSON schema for output, "custom_ai" (dict) — custom AI model config. cookies: Browser cookies to set during the crawl. Example: [{"name": "session", "value": "abc", "domain": "example.com"}]. goto_options: Page navigation behaviour. Keys: "waitUntil" (str) — e.g. "networkidle2", "load", "domcontentloaded"; "timeout" (int) — navigation timeout in milliseconds. wait_for_selector: Wait for a DOM element before scraping each page. Keys: "selector" (str), "timeout" (int, ms), "visible" (bool). reject_resource_types: Resource types to block to speed up crawls and reduce cost. Values: "image", "media", "font", "stylesheet", "script", etc.
Returns: {"job_id": ""} — use this ID with crawl_status or crawl_cancel.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| depth | No | ||
| limit | No | ||
| render | No | ||
| source | No | ||
| cookies | No | ||
| formats | No | ||
| max_age | No | ||
| authenticate | No | ||
| goto_options | No | ||
| json_options | No | ||
| crawl_purposes | No | ||
| modified_since | No | ||
| exclude_patterns | No | ||
| include_patterns | No | ||
| wait_for_selector | No | ||
| extra_http_headers | No | ||
| include_subdomains | No | ||
| reject_resource_types | No | ||
| include_external_links | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||