Not every field applies to every route — see the endpoint page and OpenAPI. Journey uses its own body (width/height/user_agent/headers/cookies/debug) rather than the full browse schema.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
respect_robots | boolean | optional | Default on. Disallow → ROBOTS_BLOCKED. |
wait_for_selector | string | optional | Wait until selector is attached after navigation. |
wait_for_selector_timeout_ms | number | optional | Default 15000. |
wait_for_selector_required | boolean | optional | Default true → SELECTOR_NOT_FOUND if missing. |
dismiss_cookie_banner | boolean | optional | Best-effort click of known CMP accept buttons (OneTrust, Cookiebot, …). No domain verify. Returns cookie_banner_* on JSON responses (headers on binary screenshot). |
device | string | optional | Preset from GET /v1/devices (overrides width/height/UA/DPR/touch). |
detect_captcha | boolean | optional | Default true on extract/inspect. Heuristics only — not a bypass. |
color_scheme | light | dark | no-preference | optional | Emulated prefers-color-scheme. |
locale | string | optional | Browser locale. |
user_agent | string | optional | Override User-Agent (ignored when device preset sets UA). |
headers | object | optional | Extra HTTP headers. |
accept_language / encoding | string | optional | Convenience headers for Accept-Language / Accept-Charset. |
block_resource_types | string[] | optional | Playwright resource types to abort (image, script, …). |
block_url_patterns | string[] | optional | URL substrings/patterns to block. |
block_ads | boolean | optional | Block common ad/tracker hosts. |
record_har | boolean | optional | Capture HAR — retrieve via POST /v1/screenshot/json. |
http_auth | object | optional | { username, password } — verified domain required. |
client_certificates | array | optional | mTLS PEM certs — verified domain required. |
Device presets
Call GET /v1/devices for the catalog, then pass a preset name instead of manual viewport + UA:
curl https://scout.macrocontent.dev/v1/devices \
-H "Authorization: Bearer sk_scout_…"{
"url": "https://example.com",
"device": "iPhone 13",
"format": "jpeg"
}Example on extract
Extract with cookie dismiss
Use dismiss_cookie_banner on third-party pages so known CMP overlays do not cover your selectors.
RequestBody
{
"url": "https://shop.example/pricing",
"dismiss_cookie_banner": true,
"wait_for_selector": "h1",
"device": "Pixel 7",
"detect_captcha": true,
"fields": [
{ "name": "headline", "selector": "h1", "type": "text" }
]
}Response200 OK
{
"status": "success",
"data": { "headline": "Pricing" },
"cookie_banner_detected": true,
"cookie_banner_dismissed": true,
"cookie_banner_vendor": "cookiebot",
"captcha_detected": false
} This is not free interact. Scout only clicks a fixed vendor allowlist (OneTrust, Cookiebot, Usercentrics, …). Custom selectors still need a verified domain.
Auth & certificates
http_auth and client_certificates require a verified domain for the target host (or an internal key).