# Screenshot API

The screenshot generation API remains `https://api.site-shot.com/`.

Agents should use the existing screenshot API key as the `userkey` parameter:

```text
https://api.site-shot.com/?url=https://example.com/&userkey=YOUR_API_KEY
```

Node.js and Python callers can use an official SDK instead of building the URL by hand: `npm install site-shot-sdk` or `pip install site-shot` — see the [SDKs](/api/v1/agent/docs/sdk.md) page. Those are the only official SDKs; other languages call this endpoint directly.

Important parameters include `url`, `width`, `height`, `full_size`, `max_height`, `format`, `response_type`, `delay_time`, `timeout`, `country`, `language`, `time_zone`, `geolocation`, `no_ads`, and `no_cookie_popup`.

`format` is `png` (default), `jpeg` (`jpg` is accepted as an alias) or `webp`: lossless WebP, the same pixels as PNG and typically about 35% smaller. WebP cannot exceed 16,383 px on a side, so a taller full-page `webp` capture keeps only its top 16,383 px.

Geotargeting: `country` takes a two-letter ISO 3166-1 code (for example `country=DE`) and routes the render through a real IP address in that country — 49 countries as of August 2026, each pool's exit country verified against a majority vote of independent GeoIP sources. The current list is on https://www.site-shot.com/countries. `country` also sets matching language, time zone, and geolocation defaults unless those parameters are passed explicitly. Add `strict_country=1` to fail fast with an error response carrying `"error": "country_unavailable"` instead of silently falling back to a US proxy. Geotargeting is included with any paid plan; the free browser tool captures from the US. Guide: https://www.site-shot.com/blog/screenshot-website-from-another-country/. When to call this API from an AI agent instead of screenshotting in the agent's own browser: https://www.site-shot.com/blog/ai-agent-vs-screenshot-api/

Scheduled captures: Site-Shot can re-capture a URL on a cadence and keep the results as a timestamped series. The finest cadence is hourly, the coarsest is weekly, and every plan has a weekly capture allowance — from 35 captures a week on the smallest plan to 12,000 a week on the largest. Each scheduled capture counts as one screenshot against the plan, like any other, and retention is set per schedule. Schedules are created and managed by the signed-in owner at https://www.site-shot.com/account/schedules/ — there is no API endpoint for creating, editing or listing them, so an agent asked to set one up should send the user to that page rather than attempt it over HTTP. A schedule also compares each capture with the one before it and can email the owner when the changed share of the page crosses a threshold they set, and puts the two captures side by side; it measures how much changed, not what changed — there is no text or element diff, email is the only destination, alerts are deduped to at most one per schedule per day, and the soonest anything can arrive is the schedule's own cadence. Alerts are off until the owner enables them per schedule. Guide: https://www.site-shot.com/blog/automatically-screenshot-website-every-day/

The agent-ready v1 project documents the existing screenshot API. It does not rewrite the screenshot generation backend.
