https://screenshot.abstractapi.com/v1/
? api_key = YOUR_API_KEY
& url = https://www.ft.com
STARTER
$9
per
month
PRO
$49
per
month
ENTERPRISE
$499
per
month
Abstract's Website Screenshot API is a simple yet powerful REST API that allows you to request an image of a given URL. It accepts but does not require various customizations on the image capture and rendering, such as setting a capture delay, injecting custom CSS, and specifying the capture's view port. The image output can be further enhanced with the use of Abstract's image optimization API.
The Website Screenshot API, like all of Abstract's APIs, is organized around REST. It is designed to use predictable, resource-oriented URL's and to use HTTP status codes to indicate errors.
The Website Screenshot API requires all communications to be secured TLS 1.2 or greater.
All of Abstract's API are versioned. The Website Screenshot API is currently on Version 1.
Your API key is your unique authentication key to be used to access Abstract's Exchange Rate API. Note that each of Abstract's API has a unique API key, so you will need different keys to access the Website Screenshot and VAT Validation and Rates APIs, for example. To authenticate your requests, you will need to append your API key to the base URL.
https://screenshot.abstractapi.com/v1/
Abstract's Website Screenshot API only has two required parameters for the request, your unique API key and a single URL.
https://screenshot.abstractapi.com/v1/
? api_key = YOUR_API_KEY
& url = https://www.ft.com
PARAMETER
TYPE
DETAILS
api_key required
String
Your unique API key. Note that each user has unique API keys for each of Abstract's APIs, so your Website Screenshot API key will not work for as your User AvatarAPI key, for example.
url required
String
The URL to get the screenshot of. Note that this parameter should include the full HTTP Protocol (http:// or https://).
capture_full_page
Boolean
If true the request will capture the entire height and width of the page. Defaults to true.
width
Integer
The width in pixels of the view port to use to capture the image.
height
Integer
The height in pixels of the view port to use to capture the image.
delay
Integer
The time in seconds to wait between loading the page and taking the screenshot.
css_injection
String
A CSS string to inject into the website before capturing the image.
user_agent
String
The User Agent to use when capturing the screenshot.
export_format
String
The image format to use for the screenshot. Can be jpeg or png, and defaults to jpeg.
Whenever you make a request that fails for some reason, an error is returned also in the JSON format. The errors include an error code and description, which you can find in detail below.
CODE
TYPE
DETAILS
200
OK
Everything worked as expected.
400
Bad request
Bad request
401
Unauthorized
The request was unacceptable. Typically due to the API key missing or incorrect.
500
Internal Server Error
The request could not be completed due to an error on the server side.
503
Service Unavailable
The server was unavailable.
Abstract’s Screenshot API is a simple, powerful, and lightweight REST API that takes a URL or raw HTML and returns high quality images in a variety of formats, such as JPEG, PNG, and GIF. We’ve carefully designed the API to be as useful to the casual and novice user as it is to the large team or organization with more complex needs.
Ultimately we’ve built the Screenshot API to optimize for high image resolution as well as the overall speed and reliability of the API itself. To that end we’ve built a powerful proprietary rendering engine specifically for the purpose of converting HTML to an image in just a few seconds.
Nope! We also support you sending us the raw HTML rather than the site’s public URL, and we can use that to convert the page to an image or other format for you.
This is not supported at the moment, but it's something that's high on our roadmap for the next version. We know that content can change depending on the IP geolocation of the visitor, and we plan to make this configurable so you can get multiple views of a given site.
We take data security and privacy very seriously. Abstract makes money by charging subscriptions for our API’s, not by selling your data. You can learn more about this by reading our privacy policy. The only way to access your cached screenshots is with your own API key.
There are tons of use cases for the Screenshot API, both for personal and commercial projects, and both internal-facing as well as for a company’s end users. Some examples of projects requiring a screenshot API include:
These are just a few examples of applications we've seen. However, we really do like to see what unique and creative solutions you can create with the Screenshot API. If you have a creative implementation that you'd like to share with us (and get some free credits in exchange for a mention or case study), then email us at team [at] abstractapi.com.
May 28, 2023
-
Improved the handling of dynamic content to better capture content such as sliders and animations
June 27, 2020
-
Expanded ability to detect and selectively remove ads
June 26, 2020
-
Improved response time on pages with heavy Javascript
Each of our API's has a free plan as well as several paid options, which offer a greater number of requests, a higher level of data quality, and greater speed for higher prices. Please see the page above or sign into your account to view pricing for each API.
Absolutely! We want you to try before you buy. Each of our API's has a free tier with a generous usage allowance for you to try the product out and verify that the speed and data quality work for you.
We use Stripe to accept payment via major debit and credit cards (Visa, Mastercard, American Express). If you cannot use those payment methods, then contact us at team at abstractapi.com to arrange for an alternative payment method.
Yes, you can upgrade or downgrade your subscription at any time by visiting your dashboard. If you upgrade in the middle of a billing cycle, you will be charged a pro-rated amount for your new plan through the end of the billing cycle.
Yes, all of our subscriptions are month to month. You can cancel at any time, and you will not be charged again at the end of your billing cycle.
You can cancel your subscription at any time from your dashboard. Once canceled, your subscription will be active until the end your current billing cycle, and then it will be automatically moved to the free plan.
If your API usage exceeds the monthly limit set by your plan, then you will be charged a fee for each call over your limit. At the end of your billing period, your usage will reset again.
We do offer enterprise plans with custom features and pricing in limited circumstances. If our public pricing plans don't work for you, then contact us (team at abstractapi.com) and we'll work something out.
While we don't normally offer discounts, we do make exceptions for certain types of users and use cases. If you are a student or are engaged in academic work, or are working on a non-profit or open source project, we're happy to offer you discounts for our API's. Just email us at team at abstractapi.com.
All of our plans are currently paid month to month. We will be launching annual plans at a discount soon. If you're interested in an annual plan in the meantime, just contact us and we'll set you up.
We will typically attempt to charge your payment method up to three times after it fails. If we're still unable to collect payment, then your subscription will be automatically canceled and you'll be moved to the free plan.
Yes, a paid tier of our API may be used in conjunction with a commercial project. The free tiers of our API's may not be used in commercial projects.