Capture Page
Capture one public webpage or content URL with fail-closed HTTP, truncation and OCR semantics, physical-attempt evidence, and optional exact-source, single-HTML or ZIP artifacts.
web.page.capture
/execute
Shared execution endpoint
Input parameters
accept_statuses
array<integer>
optional
Non-2xx upstream statuses the caller explicitly accepts for inspection. Their parser quality remains failed.
allow_browser_fallback
boolean
optional
Allow browser fallback supplied for this request.
allow_truncated
boolean
optional
Allow truncated supplied for this request.
archive
object
optional
Optional offline HTML or ZIP artifacts created from the same capture. Scripts default off.
archive.delivery
string
optional
Small archives stay inline. Requests above inline budgets or delivery=hosted are stored and returned through a signed download URL.
archive.formats
array<string>
optional
Formats supplied for this request.
archive.include_scripts
boolean
optional
Include scripts supplied for this request.
archive.max_asset_bytes
integer
optional
Max asset bytes supplied for this request.
archive.max_total_asset_bytes
integer
optional
Max total asset bytes supplied for this request.
detail
string
optional
How much of the artifact graph to return. summary keeps identity, trace, status, counts, and compact text. standard omits raw HTML, the per-element dump, and parsed data values. full returns the complete captured and parsed graph.
document
object
optional
Optional document processing controls. Ignored for ordinary HTML pages.
document.chunk_chars
integer
optional
Approximate maximum characters per grounded search/AI chunk.
document.continuation_token
string
optional
Stable token returned by parsed.continuation. It resumes at the interrupted or next unprocessed page.
document.ocr
string
optional
auto and always require terminal OCR closure; if no OCR processor is available the request fails instead of returning empty successful content.
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 path can deliver them. When source is omitted, remote_source is provenance only and contains no bytes.
document.page_end
integer
optional
Last PDF page to process. Omit to continue through the bounded document limit.
document.page_start
integer
optional
First PDF page to process. Defaults to 1.
max_body_bytes
integer
optional
Decoded response-body ceiling. HTML is capped at 8,000,000 bytes; file captures at 104,857,600 bytes.
max_total_bytes
integer
optional
Aggregate bytes across redirect responses and the final response.
url
string
required
Public http(s) webpage or content URL to capture. Supported content parsers include text, Markdown, JSON, JSONL, CSV, TSV, XML, RSS, Atom, XLSX, and native-text PDF.
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 output fields
Derived from the sample above for orientation only. These observed fields are not a fixed response schema.
| Path | Observed type | Example |
|---|---|---|
artifacts |
object |
2 fields |
artifacts.capture_version |
string |
universal-capture-2026-08-23-v3 |
artifacts.detail |
string |
full |
capture_backend |
string |
http |
content_type |
string |
text/html |
dom |
object |
7 fields |
dom.element_count |
integer |
12 |
dom.html |
string |
<!doctype html><html lang="en"><head><title>Example Domain</title><link… |
dom.html_bytes |
integer |
559 |
dom.html_sha256 |
string |
[redacted:token] |
dom.rendered |
boolean |
false |
dom.source_backend |
string |
http |
dom.truncated |
boolean |
false |
elements |
array |
3 items |
elements |
array |
3 items |
files |
array |
0 items |
final_url |
string |
https://example.com/ |
forms |
null |
null |
headers |
object |
9 fields |
headers.Age |
array |
1 items |
headers.Allow |
array |
1 items |
headers.Cf-Cache-Status |
array |
1 items |
headers.Cf-Ray |
array |
1 items |
headers.Content-Encoding |
array |
1 items |
headers.Content-Type |
array |
1 items |
headers.Date |
array |
1 items |
headers.Last-Modified |
array |
1 items |
headers.Server |
array |
1 items |
iframes |
null |
null |
images |
array |
0 items |
links |
array |
1 items |
links |
array |
1 items |
media |
null |
null |
page |
object |
8 fields |
page.canonical_url |
string |
|
page.description |
string |
|
page.lang |
string |
en |
page.meta |
object |
1 fields |
page.open_graph |
object |
0 fields |
page.robots |
string |
|
page.title |
string |
Example Domain |
page.twitter |
object |
0 fields |
parsed |
object |
15 fields |
parsed.artifacts |
array |
0 items |
parsed.chunks |
array |
0 items |
parsed.form_fields |
array |
0 items |
parsed.links |
array |
0 items |
parsed.metadata |
object |
3 fields |
parsed.pages |
array |
0 items |
parsed.parser |
string |
html_dom |
parsed.parser_version |
string |
universal-content-2026-08-23-v4 |
parsed.quality |
object |
3 fields |
parsed.segments |
array |
3 items |
parsed.stats |
object |
3 fields |
parsed.status |
string |
parsed |
parsed.tables |
array |
0 items |
parsed.text |
string |
Example Domain Example Domain This domain is for use in documentation e… |
parsed.warnings |
array |
0 items |
resources |
array |
1 items |
resources |
array |
1 items |
stats |
object |
24 fields |
stats.capture_backend |
string |
http |
stats.capture_version |
string |
universal-capture-2026-08-23-v3 |
stats.detail |
string |
full |
stats.element_count |
integer |
12 |
stats.estimated_result_bytes |
integer |
8987 |
stats.fetch_ms |
integer |
1426 |
stats.file_count |
integer |
0 |
stats.form_count |
integer |
0 |
stats.html_bytes |
integer |
559 |
stats.iframe_count |
integer |
0 |
stats.image_count |
integer |
0 |
stats.jsonld_count |
integer |
0 |
stats.link_count |
integer |
1 |
stats.media_count |
integer |
0 |
stats.parsed_parser |
string |
html_dom |
stats.parsed_status |
string |
parsed |
stats.requested_detail |
string |
full |
stats.resource_count |
integer |
1 |
stats.response_compacted |
boolean |
false |
Execution behavior
A 200 response completed inline. A 202 response was queued; poll
GET /jobs/:id until the job reaches completed or
failed.