Getting started
Sign up, create an API Key, and capture your first Screenshot in under five minutes.
This guide gets you from zero to a working Screenshot in under five minutes.
1. Create an Account
Open the signup page and enter your email. We send a magic link — clicking it verifies your email and creates your Account.
After signup, open the API keys dashboard and create your first key.
2. Create and copy your API Key
Use Create new key, give the key a label, and copy the plaintext value immediately — we never show the full key again.
Keys look like shot_… and are passed on every API request. If you lose the plaintext, revoke the key and create a new one from the dashboard.
3. Capture your first Screenshot
The public API runs at https://api.screenshotapis.app. If you are running the repo locally, swap the base URL for http://localhost:8000.
Save a PNG to disk with the simplest possible request — only url is required; everything else uses defaults (1280×720 viewport, PNG format, ad blocking on):
curl -X POST https://api.screenshotapis.app/screenshot \
-H 'Authorization: Bearer shot_yourkey_here' \
-H 'Content-Type: application/json' \
-d '{"url":"https://example.com"}' \
-o screenshot.pngA 200 OK response returns raw image bytes with Content-Type: image/png. Response headers include X-Request-Id, X-Render-Billable, and rate-limit / quota counters — see Rate limits & quotas.
4. Try JSON mode (optional)
To receive a hosted URL instead of raw bytes, set "response_type": "json":
curl -X POST https://api.screenshotapis.app/screenshot \
-H 'Authorization: Bearer shot_yourkey_here' \
-H 'Content-Type: application/json' \
-d '{"url":"https://example.com","response_type":"json"}'The JSON body includes url, expires_at, dimensions, and billing flags. See Storage for URL semantics and retention.
Next steps
- Authentication — header format, key prefixes, revocation
- Screenshot reference — every request option
- Examples — curl, Python, and Node snippets