FREE SCREENSHOT API
Capture full screen screenshots without credit cards, signups or hassle
https://api.screenshotrobot.com?url=https://example.com
Turn Any URL into an Image, in Seconds.
Pass us the URL and we return the image, in seconds. Most cookies and ads blocked by default.
HASSLE-FREE
Tired of sign-ups, credit cards, and complicated processes just to get started? With SShot, enjoy up to 25 free screenshots per day—no sign-up, no credit card, no hassle. Just go!
SAFE
We can delete your screenshots in seconds, or keep them forever if you choose to use us as a CDN-service.
Limits
The limits are straightforward:
- Free Users: 10 screenshots per day. No signup required, no obligations.
- Premium Users: $49 per year for up to 500 screenshots per day.
- Enterprise?: Millions of screenshots. [email protected]
Create an account to track your screenshots or increase your limits
Sign up PortalTry Me
Code snippets
Example JSON Response
This is an example of the JSON response returned by the API. If you pass the &redirect
parameter to the API, you will be immediately redirected to the image URL without receiving this JSON response.
{
api_key: null,
googlebot: 1,
date: "2024-01-01 12:35:33",
errors: [ ],
execution_time: 2774,
full_screen: 0,
id: "5jzqzvpwfk7aqorpq4qfsh",
resolution: {
height: "1024",
width: "1280"
},
screenshot_url: "https://api.screenshotrobot.com/fetch/5jzqzvpwfk7aqorpq4qfsh.png",
sleep: 1,
status: true,
url: "https://example.com",
user_data: {
count: 1,
daily_limit: 25,
daily_limit_reached: false,
day: "2024-01-01"
}
}
API Parameters
This API endpoint allows you to capture screenshots of webpages with various customizable options. Below is a detailed explanation of each query parameter you can use:
-
url (required): The URL of the webpage to capture. This should be a fully qualified URL, starting with http or https.
Example:url=https://example.com
-
api_key (optional): Your API key, required for accessing higher usage limits or premium features.
Example:api_key=XXX
-
resolution (optional): The resolution of the screenshot. This defines the width and height of the browser viewport.
Format:width
xheight
Examples:resolution=1920x1080
,resolution=1280x800
Default:1280x1024
-
sleep (optional): The delay (in seconds) before the screenshot is taken, allowing for page elements to fully load. This is useful for pages that have significant JavaScript-driven content.
Example:sleep=5
Default:1
seconds -
googlebot (optional): Whether to use a Googlebot user-agent to potentially bypass captchas or for testing how a page looks to search engine crawlers.
Values:1
(use Googlebot),0
(use standard user-agent)
Example:googlebot=1
Default:1
-
full_screen (optional): Whether to capture the entire height of the webpage, not just what fits within the specified resolution.
Values:1
(capture full page),0
(capture only the viewport)
Example:full_screen=1
-
redirect (optional): Whether to immediately redirect to the image instead of returning JSON
Example:&redirect
Full Example URL
Here is a full example URL incorporating all the parameters:
https://api.screenshotrobot.com?url=https://example.com&sleep=5&googlebot=0&full_screen=1&resolution=1280x800&api_key=XXX&redirect
Code snippets
cURL
curl --location --request GET 'https://api.screenshotrobot.com?url=https://example.com'
Python
import requests response = requests.get('https://api.screenshotrobot.com?url=https://example.com') print(response.text)
PHP
<?php $response = file_get_contents('https://api.screenshotrobot.com?url=https://example.com'); echo $response; ?>
.NET (C#)
using System.Net; WebClient client = new WebClient(); string response = client.DownloadString("https://api.screenshotrobot.com?url=https://example.com"); Console.WriteLine(response);
C (Using libcurl)
#include <stdio.h> #include <curl/curl.h> int main(void) { CURL *curl; CURLcode res; curl = curl_easy_init(); if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "https://api.screenshotrobot.com?url=https://example.com"); res = curl_easy_perform(curl); if(res != CURLE_OK) fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res)); curl_easy_cleanup(curl); } return 0; }
Java
import java.io.*; import java.net.URL; import javax.net.ssl.HttpsURLConnection; public class Main { public static void main(String[] args) throws IOException { URL url = new URL("https://api.screenshotrobot.com?url=https://example.com"); HttpsURLConnection con = (HttpsURLConnection) url.openConnection(); con.setRequestMethod("GET"); BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream())); String inputLine; StringBuffer content = new StringBuffer(); while ((inputLine = in.readLine()) != null) { content.append(inputLine); } in.close(); con.disconnect(); System.out.println(content.toString()); } }
JavaScript (Node.js)
const https = require('https'); https.get('https://api.screenshotrobot.com?url=https://example.com', (resp) => { let data = ''; resp.on('data', (chunk) => { data += chunk; }); resp.on('end', () => { console.log(data); }); }).on("error", (err) => { console.log("Error: " + err.message); });