What is a screenshot or HTML rendering API?

Posted November 22, 2022 by Dmytro Krasun ‐ 2 min read

A screenshot API or a screenshot as a service is usually a cloud or a remote server service that provides the ability to render any website, HTML, Markdown, or even PDF by making a request to the service, be it over HTTP, TCP, or any other protocol.

The most popular screenshot APIs are usually implemented over HTTP. ScreenshotOne is one of them.

Let’s send an example request to ScreenshotOne.com API to generate a screenshot of Apple’s website:

GET https://api.screenshotone.com/take?url=https://apple.com&access_key=<sign up to get your access key>

The resulting image is:

Apple&rsquo;s website

In addition to that, you can render HTML as an image:

GET https://api.screenshotone.com/take?html=<h1>Hello, world!</h1>&access_key=<sign up to get your access key>

Or even render Markdown (# Hello, world!) as an image too:

GET https://api.screenshotone.com/take?markdown=%23%20Hello%2C%20world%21&access_key=<sign up to get your access key>

The resulting image is the same for both requests:

Hello, world!

Use cases

There is a ton of ways how screenshot API can be used. Imagination is the only limitation.

Customers of ScreenshotOne use it for generating Open Graph images, marketing visuals, and website screenshots to share them in website directories and many more.

Alternatives to a screenshot as a service

One of the most popular alternatives to screenshot APIs is using Puppeteer to render websites and HTML.

Puppeter is a Node library that interacts with browsers that support Chrome DevTools Protocol (CDP). It is not only Chrome and Chromium, but Firefox also has partial support of CDP.

When to prefer a screenshot API to alternatives?

In case if you don’t have time and energy to invest in developing screenshot features for your apps, it is better to use a screenshot API and save time.

What is the best screenshot API?

There is a list of the best screenshot APIs compared by features and by pricing.