Skip to main content
POST
Use POST /screenshot to capture a pixel-perfect PNG of any public webpage. Request a full-page capture or target a specific element with a CSS selector. The capture is performed in a real browser with randomized fingerprints and residential proxy routing so you see exactly what a real visitor sees.
string
required
Target page URL. Must be a reachable HTTP(S) URL using port 80 or 443.
object
Viewport dimensions used when rendering and capturing the page.
boolean
Whether to capture the full scrollable page. Defaults to true. When selector is provided, only the matched element is captured regardless of this value.
string
CSS selector for the element to capture. Only the first matching element is screenshotted. Returns 422 CONTENT_SELECTOR_NOT_FOUND if the selector is not found on the page.
string
Navigation event to wait for before capturing. Defaults to "load".
number
Maximum time to wait for the task to complete, in milliseconds. Must be a positive integer no greater than 3,600,000. Values outside this range fall back to the server default.
string
Browser locale, for example "en-US" or "zh-CN". Affects navigator.language and Accept-Language headers.
string
IANA timezone identifier, for example "Asia/Shanghai" or "America/New_York".
object
Geolocation coordinates exposed to the page via the Geolocation API.
object
Custom proxy configuration. Cannot be combined with countryCode. Provide either server or the split form (protocol + host + port). Credentials must not be embedded in server.
string
Managed residential proxy region. Cannot be combined with proxy.
  • "GLOBAL": dynamic exit from 15 popular regions.
  • Two-letter country code (e.g. "US", "DE"): prefers a trusted proxy for that region with dynamic fallback.
  • Omitted: a random trusted proxy is selected automatically.
string
"random" lets the server pick a User-Agent from its library. Requests without an explicit userAgent already default to "random".
string
Operating system used when userAgentMode is "random". Accepted values: "windows" (default) or "macos".
string
Explicit User-Agent string. Overrides the random selection.
object
Browser fingerprint settings. When omitted, every signal defaults to random while keeping OS, GPU, CPU, memory, fonts, and device signals coherent.
array
Cookie list injected into the browser context before navigation. Each cookie object requires name, value, and domain.

Response

When using selector, the server waits for the element to appear before capturing it. If the element is not found within the navigation timeout, the response is 422 CONTENT_SELECTOR_NOT_FOUND.
One credit is consumed after request validation but before the task is enqueued. Request bodies are limited to 1 MiB.