[GH-ISSUE #320] Parity: App Clips relationships and domain status #91

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

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

Overview

Add missing App Clips relationship and domain status endpoints (mostly read-only) to close remaining gaps after the main App Clips CLI work.

Scope (OpenAPI resources)

  • App Clip relationships (default/advanced experiences)
  • Default experience relationships: appClipAppStoreReviewDetail, releaseWithAppStoreVersion
  • App Clip header image relationship via localization
  • App Clip domain status endpoints on build bundles (appClipDomainCacheStatus, appClipDomainDebugStatus)
  • App Store version relationship to App Clip default experience

Proposed CLI

Top-level group:

  • asc app-clips ...

New/expanded subcommands:

  • app-clips domain-status cache --build-bundle-id ID
  • app-clips domain-status debug --build-bundle-id ID
  • app-clips default-experiences get --experience-id ID --include release-with-app-store-version
  • app-clips default-experiences review-detail --experience-id ID (optional)

Examples:

  • asc app-clips domain-status cache --build-bundle-id BUNDLE_ID
  • asc app-clips default-experiences get --experience-id EXP_ID --include release-with-app-store-version

Flag patterns

Common:

  • --build-bundle-id, --experience-id, --output, --pretty

Output

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

Detailed TODO

  • Add client methods for build bundle domain cache/debug status
  • Add client methods for default experience relationships (review detail, releaseWithAppStoreVersion)
  • Add CLI app-clips domain-status commands
  • Add CLI include/relationship access for default experiences
  • Add cmdtests + HTTP client tests (mocked)

Acceptance criteria

  • Domain cache/debug status retrievable via CLI
  • Default experience relationship data retrievable
  • JSON-first output preserved

Tests

  • Command flag validation tests
  • HTTP client tests for domain status endpoints
  • Output tests for JSON/table where applicable

Implementation notes

  • Add client methods in internal/asc/client_app_clips.go
  • Add CLI commands in internal/cli/appclips
  • Follow patterns in existing App Clips commands
Originally created by @rudrankriyam on GitHub (Jan 30, 2026). Original GitHub issue: https://github.com/rudrankriyam/App-Store-Connect-CLI/issues/320 # Overview Add missing App Clips relationship and domain status endpoints (mostly read-only) to close remaining gaps after the main App Clips CLI work. # Scope (OpenAPI resources) - App Clip relationships (default/advanced experiences) - Default experience relationships: `appClipAppStoreReviewDetail`, `releaseWithAppStoreVersion` - App Clip header image relationship via localization - App Clip domain status endpoints on build bundles (`appClipDomainCacheStatus`, `appClipDomainDebugStatus`) - App Store version relationship to App Clip default experience # Proposed CLI Top-level group: - `asc app-clips ...` New/expanded subcommands: - `app-clips domain-status cache --build-bundle-id ID` - `app-clips domain-status debug --build-bundle-id ID` - `app-clips default-experiences get --experience-id ID --include release-with-app-store-version` - `app-clips default-experiences review-detail --experience-id ID` (optional) Examples: - `asc app-clips domain-status cache --build-bundle-id BUNDLE_ID` - `asc app-clips default-experiences get --experience-id EXP_ID --include release-with-app-store-version` # Flag patterns Common: - `--build-bundle-id`, `--experience-id`, `--output`, `--pretty` # Output - JSON minified by default - `--pretty` for JSON - `--output table/markdown` for list commands # Detailed TODO - [ ] Add client methods for build bundle domain cache/debug status - [ ] Add client methods for default experience relationships (review detail, releaseWithAppStoreVersion) - [ ] Add CLI `app-clips domain-status` commands - [ ] Add CLI include/relationship access for default experiences - [ ] Add cmdtests + HTTP client tests (mocked) # Acceptance criteria - [ ] Domain cache/debug status retrievable via CLI - [ ] Default experience relationship data retrievable - [ ] JSON-first output preserved # Tests - Command flag validation tests - HTTP client tests for domain status endpoints - Output tests for JSON/table where applicable # Implementation notes - Add client methods in `internal/asc/client_app_clips.go` - Add CLI commands in `internal/cli/appclips` - Follow patterns in existing App Clips commands
kerem closed this issue 2026-02-26 21:33:19 +03:00
Author
Owner

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

@cursor Please implement per issue description. No live credentials; use mocked tests. Run make build/lint/test and open a PR when green. Keep JSON-first output and explicit flags; no interactive prompts.

<!-- gh-comment-id:3822603166 --> @rudrankriyam commented on GitHub (Jan 30, 2026): @cursor Please implement per issue description. No live credentials; use mocked tests. Run make build/lint/test and open a PR when green. Keep JSON-first output and explicit flags; no interactive prompts.
Author
Owner

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

Summary:

  • I added App Clips relationship support and CLI commands (domain-status cache/debug, default/advanced experience relationships, default experience review-detail/release-with-app-store-version relationships, and localization header-image relationship), plus include handling for default-experiences get.
  • I extended the ASC client with relationship endpoints and include options, and wired them into the app-clips CLI.
  • I added mocked HTTP client tests + cmd validation tests for the new endpoints/flags.

Tests:

  • make build
  • make lint
  • make test
  • Walkthrough video shows targeted tests: go test ./internal/asc -run TestGetAppClipDefaultExperience_WithInclude and go test ./internal/cli/cmdtest -run TestAppClipsValidationErrors.

Walkthrough artifact:

  • Video: app_clips_relationship_tests/recording_demo.mp4 (runs the targeted tests and shows them passing).

View PR
Open in Cursor Open in Web

<!-- gh-comment-id:3822603521 --> @cursor[bot] commented on GitHub (Jan 30, 2026): Summary: - I added App Clips relationship support and CLI commands (domain-status cache/debug, default/advanced experience relationships, default experience review-detail/release-with-app-store-version relationships, and localization header-image relationship), plus include handling for default-experiences get. - I extended the ASC client with relationship endpoints and include options, and wired them into the app-clips CLI. - I added mocked HTTP client tests + cmd validation tests for the new endpoints/flags. Tests: - `make build` - `make lint` - `make test` - Walkthrough video shows targeted tests: `go test ./internal/asc -run TestGetAppClipDefaultExperience_WithInclude` and `go test ./internal/cli/cmdtest -run TestAppClipsValidationErrors`. Walkthrough artifact: - Video: `app_clips_relationship_tests/recording_demo.mp4` (runs the targeted tests and shows them passing). <a href="https://github.com/rudrankriyam/App-Store-Connect-CLI/pull/338"><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-8924688b-c309-4b15-b084-f79b0217e6eb"><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-8924688b-c309-4b15-b084-f79b0217e6eb"><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 30, 2026):

Fixed by #338. Included in release 0.20.2.

<!-- gh-comment-id:3825188112 --> @rudrankriyam commented on GitHub (Jan 30, 2026): Fixed by #338. Included in release 0.20.2.
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#91
No description provided.