OpenAPI 3.0.3v1.1.0

Screenshotty - Website Screenshot API

A powerful screenshot API that captures high-quality screenshots of websites or raw HTML content. Supports various output formats, custom viewports, JavaScript/CSS injection, element selection, geo-targeting, and more.

Quick Start

Subscribe to the API on RapidAPI and use your RapidAPI key:

curl -X GET "https://screenshotty1.p.rapidapi.com/v1/screenshot?url=https://example.com" \
  -H "X-RapidAPI-Key: YOUR_RAPIDAPI_KEY" \
  -H "X-RapidAPI-Host: screenshotty1.p.rapidapi.com"

Features

  • 📸 Capture full-page or viewport screenshots
  • 🎨 Multiple output formats (PNG, JPEG, WebP, PDF, etc.)
  • 🖥️ Custom viewport dimensions (up to 4K resolution)
  • ✂️ Crop specific regions or capture specific CSS selectors
  • 🔧 JavaScript and CSS injection for page manipulation
  • 🍪 Cookie and HTTP header support for authenticated pages
  • 🌍 Geo-targeting with proxy support from multiple countries
  • 🚫 Built-in ad blocker
  • ⚡ Fast processing with real browser rendering

Rate Limits

Rate limits depend on your subscription plan. Check your RapidAPI dashboard for details.

Authentication
Screenshotty uses API keys for authentication via RapidAPI.

Include your API key in the request headers:

X-RapidAPI-Key: YOUR_API_KEY
X-RapidAPI-Host: screenshotty1.p.rapidapi.com

Security tip: Never expose your API key in client-side code. Always make API calls from your server.

Base URL
All API requests should be made to the following base URL.
https://screenshotty1.p.rapidapi.com

RapidAPI Production Server

POST/v1/screenshot
Take a screenshot (POST)

Capture a screenshot of a URL or HTML content. This endpoint is recommended for complex requests, especially when using cookies, HTTP headers, or JavaScript/CSS injection.

Flexible parameter passing: All options can be passed either as query parameters (in the URL) or in the JSON request body — use whichever is more convenient for your use case. You can even mix both: parameters from the query string and body are merged, with body parameters taking precedence if the same option is specified in both places.

Request Parameters
All parameters for the screenshot endpoint. Click on a parameter to see more details.
url
string (uri)
html
string
format
stringdefault: "image/png"
response_type
stringdefault: "image"
viewport_width
integerdefault: 1920
viewport_height
integerdefault: 1080
crop_x
integer
crop_y
integer
crop_width
integer
crop_height
integer
selector
string
full_page
booleandefault: true
transparent_background
booleandefault: false
ready_event
stringdefault: "domcontentloaded"
wait_ms
integer
javascript_code
string
css_code
string
user_agent
string
cookies
array
http_headers
object
adblock
booleandefault: false
country
string
block_cookie_banner
booleandefault: false
light_mode
stringdefault: "default"
viewport_preset
string
device_scale_factor
integerdefault: 1
language
stringdefault: "en-US"
scroll_to_bottom
booleandefault: false
printed
booleandefault: false
Code Examples
Ready-to-use code snippets in multiple languages
curl -X POST "https://screenshotty1.p.rapidapi.com/v1/screenshot" \
-H "Content-Type: application/json" \
-H "X-RapidAPI-Key: YOUR_API_KEY" \
-H "X-RapidAPI-Host: screenshotty1.p.rapidapi.com" \
-d '{
"url": "https://example.com"
}'
Response Codes
Possible responses from the API
200
400
401
403
429
500