[GH-ISSUE #619] coverage: Add missing subscriptions/IAP/pricing relationship endpoints (OpenAPI) #175

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

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

Context

These endpoints exist in the offline OpenAPI snapshot (docs/openapi/latest.json, indexed by docs/openapi/paths.txt) but are currently missing from internal/asc client coverage.

Goal

Add ASC client methods for the endpoints below (method + path).

Missing endpoints

  • DELETE /v1/subscriptions/{id}/relationships/introductoryOffers
  • DELETE /v1/subscriptions/{id}/relationships/prices
  • GET /v1/appPriceSchedules/{id}/relationships/automaticPrices
  • GET /v1/appPriceSchedules/{id}/relationships/baseTerritory
  • GET /v1/appPriceSchedules/{id}/relationships/manualPrices
  • GET /v1/inAppPurchaseAvailabilities/{id}/relationships/availableTerritories
  • GET /v1/inAppPurchaseOfferCodes/{id}/relationships/customCodes
  • GET /v1/inAppPurchaseOfferCodes/{id}/relationships/oneTimeUseCodes
  • GET /v1/inAppPurchaseOfferCodes/{id}/relationships/prices
  • GET /v1/inAppPurchasePricePoints/{id}/relationships/equalizations
  • GET /v1/inAppPurchasePriceSchedules/{id}/relationships/automaticPrices
  • GET /v1/inAppPurchasePriceSchedules/{id}/relationships/baseTerritory
  • GET /v1/inAppPurchasePriceSchedules/{id}/relationships/manualPrices
  • GET /v1/subscriptionAvailabilities/{id}/relationships/availableTerritories
  • GET /v1/subscriptionGroups/{id}/relationships/subscriptionGroupLocalizations
  • GET /v1/subscriptionGroups/{id}/relationships/subscriptions
  • GET /v1/subscriptionOfferCodes/{id}/relationships/customCodes
  • GET /v1/subscriptionOfferCodes/{id}/relationships/oneTimeUseCodes
  • GET /v1/subscriptionOfferCodes/{id}/relationships/prices
  • GET /v1/subscriptionPricePoints/{id}/relationships/equalizations
  • GET /v1/subscriptionPromotionalOffers/{id}/relationships/prices
  • GET /v1/subscriptions/{id}/relationships/appStoreReviewScreenshot
  • GET /v1/subscriptions/{id}/relationships/images
  • GET /v1/subscriptions/{id}/relationships/introductoryOffers
  • GET /v1/subscriptions/{id}/relationships/offerCodes
  • GET /v1/subscriptions/{id}/relationships/pricePoints
  • GET /v1/subscriptions/{id}/relationships/prices
  • GET /v1/subscriptions/{id}/relationships/promotedPurchase
  • GET /v1/subscriptions/{id}/relationships/promotionalOffers
  • GET /v1/subscriptions/{id}/relationships/subscriptionAvailability
  • GET /v1/subscriptions/{id}/relationships/subscriptionLocalizations
  • GET /v2/inAppPurchases/{id}/relationships/appStoreReviewScreenshot
  • GET /v2/inAppPurchases/{id}/relationships/content
  • GET /v2/inAppPurchases/{id}/relationships/iapPriceSchedule
  • GET /v2/inAppPurchases/{id}/relationships/images
  • GET /v2/inAppPurchases/{id}/relationships/inAppPurchaseAvailability
  • GET /v2/inAppPurchases/{id}/relationships/inAppPurchaseLocalizations
  • GET /v2/inAppPurchases/{id}/relationships/offerCodes
  • GET /v2/inAppPurchases/{id}/relationships/pricePoints
  • GET /v2/inAppPurchases/{id}/relationships/promotedPurchase
  • GET /v3/appPricePoints/{id}/relationships/equalizations

Where/what to add

  • Implement in internal/asc/client_subscriptions.go, internal/asc/client_iap.go, and internal/asc/client_iap_subresources.go (and pricing client files as needed).
  • Relationship GETs should return LinkagesResponse; DELETE/POST/PATCH should reuse existing relationship payload helpers.
  • Add tests for at least one endpoint per HTTP method used.

Test plan

  • Add request-shaping tests using newTestClient (assert method + path + query).
  • For mutation endpoints (POST/PATCH/DELETE), assert request method + path and (when applicable) JSON relationship payload shape.

Acceptance criteria

  • All endpoints listed are implemented in internal/asc with tests.
  • ASC_BYPASS_KEYCHAIN=1 make test passes.
Originally created by @rudrankriyam on GitHub (Feb 18, 2026). Original GitHub issue: https://github.com/rudrankriyam/App-Store-Connect-CLI/issues/619 ## Context These endpoints exist in the offline OpenAPI snapshot (`docs/openapi/latest.json`, indexed by `docs/openapi/paths.txt`) but are currently missing from `internal/asc` client coverage. ## Goal Add ASC client methods for the endpoints below (method + path). ## Missing endpoints - [ ] DELETE /v1/subscriptions/{id}/relationships/introductoryOffers - [ ] DELETE /v1/subscriptions/{id}/relationships/prices - [ ] GET /v1/appPriceSchedules/{id}/relationships/automaticPrices - [ ] GET /v1/appPriceSchedules/{id}/relationships/baseTerritory - [ ] GET /v1/appPriceSchedules/{id}/relationships/manualPrices - [ ] GET /v1/inAppPurchaseAvailabilities/{id}/relationships/availableTerritories - [ ] GET /v1/inAppPurchaseOfferCodes/{id}/relationships/customCodes - [ ] GET /v1/inAppPurchaseOfferCodes/{id}/relationships/oneTimeUseCodes - [ ] GET /v1/inAppPurchaseOfferCodes/{id}/relationships/prices - [ ] GET /v1/inAppPurchasePricePoints/{id}/relationships/equalizations - [ ] GET /v1/inAppPurchasePriceSchedules/{id}/relationships/automaticPrices - [ ] GET /v1/inAppPurchasePriceSchedules/{id}/relationships/baseTerritory - [ ] GET /v1/inAppPurchasePriceSchedules/{id}/relationships/manualPrices - [ ] GET /v1/subscriptionAvailabilities/{id}/relationships/availableTerritories - [ ] GET /v1/subscriptionGroups/{id}/relationships/subscriptionGroupLocalizations - [ ] GET /v1/subscriptionGroups/{id}/relationships/subscriptions - [ ] GET /v1/subscriptionOfferCodes/{id}/relationships/customCodes - [ ] GET /v1/subscriptionOfferCodes/{id}/relationships/oneTimeUseCodes - [ ] GET /v1/subscriptionOfferCodes/{id}/relationships/prices - [ ] GET /v1/subscriptionPricePoints/{id}/relationships/equalizations - [ ] GET /v1/subscriptionPromotionalOffers/{id}/relationships/prices - [ ] GET /v1/subscriptions/{id}/relationships/appStoreReviewScreenshot - [ ] GET /v1/subscriptions/{id}/relationships/images - [ ] GET /v1/subscriptions/{id}/relationships/introductoryOffers - [ ] GET /v1/subscriptions/{id}/relationships/offerCodes - [ ] GET /v1/subscriptions/{id}/relationships/pricePoints - [ ] GET /v1/subscriptions/{id}/relationships/prices - [ ] GET /v1/subscriptions/{id}/relationships/promotedPurchase - [ ] GET /v1/subscriptions/{id}/relationships/promotionalOffers - [ ] GET /v1/subscriptions/{id}/relationships/subscriptionAvailability - [ ] GET /v1/subscriptions/{id}/relationships/subscriptionLocalizations - [ ] GET /v2/inAppPurchases/{id}/relationships/appStoreReviewScreenshot - [ ] GET /v2/inAppPurchases/{id}/relationships/content - [ ] GET /v2/inAppPurchases/{id}/relationships/iapPriceSchedule - [ ] GET /v2/inAppPurchases/{id}/relationships/images - [ ] GET /v2/inAppPurchases/{id}/relationships/inAppPurchaseAvailability - [ ] GET /v2/inAppPurchases/{id}/relationships/inAppPurchaseLocalizations - [ ] GET /v2/inAppPurchases/{id}/relationships/offerCodes - [ ] GET /v2/inAppPurchases/{id}/relationships/pricePoints - [ ] GET /v2/inAppPurchases/{id}/relationships/promotedPurchase - [ ] GET /v3/appPricePoints/{id}/relationships/equalizations ## Where/what to add - Implement in `internal/asc/client_subscriptions.go`, `internal/asc/client_iap.go`, and `internal/asc/client_iap_subresources.go` (and pricing client files as needed). - Relationship GETs should return `LinkagesResponse`; DELETE/POST/PATCH should reuse existing relationship payload helpers. - Add tests for at least one endpoint per HTTP method used. ## Test plan - Add request-shaping tests using `newTestClient` (assert method + path + query). - For mutation endpoints (POST/PATCH/DELETE), assert request method + path and (when applicable) JSON relationship payload shape. ## Acceptance criteria - All endpoints listed are implemented in `internal/asc` with tests. - `ASC_BYPASS_KEYCHAIN=1 make test` passes.
kerem 2026-02-26 21:33:54 +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#175
No description provided.