Skip to documentation content
Browse documentation

Build your integration

Screenshot API parameter reference

Compare GET and POST options for screenshots, PDF, WebM video, viewport sizes, CSS selectors, delays, watermarking, and cache control.

View as Markdown

Endpoint and request methods

Use GET or POST at https://api.screenshotengine.com/v1/screenshot. GET accepts query strings. POST accepts a JSON body with Content-Type: application/json and a Bearer API key.

Parameter names are case-sensitive. GET uses snake_case for options such as block_banners; POST uses camelCase such as blockBanners. Send actual booleans and numbers in JSON.

Capture options

Only url is required in the POST body. GET also requires api_key. The table lists the default behavior when an option is omitted.

Capture options
POST fieldGET parameterValues and behavior
urlurlRequired. An absolute, publicly reachable HTTP or HTTPS URL.
outputoutputimage (default), pdf, or scrolling_video.
formatformatjpeg (default), png, or webp. Controls image output only.
widthwidth1280 by default. GET validates 100–3840 pixels; use this range for POST too.
heightheight720 by default. A viewport height or "full" for full-page capture. GET validates numeric heights of 100–10000 pixels.
blockBannersblock_bannersfalse by default. Set true to attempt cookie banner and consent-dialog removal.
darkModedark_modefalse by default. Set true to request the target website’s dark color scheme.
viewportDeviceviewport_deviceOptional preset name from the list below. Overrides viewport width and height.
selectorselectorOptional CSS selector, at most 200 characters. Captures the first matching element for an image.
waitForwait_forOptional delay after page load, in milliseconds. Use 0–30000. GET rejects values outside this range; the engine skips out-of-range POST delays.
cachePolicyNot availabledefault or no-cache. POST only. no-cache bypasses cache reads and writes.
watermarkNot availablePOST-only object for image watermarks. See fields below.
pdfSettings.paperSizepdf_paper_sizeA4 (default), Letter, Legal, Tabloid, A3, or A5. Only for output=pdf.
pdfSettings.orientationpdf_orientationportrait (default) or landscape. Only for output=pdf.

Available viewport presets

Presets set the browser viewport dimensions. They do not emulate a physical device’s browser, touch input, user agent, or pixel density. To capture a full page at a specific mobile width, send width and height: "full" without a preset.

Available viewport presets
PresetWidth × height (CSS pixels)
desktop-1080p1920 × 1080
desktop-720p1280 × 720
desktop-4k3840 × 2160
macbook-pro-161728 × 1117
macbook-pro-141512 × 982
macbook-air-131470 × 956
iphone-15-pro-max430 × 932
iphone-15-pro393 × 852
iphone-15393 × 852
iphone-14390 × 844
iphone-se375 × 667
ipad-pro-12.91024 × 1366
ipad-pro-11834 × 1194
ipad-air820 × 1180
ipad-mini768 × 1024
pixel-8-pro448 × 998
pixel-8412 × 915
samsung-galaxy-s24360 × 780
samsung-galaxy-s24-ultra412 × 915
samsung-galaxy-tab-s9800 × 1280

Watermark object

Use watermark with image output. Do not combine it with PDF or scrolling video. Set text to a string of 1–100 characters.

Watermark object
FieldDefaultAccepted values
textRequired1–100 characters
positionbottom-righttop-left, top-middle, top-right, middle-left, center, middle-right, bottom-left, bottom-center, bottom-right
textColorWhiteWhite, Black, Red, Blue (case-sensitive)
backgroundColorBlackWhite, Black, Red, Blue (case-sensitive)

Response content types

Successful requests return HTTP 200 and raw file bytes. Read Content-Type to identify the result; do not call response.json() on a successful capture.

Response content types
OutputContent-TypeExtension
JPEG imageimage/jpeg.jpg
PNG imageimage/png.png
WebP imageimage/webp.webp
PDF documentapplication/pdf.pdf
Scrolling videovideo/webm.webm