Feature
Store-ready screenshot sizes from one render.
Generate App Store and Google Play screenshots at the exact dimensions each store expects, with validation before upload.
Canvases match store review requirements
appscreenshotapi renders real app captures onto the canvases stores accept today: iPhone 6.9 inch at 1290×2796 (App Store Connect also accepts 1260×2736 and 1320×2868), iPhone 6.5 inch at 1284×2778, iPad 13 inch at 2064×2752, and Google Play phone at 1080×1920 portrait or 1920×1080 landscape.
Use canvas presets such as appstore.iphone_6_9, appstore.ipad_13, and play.phone to keep release scripts explicit and reviewable, or pass output.stores to render App Store and Play canvases from the same request.
Validation belongs in CI
Every response includes width and height per image plus an apple_dimensions lint rule tagged OFFICIAL, so a build can fail before a bad image reaches App Store Connect or Google Play Console.
A 6-slide set rendered to 2 canvases in 2 locales produces 24 final screenshot images against the account screenshot balance (credits_used: 24).
curl https://api.appscreenshotapi.com/v1/renders \
-H "Authorization: Bearer $ASA_KEY" \
-H "Content-Type: application/json" \
-d '{
"canvas": { "preset": "appstore.iphone_6_9" },
"slides": [
{
"headline": { "lines": ["Track every habit", "in one tap"] },
"screenshot": { "url": "https://acme.app/shots/home.png" }
}
],
"output": { "stores": ["appstore", "play"] }
}'API details
Endpoint POST /v1/renders
Canvases appstore.iphone_6_9, appstore.iphone_6_5, appstore.ipad_13, play.phone, play.phone_landscape
Outputs CDN-hosted PNGs with per-file width and height, validated by the lint report
Use it in a release pipeline
Render the set from CI with POST /v1/renders, check the compliance lint report, then download the finished images for review before App Store Connect or Google Play upload.