[PR #264] [MERGED] Add win-back offers CLI support #396

Closed
opened 2026-02-26 22:30:44 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/rudrankriyam/App-Store-Connect-CLI/pull/264
Author: @rudrankriyam
Created: 1/28/2026
Status: Merged
Merged: 1/29/2026
Merged by: @rudrankriyam

Base: mainHead: cursor/win-back-offers-253


📝 Commits (5)

  • 518428f Support managing win-back offers from the CLI to unblock subscription reactivation workflows.
  • c342718 Show zero paid months in win-back output
  • 99cd0d2 Merge pull request #265 from rudrankriyam/cursor/paid-months-zero-display-b9c0
  • 77fb465 Merge origin/main into cursor/win-back-offers-253
  • 9842d3b Align win-back offer queries with OpenAPI options.

📊 Changes

16 files changed (+2372 additions, -0 deletions)

View changed files

📝 internal/asc/client_http_test.go (+220 -0)
📝 internal/asc/client_options.go (+107 -0)
📝 internal/asc/client_pagination.go (+8 -0)
📝 internal/asc/client_queries.go (+40 -0)
📝 internal/asc/client_test.go (+80 -0)
📝 internal/asc/client_types.go (+2 -0)
internal/asc/client_win_back_offers.go (+201 -0)
📝 internal/asc/output_core.go (+16 -0)
📝 internal/asc/output_test.go (+142 -0)
internal/asc/output_win_back_offers.go (+157 -0)
internal/asc/win_back_offers.go (+152 -0)
internal/cli/cmdtest/win_back_offers_test.go (+100 -0)
📝 internal/cli/registry/registry.go (+2 -0)
internal/cli/winbackoffers/commands.go (+8 -0)
internal/cli/winbackoffers/shared_wrappers.go (+46 -0)
internal/cli/winbackoffers/win_back_offers.go (+1091 -0)

📄 Description

Summary

  • add win-back offers CLI commands for list/get/create/update/delete/prices/relationships
  • implement win-back offer client types, queries, pagination, and output formatting
  • add tests for client requests, output rendering, and CLI validation
  • closes #253

Test plan

  • make lint
  • make test
  • make build
  • ASC_BYPASS_KEYCHAIN=1 ./asc subscriptions groups list --app "6748252780" --limit 1 --output json
  • ASC_BYPASS_KEYCHAIN=1 ./asc subscriptions list --group "21741389" --limit 1 --output json
  • ASC_BYPASS_KEYCHAIN=1 ./asc win-back-offers list --subscription "6749273370" --limit 1 --output json (no offers returned)
  • ASC_BYPASS_KEYCHAIN=1 ./asc win-back-offers relationships --subscription "6749273370" --limit 1 --output json

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/rudrankriyam/App-Store-Connect-CLI/pull/264 **Author:** [@rudrankriyam](https://github.com/rudrankriyam) **Created:** 1/28/2026 **Status:** ✅ Merged **Merged:** 1/29/2026 **Merged by:** [@rudrankriyam](https://github.com/rudrankriyam) **Base:** `main` ← **Head:** `cursor/win-back-offers-253` --- ### 📝 Commits (5) - [`518428f`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/518428fe03c36be81ca3739605cc6d48a3553e26) Support managing win-back offers from the CLI to unblock subscription reactivation workflows. - [`c342718`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/c342718ccf2cb2d51be62499375992359ea2d2bf) Show zero paid months in win-back output - [`99cd0d2`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/99cd0d25af7826592c3e1ec899e489a847fa62fa) Merge pull request #265 from rudrankriyam/cursor/paid-months-zero-display-b9c0 - [`77fb465`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/77fb465ccb02bdad6bdb2fc36c2eb1847eb2dd70) Merge origin/main into cursor/win-back-offers-253 - [`9842d3b`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/9842d3b909e9d13e41e20f0a57b0e6ca971ba9b8) Align win-back offer queries with OpenAPI options. ### 📊 Changes **16 files changed** (+2372 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `internal/asc/client_http_test.go` (+220 -0) 📝 `internal/asc/client_options.go` (+107 -0) 📝 `internal/asc/client_pagination.go` (+8 -0) 📝 `internal/asc/client_queries.go` (+40 -0) 📝 `internal/asc/client_test.go` (+80 -0) 📝 `internal/asc/client_types.go` (+2 -0) ➕ `internal/asc/client_win_back_offers.go` (+201 -0) 📝 `internal/asc/output_core.go` (+16 -0) 📝 `internal/asc/output_test.go` (+142 -0) ➕ `internal/asc/output_win_back_offers.go` (+157 -0) ➕ `internal/asc/win_back_offers.go` (+152 -0) ➕ `internal/cli/cmdtest/win_back_offers_test.go` (+100 -0) 📝 `internal/cli/registry/registry.go` (+2 -0) ➕ `internal/cli/winbackoffers/commands.go` (+8 -0) ➕ `internal/cli/winbackoffers/shared_wrappers.go` (+46 -0) ➕ `internal/cli/winbackoffers/win_back_offers.go` (+1091 -0) </details> ### 📄 Description ## Summary - add win-back offers CLI commands for list/get/create/update/delete/prices/relationships - implement win-back offer client types, queries, pagination, and output formatting - add tests for client requests, output rendering, and CLI validation - closes #253 ## Test plan - [x] `make lint` - [x] `make test` - [x] `make build` - [x] `ASC_BYPASS_KEYCHAIN=1 ./asc subscriptions groups list --app "6748252780" --limit 1 --output json` - [x] `ASC_BYPASS_KEYCHAIN=1 ./asc subscriptions list --group "21741389" --limit 1 --output json` - [x] `ASC_BYPASS_KEYCHAIN=1 ./asc win-back-offers list --subscription "6749273370" --limit 1 --output json` (no offers returned) - [x] `ASC_BYPASS_KEYCHAIN=1 ./asc win-back-offers relationships --subscription "6749273370" --limit 1 --output json` --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-26 22:30:44 +03:00
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#396
No description provided.