API Reference

Overview

Capture Screenshot

The Snapshot Screenshot API lets you capture website screenshots programmatically using a simple HTTP request. Provide a target URL and configure the capture to match your application's requirements, including viewport size, full-page screenshots, image format, image quality, delays, and page loading conditions. You can also capture a specific page element or crop a selected area, wait for a CSS selector before capturing, and customize the User-Agent or Accept-Language headers. For JSON responses, Snapshot can optionally extract the target page's HTML and text along with the screenshot metadata. Use this endpoint when you need automated website screenshots for testing, monitoring, documentation, reporting or other application workflows.

Endpoint

GEThttps://snapshot-api.mindiqglobal.com/api/v1/screenshot

Query Parameters

NameRequiredTypeDefaultDescription
urlYesstring-Target URL starting with http:// or https://
full_pageNobooleanfalseCapture full page height. Cannot be combined with crop or element.
formatNoenumpngpng or jpeg
widthNointeger1280Viewport width
heightNointeger720Viewport height
qualityNointeger100JPEG quality. Allowed range: 0-100.
response_typeNoenumjsonAllowed: json, image.
delayNonumber0Delay before capture in seconds. Allowed range: 0-10.
wait_untilNoenumpage_loadedAllowed: dom_loaded, page_loaded, network_idle.
wait_until_timeoutNonumber-Wait timeout in seconds. Allowed range: 1-30.
wait_forNostring-CSS selector to wait for before capture. Max wait: 15s.
cropNostring-Crop rectangle as left,top,width,height. Cannot be combined with full_page or element.
elementNostring-Capture the first matching CSS selector. Cannot be combined with full_page or crop.
thumbnail_widthNointeger-Positive integer. Aspect ratio is preserved.
user_agentNostring-Custom User-Agent value.
accept_languageNostring-Custom Accept-Language value.
extract_htmlNobooleanfalseExtract HTML and return/expose URL. Supported only with response_type=json.
extract_textNobooleanfalseExtract text and return/expose URL. Supported only with response_type=json.

Success Response

{
  "status": "success",
  "imageUrl": "https://mindiqglobal-snapshot-public-data-prod.s3.amazonaws.com/screenshot/capture.png",
  "format": "png",
  "responseType": "json",
  "extractedHtmlUrl": "https://mindiqglobal-snapshot-public-data-prod.s3.amazonaws.com/screenshot/capture.html",
  "extractedTextUrl": "https://mindiqglobal-snapshot-public-data-prod.s3.amazonaws.com/screenshot/capture.txt"
}

Response Body Parameters

NameTypeDescription
statusenumsuccess or error
imageUrlstring | nullPublic screenshot URL for response_type=json. May be null for direct image responses.
formatenumpng or jpeg
responseTypeenumjson or image.
extractedHtmlUrlstring | nullExtracted HTML URL when extract_html=true and response_type=json.
extractedTextUrlstring | nullExtracted text URL when extract_text=true and response_type=json.
binary-responsenoteFor response_type=image, the HTTP body is binary image data with image/* content-type and content-length headers (not JSON).

Error Responses

StatusDescription
400Invalid request or invalid parameter combinations (full_page+crop, full_page+element, crop+element, response_type=image+extract_html, response_type=image+extract_text).