Screenshot API error ยท HTTP 429

Rate limit exceeded

rate_limit_exceeded

Too many requests in a short time: the free plan allows a number of requests per minute, and this one went over it.

How to recognize it

The API answers with status 429 and a JSON body with the message and the error.code rate_limit_exceeded, for example:

HTTP/1.1 429
Content-Type: application/json

{
  "error": {
    "code": "rate_limit_exceeded",
    "message": "API rate limit exceeded"
  },
  "message": "API rate limit exceeded"
}

How to fix it

  1. Wait for the time in the Retry-After header, then send the request again.
  2. Spread requests out, or queue them, instead of sending bursts.
  3. Paid plans have no per-minute limit.

Retry

After the seconds in Retry-After, at the start of the next minute.

Billing

Not billed: a request answered with this error does not count against your quota.

Every response carries an X-Request-Id header. If this page does not explain the error, write to support@screenshotbase.com with that id. All statuses: status codes.

Other API errors

Screenshot API

Take screenshots from your code

screenshotbase renders any website in a real browser and returns the image: full page or viewport, any device size, retina, from 100+ countries, with cookie banners and ads hidden.

/v1/take documentation Screenshot API All documentation

300 free screenshots every month. No credit card required.

GET https://api.screenshotbase.com/v1/take?url=https://example.com&full_page=true

# Response: the image (PNG, JPG, WebP or GIF)
curl -G "https://api.screenshotbase.com/v1/take" \
  --data-urlencode "url=https://example.com" \
  -d viewport_width=1280 -d viewport_height=800 \
  -d format=png \
  -H "apikey: YOUR-API-KEY" \
  -o screenshot.png

More free tools

Start using our Screenshot API for free today!

Get 300 requests / month for free