cURL Screenshot API Quickstart
Start with one cURL call, then add country, device, PDF, automation steps, jq helpers, and a polling loop — with links to the live API reference.
Minimal create call
export SCREENSHOTCENTER_API_KEY="YOUR_API_KEY"
curl -sS "https://api.screenshotcenter.com/api/v1/screenshot/create?key=${SCREENSHOTCENTER_API_KEY}&url=https://example.com" | jq .
Read data.id and data.status. Finished jobs download with /screenshot/thumbnail (PNG) or /screenshot/pdf when pdf=true. Full schemas: API reference. Guides: Developers.
Save the PNG
ID=12345678
curl -fS "https://api.screenshotcenter.com/api/v1/screenshot/thumbnail?key=${SCREENSHOTCENTER_API_KEY}&id=${ID}" -o shot.png
Country and device
curl -sS "https://api.screenshotcenter.com/api/v1/screenshot/create?key=${SCREENSHOTCENTER_API_KEY}&url=https://example.com&country=jp" | jq .
curl -sS "https://api.screenshotcenter.com/api/v1/screenshot/create?key=${SCREENSHOTCENTER_API_KEY}&url=https://example.com&device_name=iphone_15_pro" | jq .
PDF pipeline
curl -sS "https://api.screenshotcenter.com/api/v1/screenshot/create?key=${SCREENSHOTCENTER_API_KEY}&url=https://example.com&pdf=true&pdf_format=a4&pdf_background=true" | jq .data.id
curl -fS "https://api.screenshotcenter.com/api/v1/screenshot/pdf?key=${SCREENSHOTCENTER_API_KEY}&id=${ID}" -o page.pdf
Automation steps
curl -sS -G "https://api.screenshotcenter.com/api/v1/screenshot/create" \
--data-urlencode "key=${SCREENSHOTCENTER_API_KEY}" \
--data-urlencode "url=https://example.com/login" \
--data-urlencode "step[0][command]=type" \
--data-urlencode "step[0][element]=input[name=email]" \
--data-urlencode "step[0][value]=you@example.com" \
--data-urlencode "step[1][command]=click" \
--data-urlencode "step[1][element]=button[type=submit]" \
--data-urlencode "step[2][command]=sleep" \
--data-urlencode "step[2][value]=2000" \
--data-urlencode "step[3][command]=screenshot" | jq .
More patterns on Automation.
jq cheat sheet
| Task | Command |
|---|---|
| Pretty print | | jq . |
| Numeric id | | jq -r .data.id |
| Status | | jq -r .data.status |
Poll + download
ID=$(curl -sS "https://api.screenshotcenter.com/api/v1/screenshot/create?key=${SCREENSHOTCENTER_API_KEY}&url=https://example.com" | jq -r .data.id)
while true; do
ST=$(curl -sS "https://api.screenshotcenter.com/api/v1/screenshot/info?key=${SCREENSHOTCENTER_API_KEY}&id=${ID}" | jq -r .data.status)
[[ "$ST" == "finished" ]] && break
[[ "$ST" == "error" ]] && exit 1
sleep 2
done
curl -fS "https://api.screenshotcenter.com/api/v1/screenshot/thumbnail?key=${SCREENSHOTCENTER_API_KEY}&id=${ID}" -o shot.png