Automate image generation
Save time on creating similar images with different texts and branding!
Create account
Share article

Taking screenshots using REST API

Jakub PomykałabyJakub Pomykała
Published October 19, 20212 min read

Taking screenshots using REST API

Have you ever wondering if you could quickly take a screenshot of a webpage using just a single request?

RenderForm API allows you to not only create images using templates and API but also take a screenshots using REST API.

There are plenty use cases of that:

  • Post it on social media
  • Make a list of websites
  • Detect branding based on colors
  • Test or health-check your webpage
  • Read texts from screen

How to take a screenshot with API?

Generate your API key in RenderForm by signing up to the system. Get the API key from your account section and then you can make a request like below.

curl 
    --location 
    --request POST 'https://api.renderform.io/api/v1/screenshots' \
    --header 'X-API-KEY: <API_KEY>' \
    --header 'Content-Type: application/json' \
    --data-raw '{
        "url": "https://renderform.io"
        "width": 1366,
        "height": 768,
    }'

RenderForm API will respond after a couple of seconds with link where you can download the screenshot. Example successful response is shown below.

{
  "requestId": "ed39c85ac41f4c54b95e4caaad4ebff8",
  "href": "https://cdn.renderform.io/.../image.png",
  "request": {
    "width": 1366,
    "height": 768,
    "url": "https://renderform.io"
  }
}

Screenshot API parameters

As you seen above we passed url of the website, width and height of the screenshot. These parameters are required but you can add more options:

  • url (required) - website URL of which RenderForm should take a screenshot
  • height (required) - screenshot height
  • width (required) - screenshot width,
  • expires (optional) - add expiration time in seconds for the image, available values from 1 to 604800
  • waitTime (optional) - add wait time in milliseconds before taking a screenshot, available values from 500 to 5000
  • webhookUrl (optional) - send response to the given webhookUrl as POST request

Does it integrate with other tools?

Yes! RenderForm is integrated with Zapier and Make.com (Integromat). Soon we will add more integrations like n8n.io. Please also notice that every request supports a webhook. Taking a screenshot takes time because it's very resource demanding and complex process for servers. You can pass a URL in webhookUrl field, thanks to that RenderForm API will accept your request and immediately return you a response. Once RenderForm finish processing your request a new request will be sent to the given URL in webhookUrl.

Can I set an expiration date?

Yes, you can set expiration date on every screenshot from 1 second up to 7 days. Add a field expires and put there an expiration value in seconds. RenderForm API return you a link in href field which will be valid for requested period of time.

Relevant posts

Image Generation with Make.com

Image Generation with Make.com

KingabyKingaMay 04, 2023

Automate image generation using Make.com and RenderForm. Create personalized images from templates and automatize your marketing workflow.

Read more
How to generate images with different QR codes?

How to generate images with different QR codes?

KingabyKingaApril 11, 2023

Generate many images from a template with different QR codes. Use a spreadsheet to automate the process or render images in RenderForm live preview.

Read more
How to generate many real estate banners from a template?

How to generate many real estate banners from a template?

KingabyKingaApril 03, 2023

Real estate banners can attract potencial clients. Creating them, however, can be time-consuming. Learn how to automate your real estate banners with RenderForm.

Read more

Design. Automate. Scale.

Free plan • No credit card required • Get started in minutes