Launched June 12th, 2026. Screenshot quality is improving quickly, and feedback is welcome. Send feedback

fastlane snapshot integration

Use fastlane snapshot with a screenshot API.

Let fastlane snapshot capture real UI, then send those captures to appscreenshotapi for frames, captions, lint, and ZIP output.

Example request

bundle exec fastlane snapshot
curl -X POST https://api.appscreenshotapi.com/v1/renders \
  -H "Authorization: Bearer $APPSCREENSHOTAPI_KEY" \
  -H "Content-Type: application/json" \
  --data @store-screenshots.json

Implementation checklist

  • Store APPSCREENSHOTAPI_KEY in the platform secret manager.
  • Run the render step after real simulator, device, or builder captures exist.
  • Use an Idempotency-Key tied to the release tag or commit SHA.
  • Archive returned images, lint JSON, or the Fastlane ZIP for review.

Where the API fits

fastlane snapshot should own building the app and collecting real screenshots. appscreenshotapi owns the repeatable store-asset render: frames, captions, canvases, localization, linting, and ZIP output.

This keeps visual generation outside the build runner while still letting release automation regenerate every asset from one checked-in request file.

Failure and approval behavior

Treat official lint failures as release blockers. If the API returns a billing URL, stop and show it to a human rather than attempting autonomous payment.

Rendered examples

One API call can produce the whole visual set.

View gallery