[GH-ISSUE #370] Parity: Game Center v1 relationships, images, metrics #109

Closed
opened 2026-02-26 21:33:28 +03:00 by kerem · 3 comments
Owner

Originally created by @rudrankriyam on GitHub (Jan 31, 2026).
Original GitHub issue: https://github.com/rudrankriyam/App-Store-Connect-CLI/issues/370

Overview

Add missing Game Center v1 relationship, image, release, and metrics endpoints for parity.

Scope (OpenAPI resources)

  • /v1/gameCenterAchievementLocalizations/{id}/gameCenterAchievement
  • /v1/gameCenterAchievementLocalizations/{id}/gameCenterAchievementImage
  • /v1/gameCenterAchievements/{id}/groupAchievement
  • /v1/gameCenterActivityLocalizations/{id}/image
  • /v1/gameCenterActivityVersions/{id}/defaultImage
  • /v1/gameCenterChallengeLocalizations/{id}/image
  • /v1/gameCenterChallengeVersions/{id}/defaultImage
  • /v1/gameCenterDetails/{id}/achievementReleases
  • /v1/gameCenterDetails/{id}/gameCenterAchievementsV2
  • /v1/gameCenterDetails/{id}/gameCenterLeaderboardSetsV2
  • /v1/gameCenterDetails/{id}/gameCenterLeaderboardsV2
  • /v1/gameCenterDetails/{id}/leaderboardReleases
  • /v1/gameCenterDetails/{id}/leaderboardSetReleases
  • /v1/gameCenterDetails/{id}/metrics/classicMatchmakingRequests
  • /v1/gameCenterDetails/{id}/metrics/ruleBasedMatchmakingRequests
  • /v1/gameCenterGroups/{id}/gameCenterAchievements
  • /v1/gameCenterGroups/{id}/gameCenterAchievementsV2
  • /v1/gameCenterGroups/{id}/gameCenterActivities
  • /v1/gameCenterGroups/{id}/gameCenterChallenges
  • /v1/gameCenterGroups/{id}/gameCenterLeaderboards
  • /v1/gameCenterGroups/{id}/gameCenterLeaderboardSets
  • /v1/gameCenterGroups/{id}/gameCenterLeaderboardSetsV2
  • /v1/gameCenterGroups/{id}/gameCenterLeaderboardsV2
  • /v1/gameCenterLeaderboardLocalizations/{id}/gameCenterLeaderboardImage
  • /v1/gameCenterLeaderboards/{id}/groupLeaderboard
  • /v1/gameCenterLeaderboardSetLocalizations/{id}/gameCenterLeaderboardSetImage
  • /v1/gameCenterLeaderboardSetMemberLocalizations
  • /v1/gameCenterLeaderboardSetMemberLocalizations/{id}
  • /v1/gameCenterLeaderboardSetMemberLocalizations/{id}/gameCenterLeaderboard
  • /v1/gameCenterLeaderboardSetMemberLocalizations/{id}/gameCenterLeaderboardSet
  • /v1/gameCenterLeaderboardSets/{id}/groupLeaderboardSet
  • /v1/gameCenterMatchmakingRuleSets/{id}/matchmakingQueues

Proposed CLI

  • asc game-center achievements ...
  • asc game-center activities ...
  • asc game-center challenges ...
  • asc game-center leaderboards ...
  • asc game-center leaderboard-sets ...
  • asc game-center matchmaking ...

Examples:

  • asc game-center achievements localizations image get --id "LOCALIZATION_ID"
  • asc game-center groups leaderboards list --id "GROUP_ID"
  • asc game-center details metrics classic-matchmaking --id "DETAILS_ID"

Flag patterns

Common: --app, --id, --output, --pretty, --limit, --next, --paginate

Output

  • JSON minified by default
  • --pretty for JSON
  • --output table/markdown for list commands

Detailed TODO

  • Add client methods for all relationships listed
  • Implement CLI subcommands and relationship helpers
  • Add cmdtests + HTTP client tests (mocked)

Acceptance criteria

  • Game Center v1 relationships accessible via CLI
  • Metrics endpoints accessible
  • Image endpoints accessible

Tests

  • Flag validation tests
  • HTTP client tests for each endpoint
  • Output tests for list commands

Implementation notes

  • Add client methods in internal/asc/client_game_center.go
  • Add CLI in internal/cli/gamecenter

References

  • docs/openapi/latest.json
  • docs/openapi/paths.txt
Originally created by @rudrankriyam on GitHub (Jan 31, 2026). Original GitHub issue: https://github.com/rudrankriyam/App-Store-Connect-CLI/issues/370 # Overview Add missing Game Center v1 relationship, image, release, and metrics endpoints for parity. # Scope (OpenAPI resources) - `/v1/gameCenterAchievementLocalizations/{id}/gameCenterAchievement` - `/v1/gameCenterAchievementLocalizations/{id}/gameCenterAchievementImage` - `/v1/gameCenterAchievements/{id}/groupAchievement` - `/v1/gameCenterActivityLocalizations/{id}/image` - `/v1/gameCenterActivityVersions/{id}/defaultImage` - `/v1/gameCenterChallengeLocalizations/{id}/image` - `/v1/gameCenterChallengeVersions/{id}/defaultImage` - `/v1/gameCenterDetails/{id}/achievementReleases` - `/v1/gameCenterDetails/{id}/gameCenterAchievementsV2` - `/v1/gameCenterDetails/{id}/gameCenterLeaderboardSetsV2` - `/v1/gameCenterDetails/{id}/gameCenterLeaderboardsV2` - `/v1/gameCenterDetails/{id}/leaderboardReleases` - `/v1/gameCenterDetails/{id}/leaderboardSetReleases` - `/v1/gameCenterDetails/{id}/metrics/classicMatchmakingRequests` - `/v1/gameCenterDetails/{id}/metrics/ruleBasedMatchmakingRequests` - `/v1/gameCenterGroups/{id}/gameCenterAchievements` - `/v1/gameCenterGroups/{id}/gameCenterAchievementsV2` - `/v1/gameCenterGroups/{id}/gameCenterActivities` - `/v1/gameCenterGroups/{id}/gameCenterChallenges` - `/v1/gameCenterGroups/{id}/gameCenterLeaderboards` - `/v1/gameCenterGroups/{id}/gameCenterLeaderboardSets` - `/v1/gameCenterGroups/{id}/gameCenterLeaderboardSetsV2` - `/v1/gameCenterGroups/{id}/gameCenterLeaderboardsV2` - `/v1/gameCenterLeaderboardLocalizations/{id}/gameCenterLeaderboardImage` - `/v1/gameCenterLeaderboards/{id}/groupLeaderboard` - `/v1/gameCenterLeaderboardSetLocalizations/{id}/gameCenterLeaderboardSetImage` - `/v1/gameCenterLeaderboardSetMemberLocalizations` - `/v1/gameCenterLeaderboardSetMemberLocalizations/{id}` - `/v1/gameCenterLeaderboardSetMemberLocalizations/{id}/gameCenterLeaderboard` - `/v1/gameCenterLeaderboardSetMemberLocalizations/{id}/gameCenterLeaderboardSet` - `/v1/gameCenterLeaderboardSets/{id}/groupLeaderboardSet` - `/v1/gameCenterMatchmakingRuleSets/{id}/matchmakingQueues` # Proposed CLI - `asc game-center achievements ...` - `asc game-center activities ...` - `asc game-center challenges ...` - `asc game-center leaderboards ...` - `asc game-center leaderboard-sets ...` - `asc game-center matchmaking ...` Examples: - `asc game-center achievements localizations image get --id "LOCALIZATION_ID"` - `asc game-center groups leaderboards list --id "GROUP_ID"` - `asc game-center details metrics classic-matchmaking --id "DETAILS_ID"` # Flag patterns Common: `--app`, `--id`, `--output`, `--pretty`, `--limit`, `--next`, `--paginate` # Output - JSON minified by default - `--pretty` for JSON - `--output table/markdown` for list commands # Detailed TODO - [ ] Add client methods for all relationships listed - [ ] Implement CLI subcommands and relationship helpers - [ ] Add cmdtests + HTTP client tests (mocked) # Acceptance criteria - [ ] Game Center v1 relationships accessible via CLI - [ ] Metrics endpoints accessible - [ ] Image endpoints accessible # Tests - Flag validation tests - HTTP client tests for each endpoint - Output tests for list commands # Implementation notes - Add client methods in `internal/asc/client_game_center.go` - Add CLI in `internal/cli/gamecenter` # References - `docs/openapi/latest.json` - `docs/openapi/paths.txt`
kerem closed this issue 2026-02-26 21:33:29 +03:00
Author
Owner

@rudrankriyam commented on GitHub (Jan 31, 2026):

@cursor please implement

<!-- gh-comment-id:3828611070 --> @rudrankriyam commented on GitHub (Jan 31, 2026): @cursor please implement
Author
Owner

@cursor[bot] commented on GitHub (Jan 31, 2026):

  • I registered the new game-center details command, added validation coverage for all new Game Center relationship/image/detail subcommands, and added client HTTP tests for the new Game Center detail, group, matchmaking, and leaderboard-set-member-localization endpoints.
  • I added dedicated test coverage for the new options/query builders and relationship/image fetches to keep the v1 parity surface area fully exercised.

Tests:

  • make test
  • go test ./internal/asc ./internal/cli/cmdtest -run GameCenterDetails (recorded)

Walkthrough artifact:

  • Video: /opt/cursor/artifacts/game_center_details_tests/recording_demo.mp4 (shows the targeted GameCenterDetails tests passing)

View PR
Open in Cursor Open in Web

<!-- gh-comment-id:3828611186 --> @cursor[bot] commented on GitHub (Jan 31, 2026): - I registered the new `game-center details` command, added validation coverage for all new Game Center relationship/image/detail subcommands, and added client HTTP tests for the new Game Center detail, group, matchmaking, and leaderboard-set-member-localization endpoints. - I added dedicated test coverage for the new options/query builders and relationship/image fetches to keep the v1 parity surface area fully exercised. **Tests:** - `make test` - `go test ./internal/asc ./internal/cli/cmdtest -run GameCenterDetails` (recorded) **Walkthrough artifact:** - Video: `/opt/cursor/artifacts/game_center_details_tests/recording_demo.mp4` (shows the targeted GameCenterDetails tests passing) <a href="https://github.com/rudrankriyam/App-Store-Connect-CLI/pull/383"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/view-pr-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/view-pr-light.png"><img alt="View PR" width="86" height="28" src="https://cursor.com/assets/images/view-pr-light.png"></picture></a> <a href="https://cursor.com/background-agent?bcId=bc-2a815198-6dc5-46bd-8db5-466beba2f1df"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-cursor-light.png"><img alt="Open in Cursor" width="131" height="28" src="https://cursor.com/assets/images/open-in-cursor-dark.png"></picture></a>&nbsp;<a href="https://cursor.com/agents?id=bc-2a815198-6dc5-46bd-8db5-466beba2f1df"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-web-light.png"><img alt="Open in Web" width="114" height="28" src="https://cursor.com/assets/images/open-in-web-dark.png"></picture></a>
Author
Owner

@rudrankriyam commented on GitHub (Jan 31, 2026):

Closed by #383.

<!-- gh-comment-id:3829222272 --> @rudrankriyam commented on GitHub (Jan 31, 2026): Closed by #383.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/App-Store-Connect-CLI#109
No description provided.