apyhub
Back
▣ MEDIA KIT

Generate Webpage Screenshot With Advance Controls

What it does

Website Screenshot captures a public web page and returns the result as a binary image. Send a url, and optionally set width, height, format, quality, full_page, and wait_delay to control how the browser renders the page before it is captured.

Use it when you need a visual record of a page for monitoring, QA, reporting, or content workflows. You can capture a standard viewport, a full-page render, or a delayed screenshot for pages that depend on client-side JavaScript. The response is the image itself, so it can be stored, previewed, or passed into downstream media processing without extra parsing.

Because the input is a public http(s) URL, it fits well in automation pipelines that check landing pages, compare page states over time, generate thumbnails, or archive page renders for support and compliance.

Keep in mind that output format matters: choose png, jpeg, or webp based on your storage and quality needs, and use quality only for jpeg and webp.

POST
Screenshot
https://api.eu.apyhub.com/frolic/generate-webpage-screenshot-with-advance-controls/website/screenshot

QUICKSTART

GUIDE

Quickstart

Take a screenshot of the page at the URL you provide.

curl -X POST "https://api.eu.apyhub.com/frolic/generate-webpage-screenshot-with-advance-controls/website/screenshot" \
  -H "apy-token: $APY_TOKEN" \
  --data-urlencode "url=https://apyhub.com"

What you'll get back

Returns a binary file stream (string with format: binary) containing the generated screenshot.

TRY ITLIVE · 25 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body
Public http(s) URL of the page
Browser width in pixels (320-3840)
png, jpeg or webp
Browser height in pixels (200-2160)

About this endpoint

What it does

Captures a screenshot of the web page at the provided public http(s) URL and returns the image as binary data. You can control the capture dimensions, output format, image quality, full-page capture, and an optional post-load wait delay.

Request Body

ParameterTypeMandatoryDescription
urlStringYesPublic http(s) URL of the page.
widthIntegerNoBrowser width in pixels. Default: 1280. Minimum: 320. Maximum: 3840.
formatENUMNoOutput image format. Allowed values: png, jpeg, webp. Default: png.
heightIntegerNoBrowser height in pixels. Default: 800. Minimum: 200. Maximum: 2160.
qualityIntegerNoImage quality for jpeg and webp. Range: 1-100. Default: 90.
full_pageBooleanNoCapture the whole page instead of only the visible width x height viewport. Default: false.
wait_delayIntegerNoSeconds to wait after the page loads before capture. Useful for JavaScript-heavy pages. Default: 0. Range: 0-10.

Response

Returns the screenshot as a binary payload, represented by a JSON schema of type string with format: binary. The success response body is the image file content itself.

ParameterTypeMandatoryDescription
binaryStringYesBinary screenshot data.
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.