Quickstart
This page assumes gplay is installed and you have a service-account JSON with access to your app.
1. Authenticate
Section titled “1. Authenticate”# Register the credential (stored in your OS keychain) and make it active.gplay auth login --service-account ./service_account.json
# See which accounts exist and which one is active.gplay auth listgplay auth status2. Verify access to your app
Section titled “2. Verify access to your app”gplay auth doctor --package com.example.myappThis round-trips a real API call and tells you exactly what's missing if the service account isn't fully wired up.
3. Pin your project (optional, recommended)
Section titled “3. Pin your project (optional, recommended)”cd ~/code/my-android-appgplay init --package com.example.myappgplay init writes .gplay/config.json at the repo root. Every gplay
command run inside that tree now targets com.example.myapp by default — no
more --package on each call. The pin is meant to be committed; see
Configuration.
4. Look around
Section titled “4. Look around”# The release tracks and what's on them.gplay tracks listgplay tracks view --track production
# Recent user reviews (the API exposes the last 7 days).gplay reviews list --stars 1-25. Ship something
Section titled “5. Ship something”# Upload an AAB to the internal track with localized release notes.gplay releases upload app.aab --track internal --release-notes-dir ./whatsnew
# Promote the latest internal build to beta — same versionCode, no re-upload.gplay releases promote --from internal --to beta
# Stage a production rollout at 10%, then advance it.gplay releases rollout --track production --to 0.10Where to go next
Section titled “Where to go next”- Release flow guide — the full upload → promote → rollout lifecycle.
- CI/CD guide — the same flow in GitHub Actions.
- Metadata sync — keep store listings in git.
- CLI reference — every command and flag.