Complete reference for all 100+ parameters supported by the SnapshotAI Screenshot API. Customize every aspect of your captures with advanced settings.
Core parameters for defining capture source and behavior
source_typeenumOptionalType of content: 'url', 'html', or 'markdown'
Default: url
Example: html
urlstringOptionalURL to capture
Example: https://example.com
htmlstringOptionalRaw HTML content to render and capture
Example: <html><body><h1>Hello</h1></body></html>
markdownstringOptionalMarkdown content to convert and capture
Example: # Hello\n\n**Bold text**
media_type_captureenumOptionalCapture type: 'image' or 'video'
Default: image
Example: video
selectorstringOptionalCSS selector to capture specific element
Example: #main-content
selector_scroll_into_viewbooleanOptionalScroll selector into view
Default: false
Example: true
scroll_into_viewstringOptionalCSS selector to scroll before capture
Example: #target-section
scroll_into_view_adjust_topnumberOptionalAdjust scroll position in pixels
Example: -100
capture_beyond_viewportbooleanOptionalCapture beyond visible viewport
Default: false
Example: true
response_typeenumOptionalFormat: 'by_format' (binary) or 'json' (base64)
Default: by_format
Example: json
Note: Basic parameters (viewport, image, full page, wait/delay, blocking, customization) are in the Create Screenshot docs.
Configure video recording, duration, and scrolling animations
video_formatenumOptionalFormat: 'webm', 'mp4', 'gif', 'mov', 'avi'
Default: webm
Example: mp4
video_durationnumberOptionalDuration in seconds (1-60)
Default: 10
Example: 30
video_scroll_delaynumberOptionalDelay between scrolls in ms (0-10000)
Default: 500
Example: 1000
video_one_scroll_durationnumberOptionalScroll animation duration in ms (0-10000)
Default: 1500
Example: 2000
video_scroll_bynumberOptionalPixels to scroll per step (0-10000)
Default: 1000
Example: 500
video_start_delaynumberOptionalWait before recording in ms (0-60000)
Default: 0
Example: 2000
video_stop_scrolling_afternumberOptionalStop scrolling after ms (0-120000)
Example: 15000
video_scroll_back_afternumberOptionalScroll back after ms (0-120000)
Example: 20000
curl -X POST https://www.snapshotai.dev/api/v1/screenshots \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com",
"options": {
"media_type_capture": "video",
"video_format": "mp4",
"video_duration": 30,
"viewport_width": 1920,
"viewport_height": 1080
}
}'Crop specific regions from captured screenshots
clip_xnumberOptionalX coordinate in pixels
Example: 100
clip_ynumberOptionalY coordinate in pixels
Example: 50
clip_widthnumberOptionalWidth in pixels
Example: 800
clip_heightnumberOptionalHeight in pixels
Example: 600
Note: All four parameters must be provided together to crop images.
Control caching behavior for repeated captures
cachebooleanOptionalEnable caching
Default: false
Example: true
cache_ttlnumberOptionalTTL in seconds (0-31536000)
Default: 3600
Example: 7200
cache_keystringOptionalCustom cache key
Example: homepage-desktop
Note: Enable caching for frequently captured URLs to improve response times.
Advanced blocking beyond basic ads and trackers
block_chatsbooleanOptionalBlock chat widgets
Default: false
Example: true
block_banners_by_heuristicsbooleanOptionalDetect and block banners
Default: false
Example: true
block_requestsarrayOptionalURL patterns to block
Example: ["*.facebook.com/*", "*.analytics.com/*"]
block_resourcesarrayOptionalResource types to block
Example: ["image", "media", "font"]
Additional emulation options
media_typeenumOptionalCSS media type: 'screen' or 'print'
Default: screen
Example: print
Note: Use media_type: 'print' to capture print-specific CSS styles.
Emulate geographic location
geolocation_latitudenumberOptionalLatitude (-90 to 90)
Example: 37.7749
geolocation_longitudenumberOptionalLongitude (-180 to 180)
Example: -122.4194
geolocation_accuracynumberOptionalAccuracy in meters
Default: 0
Example: 100
Note: Test location-specific content. Requires both latitude and longitude.
Customize HTTP requests
user_agentstringOptionalCustom User-Agent
Example: Mozilla/5.0 (compatible; Bot/1.0)
authorizationstringOptionalAuthorization header
Example: Bearer token123
headersobjectOptionalCustom HTTP headers
Example: {"X-Custom": "value"}
cookiesarrayOptionalCookie objects
Example: [{"name": "session", "value": "abc123"}]
timezonestringOptionalTimezone ID
Example: America/Los_Angeles
bypass_cspbooleanOptionalBypass Content Security Policy
Default: false
Example: true
ip_country_codestringOptionalISO country code
Example: US
proxystringOptionalProxy server URL
Example: http://proxy.example.com:8080
Advanced timing options
navigation_timeoutnumberOptionalNavigation timeout in ms (1000-300000)
Default: 30000
Example: 60000
wait_for_selector_algorithmenumOptionalWait strategy: visible, attached, detached, hidden
Default: visible
Example: attached
Additional script and error options
error_on_click_selector_not_foundbooleanOptionalError if click selector not found
Default: false
Example: true
scripts_wait_untilarrayOptionalWait events after scripts
Example: ["networkidle"]
Include additional metadata in responses
metadata_image_sizebooleanOptionalImage dimensions and size
Default: false
Example: true
metadata_fontsbooleanOptionalExtract fonts used
Default: false
Example: true
metadata_open_graphbooleanOptionalExtract OG meta tags
Default: false
Example: true
metadata_page_titlebooleanOptionalInclude page title
Default: false
Example: true
metadata_iconbooleanOptionalExtract favicon URL
Default: false
Example: true
metadata_contentbooleanOptionalInclude HTML content
Default: false
Example: true
metadata_http_response_status_codebooleanOptionalHTTP status code
Default: false
Example: true
metadata_http_response_headersbooleanOptionalHTTP headers
Default: false
Example: true
curl -X POST https://www.snapshotai.dev/api/v1/screenshots \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com",
"options": {
"response_type": "json",
"metadata_page_title": true,
"metadata_open_graph": true,
"metadata_fonts": true
}
}'Configure error behavior
fail_if_content_containsstringOptionalFail if content contains string
Example: Error 404
ignore_host_errorsbooleanOptionalIgnore host errors
Default: false
Example: true
error_on_selector_not_foundbooleanOptionalError if selector not found
Default: false
Example: true