Screenshot (POST)
https://api.deepinfo.com/v1/lookup/screenshotSame as Screenshot, with the options in a JSON body instead of the query string. Use it when a value is too long for a URL, such as custom_html. The response is the same.
Authentication
Send your API key in the apikey request header.
Request Body
| Parameter | Type | Description |
|---|---|---|
url | string | Required. Web page to capture, e.g. https://www.deepinfo.com. It can be left out only when custom_html is sent. |
width | integer | Browser viewport width, in pixels. Range 100–3000. Default 1366. |
height | integer | Browser viewport height, in pixels. Range 100–3000. Default 768. |
full_ | boolean | Capture the whole page, not only the visible viewport. Default false. |
mobile | boolean | Emulate a mobile device. The viewport then defaults to 360 × 740. Default false. |
landscape | boolean | Emulate landscape orientation. Default false. |
touchscreen | boolean | Emulate a touch screen. Default false. |
retina | boolean | Render at twice the pixel density for a sharper image. Ignored when scale is set. Default false. |
scale | number | Device pixel ratio: how many screen pixels draw one CSS pixel. Range 0.5–4. |
image_ | jpeg | png | Image format. Default jpeg. |
quality | integer | JPEG quality. Used only when image_output is jpeg. Range 0–100. |
thumbnail_ | integer | Resize the image to this width, keeping the aspect ratio. Must not be larger than the screenshot width. Minimum 50. |
mode | fast | slow | fast captures as soon as the HTML document has loaded (domcontentloaded); slow waits until network activity stops. Default fast. |
timeout | integer | Maximum time to wait for the page to load, in milliseconds. Range 0–90000. Default 30000. |
delay | integer | Extra wait after the page has loaded, in milliseconds, before the screenshot is taken. Maximum 30000. Default 0. |
lazy_ | boolean | Scroll through the whole page first, so that lazy-loaded images are rendered. Default false. |
block_ | boolean | Block advertisements. Default false. |
no_ | boolean | Hide cookie consent banners. Default false. |
no_ | boolean | Disable JavaScript on the page. Default false. |
selector | string | CSS selector of one element, e.g. body > .container > .logo. When it matches, only that element is captured. |
scroll_ | string | CSS selector of an element to scroll to before the screenshot, e.g. body > .footer. |
accept_ | string | Browser Accept-Language value. Default en-US. |
latitude | number | Latitude reported by the browser's Geolocation API. Requires longitude. Range -80–80. |
longitude | number | Longitude reported by the browser's Geolocation API. Requires latitude. Range -180–180. |
user_ | string | Browser user agent string. |
cookies | string | Cookies to set in the browser, e.g. name1=value1; name2=value2. |
headers | string | Extra request headers, e.g. Header-1:value1; Header-2:value2. |
css | string | CSS code to inject into the page, e.g. h1 { color: red }. |
css_ | string | URL of a stylesheet to inject into the page. |
custom_ | string | HTML to render instead of loading url. |
proxy | string | Proxy to load the page through, in the form user:password@host:port. |
{
"url": "https://www.deepinfo.com",
"width": 1366,
"height": 768,
"full_page": false
}
Response Fields
| Field | Description |
|---|---|
url | The requested URL |
redirected_ | The URL the browser ended up on after redirects |
screenshot_ | Link to the image (JPEG, or PNG with image_output=png). It is a signed link that expires after 7 days: download the image if you need to keep it |
connection_ | success when the page was loaded |
check_ | When the screenshot was taken (UTC) |
Response Schema
Inferred from examples Built from the saved 2xx example response: the fields it contains, with the types seen there. It is not a contract.
| Field | Type | Example |
|---|---|---|
url | string | "https://www.deepinfo.com" |
redirected_url | string | "https://www.deepinfo.com/" |
check_date | string | "2026-09-23T14:45:06.078Z" |
connection_status | string | "success" |
screenshot_url | string | "https://diss-999.storage.googleapis…" |
Errors
400 (10400) if url is missing or invalid (and no custom_html is sent), or an option is out of range. The validation error currently names the parameter domain, although the request parameter is url (see the example). 500 for an unexpected error. 503 means the service is busy or out of memory: retry shortly. See Getting Started → Errors.
Examples
Saved examples from the Deepinfo API. Selecting one loads it into the request and response panels.