Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
gplay
command
|
|
|
commands
|
|
|
apps/accessiblecmd
Package accessiblecmd implements `gplay apps accessible list`: the server-authoritative enumeration of the Apps the active credential can access, via the Play Developer Reporting `apps.search` method (#347, ADR-0039).
|
Package accessiblecmd implements `gplay apps accessible list`: the server-authoritative enumeration of the Apps the active credential can access, via the Play Developer Reporting `apps.search` method (#347, ADR-0039). |
|
apps/addcmd
Package addcmd implements `gplay apps add`: register one or more Android packages under the active Account, each with a cheap edits.insert+delete access probe (skippable via --no-verify) so typos and missing per-app permission grants are caught at registration time rather than weeks later in CI.
|
Package addcmd implements `gplay apps add`: register one or more Android packages under the active Account, each with a cheap edits.insert+delete access probe (skippable via --no-verify) so typos and missing per-app permission grants are caught at registration time rather than weeks later in CI. |
|
apps/detailscmd
Package detailscmd implements `apps details`, a pure grouping noun over the App details resource — the app-global edits.details record holding defaultLanguage and the user-visible contact email/phone/website.
|
Package detailscmd implements `apps details`, a pure grouping noun over the App details resource — the app-global edits.details record holding defaultLanguage and the user-visible contact email/phone/website. |
|
apps/initcmd
Package initcmd implements `gplay init`: pin a package name to the current repo by writing .gplay/config.json (committed) and an adjacent .gplay/.gitignore.
|
Package initcmd implements `gplay init`: pin a package name to the current repo by writing .gplay/config.json (committed) and an adjacent .gplay/.gitignore. |
|
apps/listcmd
Package listcmd implements `gplay apps list`: print every Android package registered under the active Account, marking the one pinned by the current repo's .gplay/config.json.
|
Package listcmd implements `gplay apps list`: print every Android package registered under the active Account, marking the one pinned by the current repo's .gplay/config.json. |
|
apps/removecmd
Package removecmd implements `gplay apps remove`: drop an Android package from the active Account's local registry.
|
Package removecmd implements `gplay apps remove`: drop an Android package from the active Account's local registry. |
|
apps/viewcmd
Package viewcmd implements `gplay apps view`: a read-only sanity check on what the active service account sees for a given app.
|
Package viewcmd implements `gplay apps view`: a read-only sanity check on what the active service account sees for a given app. |
|
auth/doctor
Package doctor implements `gplay auth doctor`: ordered diagnostic checks (per docs/DESIGN.md §1) that catch credential misconfiguration before any other command tries to talk to the API.
|
Package doctor implements `gplay auth doctor`: ordered diagnostic checks (per docs/DESIGN.md §1) that catch credential misconfiguration before any other command tries to talk to the API. |
|
auth/list
Package list implements `gplay auth list`: print every registered Account with the active one marked.
|
Package list implements `gplay auth list`: print every registered Account with the active one marked. |
|
auth/login
Package login implements `gplay auth login`: register a service-account JSON as a named Account in the keystore and mark it active in the config.
|
Package login implements `gplay auth login`: register a service-account JSON as a named Account in the keystore and mark it active in the config. |
|
auth/logout
Package logout implements `gplay auth logout <name>`: remove a registered Account from both the config and the keystore.
|
Package logout implements `gplay auth logout <name>`: remove a registered Account from both the config and the keystore. |
|
auth/status
Package status implements `gplay auth status`: print which Account is active, the underlying client_email, the keystore backend in use, and (when applicable) the on-disk credential path.
|
Package status implements `gplay auth status`: print which Account is active, the underlying client_email, the keystore backend in use, and (when applicable) the on-disk credential path. |
|
compliance/datasafety/set
Package set implements `gplay compliance datasafety set`: it pushes the app's Data Safety declaration to Google from the canonical CSV.
|
Package set implements `gplay compliance datasafety set`: it pushes the app's Data Safety declaration to Google from the canonical CSV. |
|
compliance/datasafety/validate
Package validatecmd implements `gplay compliance datasafety validate`: an OFFLINE structural check of the canonical Data Safety CSV.
|
Package validatecmd implements `gplay compliance datasafety validate`: an OFFLINE structural check of the canonical Data Safety CSV. |
|
customapps/create
Package create implements `gplay customapps create`: create a private app distributed to one organisation through managed Google Play, via playcustomapp.accounts.customApps.create — the one Developer API path that creates an app *record* (ADR-0032).
|
Package create implements `gplay customapps create`: create a private app distributed to one organisation through managed Google Play, via playcustomapp.accounts.customApps.create — the one Developer API path that creates an app *record* (ADR-0032). |
|
device-tiers/create
Package create implements `gplay device-tiers create`: create a new (immutable) Device Tier Config on Play from a JSON DeviceTierConfig body read from --file or stdin.
|
Package create implements `gplay device-tiers create`: create a new (immutable) Device Tier Config on Play from a JSON DeviceTierConfig body read from --file or stdin. |
|
device-tiers/devicetierscmd
Package devicetierscmd holds the wiring shared by the three `gplay device-tiers` leaves (create/view/list): package resolution, the ADR-0018 shared table machinery, and 404/403 hint classification.
|
Package devicetierscmd holds the wiring shared by the three `gplay device-tiers` leaves (create/view/list): package resolution, the ADR-0018 shared table machinery, and 404/403 hint classification. |
|
device-tiers/list
Package list implements `gplay device-tiers list`: list the app's device tier configs (newest first).
|
Package list implements `gplay device-tiers list`: list the app's device tier configs (newest first). |
|
device-tiers/view
Package view implements `gplay device-tiers view <deviceTierConfigId>`: read a single device tier config by its server-assigned int64 id.
|
Package view implements `gplay device-tiers view <deviceTierConfigId>`: read a single device tier config by its server-assigned int64 id. |
|
edits/begin
Package begin implements `gplay edits begin`: open an explicit Edit on a package and persist its ID to .gplay/edit-<package>.json, so subsequent write commands in the same project reuse it instead of opening their own (the explicit Edit lifecycle, docs/DESIGN.md §4).
|
Package begin implements `gplay edits begin`: open an explicit Edit on a package and persist its ID to .gplay/edit-<package>.json, so subsequent write commands in the same project reuse it instead of opening their own (the explicit Edit lifecycle, docs/DESIGN.md §4). |
|
edits/commit
Package commit implements `gplay edits commit`: commit the explicit Edit pinned in .gplay/edit-<package>.json (edits.commit) and clear the pin on success.
|
Package commit implements `gplay edits commit`: commit the explicit Edit pinned in .gplay/edit-<package>.json (edits.commit) and clear the pin on success. |
|
edits/discard
Package discard implements `gplay edits discard`: discard the explicit Edit pinned in .gplay/edit-<package>.json (edits.delete) and clear the pin.
|
Package discard implements `gplay edits discard`: discard the explicit Edit pinned in .gplay/edit-<package>.json (edits.delete) and clear the pin. |
|
edits/editscmd
Package editscmd holds the wiring shared by the four `gplay edits` leaves (begin/commit/discard/status): package resolution, locating the project's .gplay/ pin directory, the operator-facing error shapes (CLI misuse → exit 2, no-open-Edit / already-open state → exit 60), and the small renderable the leaves return.
|
Package editscmd holds the wiring shared by the four `gplay edits` leaves (begin/commit/discard/status): package resolution, locating the project's .gplay/ pin directory, the operator-facing error shapes (CLI misuse → exit 2, no-open-Edit / already-open state → exit 60), and the small renderable the leaves return. |
|
edits/status
Package status implements `gplay edits status`: report the open explicit Edit pinned in .gplay/edit-<package>.json, or "no open explicit edit" when none is pinned.
|
Package status implements `gplay edits status`: report the open explicit Edit pinned in .gplay/edit-<package>.json, or "no open explicit edit" when none is pinned. |
|
games/achievements/create
Package create implements `gplay games achievements create --application-id <id>`: insert a new achievement configuration (achievementConfigurations.insert).
|
Package create implements `gplay games achievements create --application-id <id>`: insert a new achievement configuration (achievementConfigurations.insert). |
|
games/achievements/delete
Package delete implements `gplay games achievements delete <achievementId>`: delete an achievement configuration (achievementConfigurations.delete).
|
Package delete implements `gplay games achievements delete <achievementId>`: delete an achievement configuration (achievementConfigurations.delete). |
|
games/achievements/list
Package list implements `gplay games achievements list --application-id <id>`: list a game's achievement configurations (achievementConfigurations.list).
|
Package list implements `gplay games achievements list --application-id <id>`: list a game's achievement configurations (achievementConfigurations.list). |
|
games/achievements/update
Package update implements `gplay games achievements update <achievementId>`: replace an achievement configuration's metadata (achievementConfigurations.update, PUT).
|
Package update implements `gplay games achievements update <achievementId>`: replace an achievement configuration's metadata (achievementConfigurations.update, PUT). |
|
games/achievements/view
Package view implements `gplay games achievements view <achievementId>`: read a single achievement configuration (achievementConfigurations.get).
|
Package view implements `gplay games achievements view <achievementId>`: read a single achievement configuration (achievementConfigurations.get). |
|
games/gamescmd
Package gamescmd holds the wiring shared by the ten `gplay games` leaves (achievements + leaderboards × list/view/create/update/delete): Play Games application-ID resolution, the destructive-tier --confirm gate, the ADR-0018 shared table machinery, request-body construction for the writes, and 404/403 hint classification.
|
Package gamescmd holds the wiring shared by the ten `gplay games` leaves (achievements + leaderboards × list/view/create/update/delete): Play Games application-ID resolution, the destructive-tier --confirm gate, the ADR-0018 shared table machinery, request-body construction for the writes, and 404/403 hint classification. |
|
games/gamescmd/gamescmdtest
Package gamescmdtest is the test-only seam shared by the `gplay games` leaf tests: a RoundTripper that fakes the OAuth2 /token exchange plus a RunContext wired with a throwaway service account, so each leaf test asserts addressing and pass-through without re-copying the auth dance (mirrors the harness the device-tiers leaf tests inline).
|
Package gamescmdtest is the test-only seam shared by the `gplay games` leaf tests: a RoundTripper that fakes the OAuth2 /token exchange plus a RunContext wired with a throwaway service account, so each leaf test asserts addressing and pass-through without re-copying the auth dance (mirrors the harness the device-tiers leaf tests inline). |
|
games/leaderboards/create
Package create implements `gplay games leaderboards create --application-id <id>`: insert a new leaderboard configuration (leaderboardConfigurations.insert).
|
Package create implements `gplay games leaderboards create --application-id <id>`: insert a new leaderboard configuration (leaderboardConfigurations.insert). |
|
games/leaderboards/delete
Package delete implements `gplay games leaderboards delete <leaderboardId>`: delete a leaderboard configuration (leaderboardConfigurations.delete).
|
Package delete implements `gplay games leaderboards delete <leaderboardId>`: delete a leaderboard configuration (leaderboardConfigurations.delete). |
|
games/leaderboards/list
Package list implements `gplay games leaderboards list --application-id <id>`: list a game's leaderboard configurations (leaderboardConfigurations.list).
|
Package list implements `gplay games leaderboards list --application-id <id>`: list a game's leaderboard configurations (leaderboardConfigurations.list). |
|
games/leaderboards/update
Package update implements `gplay games leaderboards update <leaderboardId>`: replace a leaderboard configuration's metadata (leaderboardConfigurations.update, PUT).
|
Package update implements `gplay games leaderboards update <leaderboardId>`: replace a leaderboard configuration's metadata (leaderboardConfigurations.update, PUT). |
|
games/leaderboards/view
Package view implements `gplay games leaderboards view <leaderboardId>`: read a single leaderboard configuration (leaderboardConfigurations.get).
|
Package view implements `gplay games leaderboards view <leaderboardId>`: read a single leaderboard configuration (leaderboardConfigurations.get). |
|
help/exitcodes
Package exitcodes registers `gplay exit-codes` (also reachable as `gplay help exit-codes`): a help topic that prints gplay's semantic exit-code taxonomy (docs/DESIGN.md §9).
|
Package exitcodes registers `gplay exit-codes` (also reachable as `gplay help exit-codes`): a help topic that prints gplay's semantic exit-code taxonomy (docs/DESIGN.md §9). |
|
installskills
Package installskills implements `gplay install-skills`: a flat, category-3 meta-command (DESIGN §0) that installs the companion agent skills by shelling out to `npx skills add` (ADR-0028).
|
Package installskills implements `gplay install-skills`: a flat, category-3 meta-command (DESIGN §0) that installs the companion agent skills by shelling out to `npx skills add` (ADR-0028). |
|
metadata/apply
Package apply implements `gplay metadata apply`: reconcile the local Metadata tree with the Listings live on Google Play.
|
Package apply implements `gplay metadata apply`: reconcile the local Metadata tree with the Listings live on Google Play. |
|
metadata/images/apply
Package imagesapply implements `gplay metadata images apply`: reconcile the local Store-image tree with the images live on Google Play.
|
Package imagesapply implements `gplay metadata images apply`: reconcile the local Store-image tree with the images live on Google Play. |
|
metadata/images/list
Package imageslist implements `gplay metadata images list`: a read-only summary of the Store images live on Google Play for a package — one row per non-empty slot (a (locale, imageType) pair), showing the image count and each image's content sha256.
|
Package imageslist implements `gplay metadata images list`: a read-only summary of the Store images live on Google Play for a package — one row per non-empty slot (a (locale, imageType) pair), showing the image count and each image's content sha256. |
|
metadata/images/pull
Package imagespull implements `gplay metadata images pull`: it rapatriates the Store images live on Google Play for a package into the local Metadata tree on disk, under each locale's images/ sub-directory, alongside the text Listing `.txt` files.
|
Package imagespull implements `gplay metadata images pull`: it rapatriates the Store images live on Google Play for a package into the local Metadata tree on disk, under each locale's images/ sub-directory, alongside the text Listing `.txt` files. |
|
metadata/images/validate
Package imagesvalidate implements `gplay metadata images validate`: an OFFLINE lint of the on-disk Store-image tree.
|
Package imagesvalidate implements `gplay metadata images validate`: an OFFLINE lint of the on-disk Store-image tree. |
|
metadata/list
Package list implements `gplay metadata list`: a read-only summary of the Store front Listings live on Google Play for a package — one row per locale, showing which managed fields each locale has and the character length of each.
|
Package list implements `gplay metadata list`: a read-only summary of the Store front Listings live on Google Play for a package — one row per locale, showing which managed fields each locale has and the character length of each. |
|
metadata/pull
Package pull implements `gplay metadata pull`: it rapatriates the Store front Listings live on Google Play for a package into the local Metadata tree on disk.
|
Package pull implements `gplay metadata pull`: it rapatriates the Store front Listings live on Google Play for a package into the local Metadata tree on disk. |
|
metadata/validate
Package validatecmd implements `gplay metadata validate`: an OFFLINE lint of the on-disk Metadata tree.
|
Package validatecmd implements `gplay metadata validate`: an OFFLINE lint of the on-disk Metadata tree. |
|
orders/orderscmd
Package orderscmd holds the wiring shared by the `gplay orders` leaves: package resolution, the exit-2 usage error, and the 404/403 hint classification that turns a bare API rejection into an agent-resolvable refusal.
|
Package orderscmd holds the wiring shared by the `gplay orders` leaves: package resolution, the exit-2 usage error, and the 404/403 hint classification that turns a bare API rejection into an agent-resolvable refusal. |
|
orders/refund
Package refund implements `gplay orders refund <orderId> --confirm [--revoke]`: the money-moving, irreversible refund of a single Google Play order (orders.refund, POST, no body).
|
Package refund implements `gplay orders refund <orderId> --confirm [--revoke]`: the money-moving, irreversible refund of a single Google Play order (orders.refund, POST, no body). |
|
orders/view
Package view implements `gplay orders view <orderId> [<orderId>...]`: a Google Play order lookup by order ID, end-to-end.
|
Package view implements `gplay orders view <orderId> [<orderId>...]`: a Google Play order lookup by order ID, end-to-end. |
|
recovery/add-targeting
Package addtargeting implements `gplay recovery add-targeting <appRecoveryId>`: widen the audience of a recovery action.
|
Package addtargeting implements `gplay recovery add-targeting <appRecoveryId>`: widen the audience of a recovery action. |
|
recovery/cancel
Package cancel implements `gplay recovery cancel <appRecoveryId>`: terminate an app recovery action.
|
Package cancel implements `gplay recovery cancel <appRecoveryId>`: terminate an app recovery action. |
|
recovery/create
Package create implements `gplay recovery create`: create a DRAFT app recovery action targeting users on a bad versionCode.
|
Package create implements `gplay recovery create`: create a DRAFT app recovery action targeting users on a bad versionCode. |
|
recovery/deploy
Package deploy implements `gplay recovery deploy <appRecoveryId>`: activate a draft recovery action — the production-impacting moment that force-pushes impacted users to a safe app version.
|
Package deploy implements `gplay recovery deploy <appRecoveryId>`: activate a draft recovery action — the production-impacting moment that force-pushes impacted users to a safe app version. |
|
recovery/list
Package list implements `gplay recovery list`: list the recovery actions for a given (bad) versionCode.
|
Package list implements `gplay recovery list`: list the recovery actions for a given (bad) versionCode. |
|
recovery/recoverycmd
Package recoverycmd holds the wiring shared by the `gplay recovery` leaves: package resolution, the ADR-0018 list-table machinery, and 404/403 hint classification.
|
Package recoverycmd holds the wiring shared by the `gplay recovery` leaves: package resolution, the ADR-0018 list-table machinery, and 404/403 hint classification. |
|
releases/expansion-files/expansionfilescmd
Package expansionfilescmd holds the wiring shared by the `releases expansion-files` leaves (upload/set/view): package resolution, --type validation, and a shared ExpansionFile renderer.
|
Package expansionfilescmd holds the wiring shared by the `releases expansion-files` leaves (upload/set/view): package resolution, --type validation, and a shared ExpansionFile renderer. |
|
releases/expansion-files/set
Package set implements `gplay releases expansion-files set`: declaratively point an APK's expansion file at another APK versionCode's already-uploaded file (no new binary).
|
Package set implements `gplay releases expansion-files set`: declaratively point an APK's expansion file at another APK versionCode's already-uploaded file (no new binary). |
|
releases/expansion-files/upload
Package upload implements `gplay releases expansion-files upload`: upload a legacy .obb expansion file and attach it to an already-published APK versionCode, through the full Edit lifecycle (insert → upload → commit).
|
Package upload implements `gplay releases expansion-files upload`: upload a legacy .obb expansion file and attach it to an already-published APK versionCode, through the full Edit lifecycle (insert → upload → commit). |
|
releases/expansion-files/view
Package view implements `gplay releases expansion-files view`: read an APK's expansion file configuration (fileSize XOR referencesVersion) for a given versionCode and type.
|
Package view implements `gplay releases expansion-files view`: read an APK's expansion file configuration (fileSize XOR referencesVersion) for a given versionCode and type. |
|
releases/generated/download
Package download implements `gplay releases generated download <downloadId>`: fetch one APK Play generated from a bundle, streaming the raw signed bytes to a local file (or stdout with `--dest -`).
|
Package download implements `gplay releases generated download <downloadId>`: fetch one APK Play generated from a bundle, streaming the raw signed bytes to a local file (or stdout with `--dest -`). |
|
releases/generated/generatedcmd
Package generatedcmd holds the wiring shared by the `gplay releases generated` leaves (list/download): package resolution, the ADR-0018 list-table machinery that flattens the grouped-by-signing-key GeneratedApksListResponse to one row per artifact, and 404/403 hint classification.
|
Package generatedcmd holds the wiring shared by the `gplay releases generated` leaves (list/download): package resolution, the ADR-0018 list-table machinery that flattens the grouped-by-signing-key GeneratedApksListResponse to one row per artifact, and 404/403 hint classification. |
|
releases/generated/list
Package list implements `gplay releases generated list`: enumerate the APKs Play generated and signed from an uploaded AAB for a given versionCode.
|
Package list implements `gplay releases generated list`: enumerate the APKs Play generated and signed from an uploaded AAB for a given versionCode. |
|
releases/list
Package list implements `gplay releases list`: a read-only listing of every release currently attached to a track (draft, inProgress, halted, completed).
|
Package list implements `gplay releases list`: a read-only listing of every release currently attached to a track (draft, inProgress, halted, completed). |
|
releases/mappings
Package mappings implements `gplay releases mappings upload`: attach a ProGuard/R8 deobfuscation file (a Mapping, per CONTEXT.md) to an already-published versionCode after the fact, so Play vitals can symbolicate that version's obfuscated crash stacks.
|
Package mappings implements `gplay releases mappings upload`: attach a ProGuard/R8 deobfuscation file (a Mapping, per CONTEXT.md) to an already-published versionCode after the fact, so Play vitals can symbolicate that version's obfuscated crash stacks. |
|
releases/promote
Package promote implements `gplay releases promote`: the CLI glue that parses --from/--to plus the status overrides (per ADR-0002), resolves --package, and hands a PromoteOpts payload to internal/releases/orchestrator.
|
Package promote implements `gplay releases promote`: the CLI glue that parses --from/--to plus the status overrides (per ADR-0002), resolves --package, and hands a PromoteOpts payload to internal/releases/orchestrator. |
|
releases/rollout
Package rollout implements the staged-rollout state machine as four sibling commands — `gplay releases rollout / halt / resume / complete`.
|
Package rollout implements the staged-rollout state machine as four sibling commands — `gplay releases rollout / halt / resume / complete`. |
|
releases/sharing/upload
Package upload implements `gplay releases sharing upload`: upload an APK or AAB to Google Play Internal App Sharing and print the private, shareable download link (CONTEXT.md: Internal App Sharing).
|
Package upload implements `gplay releases sharing upload`: upload an APK or AAB to Google Play Internal App Sharing and print the private, shareable download link (CONTEXT.md: Internal App Sharing). |
|
releases/trackhint
Package trackhint maps the one operator-facing failure that `releases upload` and `releases promote` share when they target a custom closed track that has not been created yet — a tracks.update 404 — to an actionable error pointing at `gplay tracks create <name>`.
|
Package trackhint maps the one operator-facing failure that `releases upload` and `releases promote` share when they target a custom closed track that has not been created yet — a tracks.update 404 — to an actionable error pointing at `gplay tracks create <name>`. |
|
releases/upload
Package upload implements `gplay releases upload`: the CLI glue that resolves --package, parses the status flags (per ADR-0002), and hands an Opts payload to internal/releases/orchestrator.
|
Package upload implements `gplay releases upload`: the CLI glue that resolves --package, parses the status flags (per ADR-0002), and hands an Opts payload to internal/releases/orchestrator. |
|
reviews/history
Package history implements `gplay reviews history`: the full-history channel for user reviews, beyond `reviews list`'s 7-day API window.
|
Package history implements `gplay reviews history`: the full-history channel for user reviews, beyond `reviews list`'s 7-day API window. |
|
reviews/list
Package list implements `gplay reviews list`: a read-only listing of the user reviews the Google Play API exposes for a package.
|
Package list implements `gplay reviews list`: a read-only listing of the user reviews the Google Play API exposes for a package. |
|
reviews/reply
Package reply implements `gplay reviews reply`: post developer responses to user reviews, one at a time (--review-id + --reply) or in bulk from a TSV stream (--batch <file>|-).
|
Package reply implements `gplay reviews reply`: post developer responses to user reviews, one at a time (--review-id + --reply) or in bulk from a TSV stream (--batch <file>|-). |
|
reviews/reviewerr
Package reviewerr maps the two operator-facing failures of the Reviews API — a service account lacking the "Reply to reviews" permission (403) and an unknown package (404) — to actionable, hinted errors.
|
Package reviewerr maps the two operator-facing failures of the Reviews API — a service account lacking the "Reply to reviews" permission (403) and an unknown package (404) — to actionable, hinted errors. |
|
reviews/view
Package view implements `gplay reviews view <reviewId>`: a read-only, deep view of ONE user review, addressed by reviewId — the `reviews` analogue of `apps view` / `team users view`.
|
Package view implements `gplay reviews view <reviewId>`: a read-only, deep view of ONE user review, addressed by reviewId — the `reviews` analogue of `apps view` / `team users view`. |
|
schema
Package schema implements `gplay schema`: an OFFLINE, no-auth, `[experimental]` reference command that introspects the Android Publisher API surface from an embedded Schema index (ADR-0022).
|
Package schema implements `gplay schema`: an OFFLINE, no-auth, `[experimental]` reference command that introspects the Android Publisher API surface from an embedded Schema index (ADR-0022). |
|
team/grants/list
Package list implements `gplay team grants list`: list the per-app Grants across the Developer account's members.
|
Package list implements `gplay team grants list`: list the per-app Grants across the Developer account's members. |
|
team/grants/remove
Package remove implements `gplay team grants remove <email> --package <pkg>`: remove a member's access to one app via grants.delete, targeted by email+package path (no pre-read), WITHOUT removing them from the account.
|
Package remove implements `gplay team grants remove <email> --package <pkg>`: remove a member's access to one app via grants.delete, targeted by email+package path (no pre-read), WITHOUT removing them from the account. |
|
team/grants/set
Package set implements `gplay team grants set <email> --package <pkg>`: grant or adjust a member's per-app access via an UPSERT by read-then-decide (ADR-0007 instinct): read the member's current grants → grants.create if the app grant is absent, grants.patch if present.
|
Package set implements `gplay team grants set <email> --package <pkg>`: grant or adjust a member's per-app access via an UPSERT by read-then-decide (ADR-0007 instinct): read the member's current grants → grants.create if the app grant is absent, grants.patch if present. |
|
team/permissions
Package permissions implements `gplay team permissions`: an OFFLINE leaf (no API, no auth, zero network) that publishes gplay's permission vocabulary — the curated aliases (alias → account `_GLOBAL` enum → app enum → label → including-bundles) and the frozen role bundles.
|
Package permissions implements `gplay team permissions`: an OFFLINE leaf (no API, no auth, zero network) that publishes gplay's permission vocabulary — the curated aliases (alias → account `_GLOBAL` enum → app enum → label → including-bundles) and the frozen role bundles. |
|
team/teamcmd
Package teamcmd holds the helpers shared by every `gplay team` leaf command: today, resolving the Developer account id (ADR-0015 cascade) and the type-once persistence that makes it sticky.
|
Package teamcmd holds the helpers shared by every `gplay team` leaf command: today, resolving the Developer account id (ADR-0015 cascade) and the type-once persistence that makes it sticky. |
|
team/users/add
Package add implements `gplay team users add <email>`: invite a member with account-wide permissions via users.create.
|
Package add implements `gplay team users add <email>`: invite a member with account-wide permissions via users.create. |
|
team/users/list
Package list implements `gplay team users list`: the first gplay command keyed by the Developer account rather than a package (ADR-0015).
|
Package list implements `gplay team users list`: the first gplay command keyed by the Developer account rather than a package (ADR-0015). |
|
team/users/remove
Package remove implements `gplay team users remove <email>`: off-board a member via users.delete, targeted by email path (no pre-read).
|
Package remove implements `gplay team users remove <email>`: off-board a member via users.delete, targeted by email path (no pre-read). |
|
team/users/set
Package set implements `gplay team users set <email>`: replace a member's account-wide permissions declaratively via users.patch (like `testers set`).
|
Package set implements `gplay team users set <email>`: replace a member's account-wide permissions declaratively via users.patch (like `testers set`). |
|
team/users/view
Package view implements `gplay team users view <email>`: a read-only, deep view of ONE member of the Developer account, addressed by email — the `team users` analogue of `apps view` / `tracks view`.
|
Package view implements `gplay team users view <email>`: a read-only, deep view of ONE member of the Developer account, addressed by email — the `team users` analogue of `apps view` / `tracks view`. |
|
testers/list
Package list implements `gplay testers list`: a read-only view of the authorized audience (Google Groups) of a single track.
|
Package list implements `gplay testers list`: a read-only view of the authorized audience (Google Groups) of a single track. |
|
testers/set
Package set implements `gplay testers set`: it replaces the authorized audience (Google Groups) of a single track, declaratively — the whole list is sent, mapping 1:1 to edits.testers.update (there is no add/remove).
|
Package set implements `gplay testers set`: it replaces the authorized audience (Google Groups) of a single track, declaratively — the whole list is sent, mapping 1:1 to edits.testers.update (there is no add/remove). |
|
tracks/availability
Package availability implements `tracks availability`, a pure grouping noun over the Country availability of a single track — which countries an app's artifacts are distributed to on --track.
|
Package availability implements `tracks availability`, a pure grouping noun over the Country availability of a single track — which countries an app's artifacts are distributed to on --track. |
|
tracks/create
Package create implements `gplay tracks create <name>`: the CLI glue that creates a custom closed-testing track.
|
Package create implements `gplay tracks create <name>`: the CLI glue that creates a custom closed-testing track. |
|
tracks/list
Package list implements `gplay tracks list`: a read-only, cross-track listing of every track configured for a package — the four standard tracks (internal, alpha, beta, production) plus any custom closed tracks the service account can see — with a one-line summary of the top release on each.
|
Package list implements `gplay tracks list`: a read-only, cross-track listing of every track configured for a package — the four standard tracks (internal, alpha, beta, production) plus any custom closed tracks the service account can see — with a one-line summary of the top release on each. |
|
tracks/view
Package view implements `gplay tracks view`: a read-only, deep view of a single track tuned for the "is something wrong right now?" question.
|
Package view implements `gplay tracks view`: a read-only, deep view of a single track tuned for the "is something wrong right now?" question. |
|
vitals/anomaliescmd
Package anomaliescmd implements `gplay vitals anomalies`: Play-detected metric anomalies (unexpected spikes in crash/ANR/etc.
|
Package anomaliescmd implements `gplay vitals anomalies`: Play-detected metric anomalies (unexpected spikes in crash/ANR/etc. |
|
vitals/errorscmd
Package errorscmd implements `gplay vitals errors`: the error-reporting surface of the Play Developer Reporting API (#49).
|
Package errorscmd implements `gplay vitals errors`: the error-reporting surface of the Play Developer Reporting API (#49). |
|
vitals/query
Package query implements `gplay vitals query <metric-set>`: the generic, read-only escape hatch over the Play Developer Reporting API metric sets (ADR-0026 full coverage).
|
Package query implements `gplay vitals query <metric-set>`: the generic, read-only escape hatch over the Play Developer Reporting API metric sets (ADR-0026 full coverage). |
|
vitals/vitalscmd
Package vitalscmd is the shared orchestration behind every `gplay vitals` metric-set command: the generic `vitals query <metric-set>` escape hatch and the opinionated presets (`vitals crashes`, `vitals anr`, …).
|
Package vitalscmd is the shared orchestration behind every `gplay vitals` metric-set command: the generic `vitals query <metric-set>` escape hatch and the opinionated presets (`vitals crashes`, `vitals anr`, …). |
|
internal
|
|
|
apps/registry
Package registry is the pure-data registry of Android package names known to each gplay Account.
|
Package registry is the pure-data registry of Android package names known to each gplay Account. |
|
auth/doctor
Package doctor runs ordered diagnostic checks against a resolved service-account credential and reports a structured result per check.
|
Package doctor runs ordered diagnostic checks against a resolved service-account credential and reports a structured result per check. |
|
auth/keystore
Package keystore stores service-account JSON credentials by name.
|
Package keystore stores service-account JSON credentials by name. |
|
auth/resolver
Package resolver picks the credential the next API call will use.
|
Package resolver picks the credential the next API call will use. |
|
auth/serviceaccount
Package serviceaccount loads and validates Google Cloud service-account JSON files.
|
Package serviceaccount loads and validates Google Cloud service-account JSON files. |
|
auth/token
Package token mints OAuth2 access tokens for the Google Play Developer API from a parsed service account.
|
Package token mints OAuth2 access tokens for the Google Play Developer API from a parsed service account. |
|
compliance/datasafety
Package datasafety owns the OFFLINE structural validation of an app's Data Safety CSV — the canonical on-disk artifact for the applications.dataSafety declaration (ADR-0014).
|
Package datasafety owns the OFFLINE structural validation of an app's Data Safety CSV — the canonical on-disk artifact for the applications.dataSafety declaration (ADR-0014). |
|
config
Package config owns gplay's cascading configuration model.
|
Package config owns gplay's cascading configuration model. |
|
discovery
Package discovery fetches, normalizes, and derives an offline snapshot of a Google API Discovery document (see issue #52).
|
Package discovery fetches, normalizes, and derives an offline snapshot of a Google API Discovery document (see issue #52). |
|
discovery/cmd/discovery-update
command
Command discovery-update regenerates the offline Discovery snapshots under docs/discovery/ (issue #52).
|
Command discovery-update regenerates the offline Discovery snapshots under docs/discovery/ (issue #52). |
|
discovery/cmd/schema-index-update
command
Command schema-index-update derives the embedded Schema index (internal/schemaindex/schema_index.json) from the committed Discovery snapshots under docs/discovery/ (issue #200).
|
Command schema-index-update derives the embedded Schema index (internal/schemaindex/schema_index.json) from the committed Discovery snapshots under docs/discovery/ (issue #200). |
|
editpin
Package editpin persists the open *explicit* Edit ID for a package to .gplay/edit-<package>.json — the file `gplay edits begin` writes and every write command consults to reuse an open Edit instead of opening its own (docs/DESIGN.md §4 / CONTEXT.md "Edit").
|
Package editpin persists the open *explicit* Edit ID for a package to .gplay/edit-<package>.json — the file `gplay edits begin` writes and every write command consults to reuse an open Edit instead of opening its own (docs/DESIGN.md §4 / CONTEXT.md "Edit"). |
|
exit
Package exit maps typed errors to the semantic exit codes documented in docs/DESIGN.md §9.
|
Package exit maps typed errors to the semantic exit codes documented in docs/DESIGN.md §9. |
|
kernel
Package kernel owns the per-invocation boot sequence shared by every gplay command: build the Boot once in cmd/gplay/main.go, the cobra layer captures the request-shaped Inputs, and kernel.Run resolves Format and the Account *name* once before handing a populated RunContext to the command's business function.
|
Package kernel owns the per-invocation boot sequence shared by every gplay command: build the Boot once in cmd/gplay/main.go, the cobra layer captures the request-shaped Inputs, and kernel.Run resolves Format and the Account *name* once before handing a populated RunContext to the command's business function. |
|
metadata/diff
Package diff is the pure reconciliation engine at the heart of `gplay metadata apply`.
|
Package diff is the pure reconciliation engine at the heart of `gplay metadata apply`. |
|
metadata/imagediff
Package imagediff is the Store-image reconciliation engine: the pure comparison of a local image sequence (files sorted by name, by sha256) against the live sequence (images.list, which carries a sha256 per image but no order field — display order is list order).
|
Package imagediff is the Store-image reconciliation engine: the pure comparison of a local image sequence (files sorted by name, by sha256) against the live sequence (images.list, which carries a sha256 per image but no order field — display order is list order). |
|
metadata/imageorchestrator
Package imageorchestrator is the side-effecting glue behind `gplay metadata images apply`.
|
Package imageorchestrator is the side-effecting glue behind `gplay metadata images apply`. |
|
metadata/imagetree
Package imagetree is the filesystem codec for the Store-image side of the Metadata tree: the pure, I/O-only translation between an on-disk `<dir>/<locale>/images/...` layout and the in-memory Tree.
|
Package imagetree is the filesystem codec for the Store-image side of the Metadata tree: the pure, I/O-only translation between an on-disk `<dir>/<locale>/images/...` layout and the in-memory Tree. |
|
metadata/imagevalidate
Package imagevalidate is the offline Store-image rule engine: the image analog of internal/metadata/validate's char-limit check.
|
Package imagevalidate is the offline Store-image rule engine: the image analog of internal/metadata/validate's char-limit check. |
|
metadata/listing
Package listing is the leaf model shared by every metadata module: the codec (internal/metadata/tree), the validator (internal/metadata/validate), and the diff engine (internal/metadata/diff).
|
Package listing is the leaf model shared by every metadata module: the codec (internal/metadata/tree), the validator (internal/metadata/validate), and the diff engine (internal/metadata/diff). |
|
metadata/locale
Package locale is the embedded registry of Google Play store-listing locale codes gplay's `metadata validate` lints against.
|
Package locale is the embedded registry of Google Play store-listing locale codes gplay's `metadata validate` lints against. |
|
metadata/orchestrator
Package orchestrator is the side-effecting glue behind `gplay metadata apply`.
|
Package orchestrator is the side-effecting glue behind `gplay metadata apply`. |
|
metadata/tree
Package tree is the filesystem codec for the Metadata tree: the pure, I/O-only translation between an on-disk `<dir>/<locale>/<field>.txt` layout and the typed listing.Tree model.
|
Package tree is the filesystem codec for the Metadata tree: the pure, I/O-only translation between an on-disk `<dir>/<locale>/<field>.txt` layout and the typed listing.Tree model. |
|
metadata/validate
Package validate is the pure, offline linter for a Metadata tree.
|
Package validate is the pure, offline linter for a Metadata tree. |
|
output
Package output owns Format selection and rendering dispatch for gplay commands.
|
Package output owns Format selection and rendering dispatch for gplay commands. |
|
output/outputtest
Package outputtest is the test-only seam for internal/output.
|
Package outputtest is the test-only seam for internal/output. |
|
play/accessibleapps
Package accessibleapps talks to the Play Developer Reporting API's `apps.search` method (`playdeveloperreporting.apps.search`) — the server-authoritative enumeration of the Apps the calling credential can access, backing `gplay apps accessible list` (#347, ADR-0039).
|
Package accessibleapps talks to the Play Developer Reporting API's `apps.search` method (`playdeveloperreporting.apps.search`) — the server-authoritative enumeration of the Apps the calling credential can access, backing `gplay apps accessible list` (#347, ADR-0039). |
|
play/api
Package api owns the shared low-level concerns of every internal/play/* module: the canonical androidpublisher base URLs, the per-response body-size caps, and the HTTP status → gplay exit-code mapping plus the API error-envelope parser.
|
Package api owns the shared low-level concerns of every internal/play/* module: the canonical androidpublisher base URLs, the per-response body-size caps, and the HTTP status → gplay exit-code mapping plus the API error-envelope parser. |
|
play/apks
Package apks uploads a legacy APK to a specific Edit via the edits.apks.upload endpoint.
|
Package apks uploads a legacy APK to a specific Edit via the edits.apks.upload endpoint. |
|
play/bundles
Package bundles uploads an AAB to a specific Edit via the edits.bundles.upload endpoint.
|
Package bundles uploads an AAB to a specific Edit via the edits.bundles.upload endpoint. |
|
play/countryavailability
Package countryavailability reads the Country availability of a track via edits.countryavailability.get, inside an Edit the caller has already opened.
|
Package countryavailability reads the Country availability of a track via edits.countryavailability.get, inside an Edit the caller has already opened. |
|
play/customapps
Package customapps creates a private, organisation-scoped app through managed Google Play via playcustomapp.accounts.customApps.create — the one Developer API path that creates an app *record* (public apps are Console-only).
|
Package customapps creates a private, organisation-scoped app through managed Google Play via playcustomapp.accounts.customApps.create — the one Developer API path that creates an app *record* (public apps are Console-only). |
|
play/datasafety
Package datasafety performs the write-only Data Safety declaration POST.
|
Package datasafety performs the write-only Data Safety declaration POST. |
|
play/details
Package details reads app-level metadata.
|
Package details reads app-level metadata. |
|
play/devicetiers
Package devicetiers performs the hand-rolled HTTP calls for an app's Device Tier Configs (the applications.deviceTierConfigs resource; ADR-0007 raw HTTP).
|
Package devicetiers performs the hand-rolled HTTP calls for an app's Device Tier Configs (the applications.deviceTierConfigs resource; ADR-0007 raw HTTP). |
|
play/edits
Package edits owns the Google Play Edit transactional lifecycle.
|
Package edits owns the Google Play Edit transactional lifecycle. |
|
play/expansionfiles
Package expansionfiles performs the hand-rolled HTTP calls for the legacy OBB expansion-file surface (edits.expansionfiles; ADR-0007 raw HTTP).
|
Package expansionfiles performs the hand-rolled HTTP calls for the legacy OBB expansion-file surface (edits.expansionfiles; ADR-0007 raw HTTP). |
|
play/games
Package games performs the hand-rolled HTTP calls for a game's Play Games Services configuration — the achievementConfigurations and leaderboardConfigurations resources of the gamesConfiguration service (ADR-0007 raw HTTP, ADR-0033).
|
Package games performs the hand-rolled HTTP calls for a game's Play Games Services configuration — the achievementConfigurations and leaderboardConfigurations resources of the gamesConfiguration service (ADR-0007 raw HTTP, ADR-0033). |
|
play/gcs
Package gcs is gplay's minimal, resource-agnostic client for the Google Cloud Storage JSON API.
|
Package gcs is gplay's minimal, resource-agnostic client for the Google Cloud Storage JSON API. |
|
play/generatedapks
Package generatedapks reads (and, via Download, fetches) the APKs Google Play generates and signs from an uploaded App Bundle, via the generatedapks.list / generatedapks.download endpoints.
|
Package generatedapks reads (and, via Download, fetches) the APKs Google Play generates and signs from an uploaded App Bundle, via the generatedapks.list / generatedapks.download endpoints. |
|
play/images
Package images reads and writes the per-locale Store images of a Google Play app within an open Edit (edits.images).
|
Package images reads and writes the per-locale Store images of a Google Play app within an open Edit (edits.images). |
|
play/listings
Package listings reads and writes the per-locale Store front Listings of a Google Play app within an open Edit.
|
Package listings reads and writes the per-locale Store front Listings of a Google Play app within an open Edit. |
|
play/mappings
Package mappings uploads a ProGuard/R8 deobfuscation file (a Mapping, per CONTEXT.md) to a specific Edit via the Android Publisher edits.deobfuscationfiles.upload endpoint.
|
Package mappings uploads a ProGuard/R8 deobfuscation file (a Mapping, per CONTEXT.md) to a specific Edit via the Android Publisher edits.deobfuscationfiles.upload endpoint. |
|
play/orders
Package orders reads Google Play Order resources via the Android Publisher orders endpoints.
|
Package orders reads Google Play Order resources via the Android Publisher orders endpoints. |
|
play/recovery
Package recovery performs the hand-rolled HTTP calls for App Recovery (the apprecovery resource; ADR-0007 raw HTTP).
|
Package recovery performs the hand-rolled HTTP calls for App Recovery (the apprecovery resource; ADR-0007 raw HTTP). |
|
play/reviews
Package reviews reads the user reviews of a Google Play app via the reviews.list endpoint.
|
Package reviews reads the user reviews of a Google Play app via the reviews.list endpoint. |
|
play/sharing
Package sharing uploads an APK or AAB to Google Play Internal App Sharing via the internalappsharingartifacts.uploadapk / uploadbundle endpoints and returns the resulting shareable artifact.
|
Package sharing uploads an APK or AAB to Google Play Internal App Sharing via the internalappsharingartifacts.uploadapk / uploadbundle endpoints and returns the resulting shareable artifact. |
|
play/team
Package team performs the hand-rolled HTTP calls for the Google Play Developer account's people/permissions surface — `users.*` and `grants.*` under developers/{developerId} (ADR-0007: raw HTTP, not the generated SDK).
|
Package team performs the hand-rolled HTTP calls for the Google Play Developer account's people/permissions surface — `users.*` and `grants.*` under developers/{developerId} (ADR-0007: raw HTTP, not the generated SDK). |
|
play/testers
Package testers reads and replaces the authorized audience (Google Groups) of a track via edits.testers.get / edits.testers.update, inside an open Edit.
|
Package testers reads and replaces the authorized audience (Google Groups) of a track via edits.testers.get / edits.testers.update, inside an open Edit. |
|
play/tracks
Package tracks reads and updates the release configuration of Google Play tracks within an open Edit.
|
Package tracks reads and updates the release configuration of Google Play tracks within an open Edit. |
|
play/vitals
Package vitals talks to the Play Developer Reporting API's read-only metric sets (crashes/ANR and the other post-launch quality signals, #49).
|
Package vitals talks to the Play Developer Reporting API's read-only metric sets (crashes/ANR and the other post-launch quality signals, #49). |
|
releases/notes
Package notes loads release notes from CLI input — either a single text string (assigned to the app's default language) or a directory of per-locale files (`<locale>.txt`) with an optional `default.txt` fallback for the default language.
|
Package notes loads release notes from CLI input — either a single text string (assigned to the app's default language) or a directory of per-locale files (`<locale>.txt`) with an optional `default.txt` fallback for the default language. |
|
releases/orchestrator
Package orchestrator — UploadMapping owns the standalone mapping-upload choreography behind `gplay releases mappings upload`: open an Edit, POST the deobfuscation file keyed by an explicit versionCode, and commit.
|
Package orchestrator — UploadMapping owns the standalone mapping-upload choreography behind `gplay releases mappings upload`: open an Edit, POST the deobfuscation file keyed by an explicit versionCode, and commit. |
|
reviews/batch
Package batch parses the TSV stream consumed by `gplay reviews reply --batch`: one `<review-id>\t<reply text>` record per line.
|
Package batch parses the TSV stream consumed by `gplay reviews reply --batch`: one `<review-id>\t<reply text>` record per line. |
|
reviews/filter
Package filter implements the client-side `--stars` selector for `gplay reviews list`.
|
Package filter implements the client-side `--stars` selector for `gplay reviews list`. |
|
reviews/history
Package history parses the monthly reviews CSV report Google deposits in the developer's reporting bucket — the full-history channel behind `gplay reviews history` beyond reviews.list's 7-day window (#94 / ADR-0037).
|
Package history parses the monthly reviews CSV report Google deposits in the developer's reporting bucket — the full-history channel behind `gplay reviews history` beyond reviews.list's 7-day window (#94 / ADR-0037). |
|
schemaindex
Package schemaindex defines the normalized, embeddable projection of a Google API Discovery document — the Schema index (see CONTEXT.md and ADR-0022) that `gplay schema` queries offline.
|
Package schemaindex defines the normalized, embeddable projection of a Google API Discovery document — the Schema index (see CONTEXT.md and ADR-0022) that `gplay schema` queries offline. |
|
team/addressing
Package addressing resolves the Developer account id every `gplay team` command is keyed by (ADR-0015).
|
Package addressing resolves the Developer account id every `gplay team` command is keyed by (ADR-0015). |
|
team/vocab
Package vocab is gplay's offline permission vocabulary for `gplay team`: the curated aliases, the frozen role bundles, the raw-`CAN_*` escape hatch, and the admin-conferring detection.
|
Package vocab is gplay's offline permission vocabulary for `gplay team`: the curated aliases, the frozen role bundles, the raw-`CAN_*` escape hatch, and the admin-conferring detection. |
|
teamtest
Package teamtest is the shared test scaffolding for the `gplay team` command e2e suites.
|
Package teamtest is the shared test scaffolding for the `gplay team` command e2e suites. |
|
transport
Package transport exposes the HTTP middleware gplay layers on top of the oauth2 client.
|
Package transport exposes the HTTP middleware gplay layers on top of the oauth2 client. |
|
walkup
Package walkup walks up from a starting directory looking for a file, mirroring git's `.git/` discovery.
|
Package walkup walks up from a starting directory looking for a file, mirroring git's `.git/` discovery. |
Click to show internal directories.
Click to hide internal directories.