mirror of
https://github.com/rudrankriyam/App-Store-Connect-CLI.git
synced 2026-04-25 07:35:48 +03:00
[GH-ISSUE #74] Add In-App Purchases + Subscriptions management #20
Labels
No labels
bug
bug
documentation
enhancement
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/App-Store-Connect-CLI#20
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @rudrankriyam on GitHub (Jan 24, 2026).
Original GitHub issue: https://github.com/rudrankriyam/App-Store-Connect-CLI/issues/74
Summary
Add In-App Purchases + Subscriptions management. ASC currently has no IAP tooling.
Current State (verified)
Repo search for in-app purchases, subscriptions, price schedules returns no matches in commands/client.
API Endpoints (App Store Connect OpenAPI)
Core IAP (v2 recommended)
POST /v2/inAppPurchasesGET|PATCH|DELETE /v2/inAppPurchases/{id}GET /v2/inAppPurchases/{id}/inAppPurchaseLocalizationsGET /v2/inAppPurchases/{id}/iapPriceScheduleGET /v2/inAppPurchases/{id}/pricePointsGET /v2/inAppPurchases/{id}/offerCodesGET /v2/inAppPurchases/{id}/inAppPurchaseAvailabilitySubscriptions
POST /v1/subscriptionGroupsGET|PATCH|DELETE /v1/subscriptionGroups/{id}POST /v1/subscriptionsGET|PATCH|DELETE /v1/subscriptions/{id}POST /v1/subscriptionPricesDELETE /v1/subscriptionPrices/{id}POST /v1/subscriptionAvailabilitiesGET /v1/subscriptionAvailabilities/{id}Offer codes / promos (optional phase 2)
POST /v1/subscriptionOfferCodesPOST /v1/subscriptionPromotionalOffersPOST /v1/inAppPurchaseOfferCodesProposed CLI (Phase 1)
Implementation Plan
internal/asc/iap.go+internal/asc/subscriptions.gocmd/iap.go+cmd/subscriptions.goAcceptance Criteria
@rudrankriyam commented on GitHub (Jan 24, 2026):
@cursor
Implementation Guide
Codebase Context
This is a large feature covering In-App Purchases (v2 API) and Subscriptions. Consider splitting into 2 PRs:
File Structure
1.
internal/asc/iap.go(~250-300 lines)2.
internal/asc/subscriptions.go(~300-350 lines)3.
internal/asc/client_iap.go(~150-200 lines)4.
internal/asc/client_subscriptions.go(~200-250 lines)5.
internal/asc/iap_output.go+internal/asc/subscriptions_output.go** (~100 lines each)6.
cmd/iap.go(~300 lines)7.
cmd/subscriptions.go(~350-400 lines)8. Register in
cmd/commands.goAdd
IAPCommand()andSubscriptionsCommand()to RootCommand().SubcommandsAPI Endpoints Reference
Testing
make test && make lint@cursor[bot] commented on GitHub (Jan 24, 2026):
Thanks for the detailed implementation guide — this lines up well with the plan.
I’ll follow the suggested split into two PRs:
For PR #1 I’ll add
internal/asc/iap.go,internal/asc/client_iap.go,internal/asc/iap_output.go, andcmd/iap.go, then registerIAPCommand()incmd/commands.go. I’ll keep the type definitions and method signatures aligned with your snippets and the v2 endpoints. I’ll also add CLI validation forValidIAPTypes, and client tests for create/get/update/delete/localizations.For PR #2 I’ll mirror the structure with
internal/asc/subscriptions.go,internal/asc/client_subscriptions.go,internal/asc/subscriptions_output.go,cmd/subscriptions.go, and registerSubscriptionsCommand().Testing plan:
make test && make lint, plus targeted unit tests for IAP type validation and subscription required relationships.If you want any extra endpoints included in phase 1 (e.g., price points, availability), let me know; otherwise I’ll keep those for phase 2.