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.
Abstract's Website Screenshot API only has two required parameters for the request, your unique API key and a single URL.
? api_key = YOUR_API_KEY
& url = https://www.ft.com
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.
The URL to get the screenshot of. Note that this parameter should include the full HTTP Protocol (http:// or https://).
If true the request will capture the entire height and width of the page. Defaults to true.
The width in pixels of the view port to use to capture the image.
The height in pixels of the view port to use to capture the image.
The time in seconds to wait between loading the page and taking the screenshot.
A CSS string to inject into the website before capturing the image.
The User Agent to use when capturing the screenshot.
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.
Everything worked as expected.
The request was unacceptable. Typically due to the API key missing or incorrect.
Internal Server Error
The request could not be completed due to an error on the server side.
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.
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.
June 27, 2020
Expanded ability to detect and selectively remove ads
June 26, 2020
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.