Screenshot API error ยท HTTP 422
Proxy not allowed
proxy_not_allowed
proxy is on a private, reserved or internal network, or is one of our own hosts. Renders connect only to public addresses, through a proxy too.How to recognize it
The API answers with status 422 and a JSON body with the message and the error.code proxy_not_allowed, for example:
HTTP/1.1 422
Content-Type: application/json
{
"error": {
"code": "proxy_not_allowed",
"message": "The proxy is on a private, reserved or internal network, or one of ours; renders never connect there."
},
"message": "The proxy is on a private, reserved or internal network, or one of ours; renders never connect there."
}Common causes
- A proxy at
localhost,127.0.0.1,10.x,192.168.xor another private or reserved address, or an internal host name such asproxy.internal. - A public host name of the proxy that resolves to such an address. It is checked when the request arrives and again when the render connects.
How to fix it
- Use a proxy with a public address that our servers can connect to.
- For a website on your own network, send its HTML in the
htmlfield of a POST request instead.
Billing
Not billed: a request answered with this error does not count against your quota. One exception: when an evaluate step of actions or the scripts ran in the page before the render failed, it is billed as one request, because that code could read the page, unless the failure is ours.
Related parameters
proxy, proxy_bypass_hosts. Each is described in the take endpoint reference.
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, AVIF 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