Premiers pas
Getting Started with ScreenshotCenter API
Create an API key, submit your first screenshot, monitor its status, and download the finished image.
Référence API
Vous développez une intégration ?
Consultez tous les endpoints, paramètres, schémas de réponse et exemples de code dans la documentation développeur.
ScreenshotCenter uses an asynchronous workflow: submit a URL, keep the returned screenshot ID, check the job until it finishes, and then download the result. The examples below use curl, but the same endpoints are available through the official SDKs.
1. Create your account
Create a ScreenshotCenter account and sign in to the dashboard. Screenshot requests require a positive account balance, so confirm that your account has available credits before testing the API.
2. Generate and protect an API key
Create an API key from the dashboard. Treat it like a password: keep it out of source control, browser-side JavaScript, screenshots, and application logs. Store it in an environment variable or secret manager.
The recommended authentication method is the X-API-KEY request header:
export SCREENSHOTCENTER_API_KEY="YOUR_API_KEY"
curl "https://api.screenshotcenter.com/api/v1/screenshot/info?id=12345678" \
--header "X-API-KEY: $SCREENSHOTCENTER_API_KEY"
You can also pass the key as the key query parameter. The header is preferable because URLs are more likely to appear in access logs and browser history.
3. Submit your first screenshot
Only url is required. The optional country parameter selects the capture location and defaults to us.
curl --get "https://api.screenshotcenter.com/api/v1/screenshot/create" \
--header "X-API-KEY: $SCREENSHOTCENTER_API_KEY" \
--data-urlencode "url=https://example.com" \
--data-urlencode "country=us"
A successful request returns a JSON envelope containing the screenshot record. Save data.id; every status and download request uses it.
{
"success": true,
"data": {
"id": 12345678,
"status": "processing",
"url": "https://example.com",
"country": "us"
}
}
4. Check the processing status
Call the info endpoint with the screenshot ID:
curl --get "https://api.screenshotcenter.com/api/v1/screenshot/info" \
--header "X-API-KEY: $SCREENSHOTCENTER_API_KEY" \
--data-urlencode "id=12345678"
The data.status field is one of:
processing: the browser is still loading or capturing the page.finished: the screenshot is ready to download.error: the capture failed; inspect the returnederrorvalue.
When polling from an application, wait between requests and use backoff instead of continuously calling the endpoint.
5. Download the finished image
After the status becomes finished, download the image with the thumbnail endpoint:
curl --get "https://api.screenshotcenter.com/api/v1/screenshot/thumbnail" \
--header "X-API-KEY: $SCREENSHOTCENTER_API_KEY" \
--data-urlencode "id=12345678" \
--output screenshot.png
The endpoint can resize or crop the stored screenshot and return png, jpeg, or webp. For example:
curl --get "https://api.screenshotcenter.com/api/v1/screenshot/thumbnail" \
--header "X-API-KEY: $SCREENSHOTCENTER_API_KEY" \
--data-urlencode "id=12345678" \
--data-urlencode "width=800" \
--data-urlencode "format=webp" \
--output screenshot.webp
6. Customize the capture
Add query parameters to the create request to control browser behavior and output:
size=pagecaptures the full page instead of the viewport.screen_widthandscreen_heightset the browser viewport.delaywaits after page load for client-side rendering.country,language, andtimezonecontrol location and locale.hide_popups=trueandhide_ads=truecan produce cleaner captures.targetcaptures a specific element using a CSS selector.html=true,pdf=true, orvideo=truerequest companion outputs.
For parameter types, limits, defaults, response schemas, and endpoint-specific examples, use the complete API documentation.
7. Prepare your integration for production
- Keep API keys in server-side secrets and rotate keys that may have been exposed.
- URL-encode all query parameters instead of concatenating untrusted values into request URLs.
- Handle validation and authentication errors, rate limits, and temporary server errors.
- Honor the
Retry-Afterheader on429responses. - Use the default screenshot cache when possible; set
cache=0only when every request must be fresh. - Store the screenshot ID with your own job record so processing can resume after a restart.
Where to go next
Browse the official SDKs and code examples, learn how to interact with pages before capture, or review the available output formats.
Étiquettes