← All APIs Network

Screenshots API

Takes a screenshot of any webpage after it fully loads.

Renders a webpage exactly as a real browser would, including all its scripts and dynamic content, then takes a picture of it. You can capture just the visible area or the whole scrollable page, choose the screen size, wait for slow-loading images to finish, and hide cookie banners or popups before the picture is taken.

POSThttps://screenshots.underscoredone.com/capture
Pricing

$0.02 per request — pay via x402/USDC. No account needed.

How to use

Send the target url plus any optional capture settings. Set load_lazy true and wait_until to networkidle0 or networkidle2 for pages that load content as you scroll, such as image galleries or social feeds. Set allow_popups false (default) to automatically hide cookie banners and chat widgets. The response gives a short-lived link to the captured image, not the image itself, so download it promptly if you need to keep it.

Input parameters
NameTypeRequiredDescription
urlstringyesThe web address of the page you want a picture of.
full_pagebooleannoIf true, captures the entire scrollable page instead of just what is visible on screen.
viewport/nullnoThe width and height of the browser window used to show the page, in pixels.
wait_untilstringnoWhen to consider the page ready to capture.
allow_popupsbooleannoIf false, cookie banners, consent popups, and chat widgets are hidden before the picture is taken.
load_lazybooleannoIf true, scrolls through the page first so slow-loading images finish loading before the picture is taken.
Example response
{
  "api_version": "1.0.0",
  "url": "https://example.com",
  "image": "https://r2.example.com/shot-abc123.png",
  "format": "png",
  "width": 1920,
  "height": 1080,
  "captured_at": "2026-07-20T04:12:33Z"
}
Error responses
StatusMeaning
400Bad request — your input failed validation or could not be processed. Check the detail field for specifics.
402Payment required. Send a signed USDC payment on Base Mainnet or Solana Mainnet using the x402 protocol.
422Unprocessable — a required field is missing or the wrong type. Check the detail field for specifics.
Links