APP STORE CONNECT API

Every call ASOwl makes.

ASOwl talks to Apple through the official App Store Connect API, directly from your Mac with your own key. These are all 138 requests it can make, grouped by what they're for. Nothing is written unless you apply or confirm an action.

Generated from the app's code · 4 October 2026

How it connects

  • Your Team key (.p8) is stored in your Mac's Keychain. Each request is signed on your Mac with a token that lasts at most 20 minutes.
  • Requests go straight from your Mac to api.appstoreconnect.apple.com. They never pass through ASOwl's servers.
  • One exception you opt into: review alerts register an App Store Connect webhook pointing at ASOwl's server, which receives Apple's status events and emails you. It never receives your key.
  • Reads are free and happen when you import or refresh. Writes happen only from Preview & apply, or from a button that says it acts right away (prices, creating products, TestFlight).

Apps, versions and the listing

  • POST /v1/appInfoLocalizations
  • DELETE /v1/appInfoLocalizations/{id}
  • PATCH /v1/appInfoLocalizations/{id}
  • PATCH /v1/appInfos/{id}
  • GET /v1/appInfos/{id}/ageRatingDeclaration
  • GET /v1/appInfos/{id}/appInfoLocalizations
  • POST /v1/appStoreVersionLocalizations
  • DELETE /v1/appStoreVersionLocalizations/{id}
  • PATCH /v1/appStoreVersionLocalizations/{id}
  • GET /v1/appStoreVersionLocalizations/{id}/appPreviewSets
  • GET /v1/appStoreVersionLocalizations/{id}/appScreenshotSets
  • POST /v1/appStoreVersions
  • GET /v1/appStoreVersions/{id}
  • PATCH /v1/appStoreVersions/{id}
  • GET /v1/appStoreVersions/{id}/appStoreReviewDetail
  • GET /v1/appStoreVersions/{id}/appStoreVersionLocalizations
  • GET /v1/appStoreVersions/{id}/appStoreVersionPhasedRelease
  • GET /v1/appStoreVersions/{id}/build
  • PATCH /v1/appStoreVersions/{id}/relationships/build
  • GET /v1/apps
  • GET /v1/apps/{id}
  • PATCH /v1/apps/{id}
  • GET /v1/apps/{id}/appInfos
  • GET /v1/apps/{id}/appStoreVersions
  • GET /v1/apps/{id}/reviewSubmissions
  • GET /v1/bundleIds
  • POST /v1/bundleIds

Screenshots and app previews

  • GET /v1/appCustomProductPageLocalizations/{id}/appScreenshotSets
  • POST /v1/appPreviewSets
  • POST /v1/appPreviews
  • PATCH /v1/appPreviews/{id}
  • POST /v1/appScreenshotSets
  • PATCH /v1/appScreenshotSets/{id}/relationships/appScreenshots
  • POST /v1/appScreenshots
  • DELETE /v1/appScreenshots/{id}
  • GET /v1/appScreenshots/{id}
  • PATCH /v1/appScreenshots/{id}

App Review, submission and release

  • DELETE /v1/appStoreReviewAttachments/{id}
  • POST /v1/appStoreReviewDetails
  • PATCH /v1/appStoreReviewDetails/{id}
  • GET /v1/appStoreReviewDetails/{id}/appStoreReviewAttachments
  • POST /v1/appStoreVersionPhasedReleases
  • DELETE /v1/appStoreVersionPhasedReleases/{id}
  • PATCH /v1/appStoreVersionPhasedReleases/{id}
  • POST /v1/appStoreVersionReleaseRequests
  • GET /v1/betaGroups/{id}/relationships/builds
  • POST /v1/betaGroups/{id}/relationships/builds
  • POST /v1/reviewSubmissionItems
  • POST /v1/reviewSubmissions
  • GET /v1/reviewSubmissions/{id}
  • PATCH /v1/reviewSubmissions/{id}

Price and availability

  • POST /v1/appPriceSchedules
  • GET /v1/appPriceSchedules/{id}/manualPrices
  • GET /v1/apps/{id}/appAvailabilityV2
  • GET /v1/apps/{id}/appPricePoints
  • GET /v1/apps/{id}/appPriceSchedule
  • GET /v1/inAppPurchasePricePoints/{id}/equalizations
  • POST /v1/inAppPurchasePriceSchedules
  • GET /v1/inAppPurchasePriceSchedules/{id}/manualPrices
  • GET /v1/subscriptionPricePoints/{id}/equalizations
  • GET /v1/subscriptions/{id}/pricePoints
  • GET /v1/territories
  • GET /v1/{id}/{id}/availableTerritories
  • POST /v2/appAvailabilities
  • GET /v2/inAppPurchases/{id}/pricePoints
  • GET /v3/appPricePoints/{id}/equalizations

In-app purchases and subscriptions

  • GET /v1/apps/{id}/inAppPurchasesV2
  • GET /v1/apps/{id}/subscriptionGroups
  • POST /v1/inAppPurchaseAvailabilities
  • POST /v1/subscriptionAvailabilities
  • POST /v1/subscriptionGroupLocalizations
  • POST /v1/subscriptionGroups
  • GET /v1/subscriptionGroups/{id}/subscriptions
  • POST /v1/subscriptionIntroductoryOffers
  • DELETE /v1/subscriptionIntroductoryOffers/{id}
  • POST /v1/subscriptionPrices
  • POST /v1/subscriptions
  • GET /v1/subscriptions/{id}
  • PATCH /v1/subscriptions/{id}
  • GET /v1/subscriptions/{id}/introductoryOffers
  • GET /v1/subscriptions/{id}/offerCodes
  • GET /v1/subscriptions/{id}/prices
  • GET /v1/subscriptions/{id}/winBackOffers
  • POST /v2/inAppPurchases
  • GET /v2/inAppPurchases/{id}
  • PATCH /v2/inAppPurchases/{id}

Offers and the billing grace period

  • GET /v1/apps/{id}/subscriptionGracePeriod
  • PATCH /v1/subscriptionGracePeriods/{id}
  • POST /v1/subscriptionOfferCodeCustomCodes
  • POST /v1/subscriptionOfferCodeOneTimeUseCodes
  • GET /v1/subscriptionOfferCodeOneTimeUseCodes/{id}/values
  • POST /v1/subscriptionOfferCodes
  • PATCH /v1/subscriptionOfferCodes/{id}
  • POST /v1/winBackOffers
  • DELETE /v1/winBackOffers/{id}

Compliance, age rating and accessibility

  • POST /v1/accessibilityDeclarations
  • PATCH /v1/accessibilityDeclarations/{id}
  • PATCH /v1/ageRatingDeclarations/{id}
  • POST /v1/appEncryptionDeclarations
  • GET /v1/apps/{id}/accessibilityDeclarations
  • GET /v1/apps/{id}/appEncryptionDeclarations
  • PATCH /v1/builds/{id}/relationships/appEncryptionDeclaration

TestFlight

  • GET /v1/apps/{id}/betaAppLocalizations
  • GET /v1/apps/{id}/betaGroups
  • POST /v1/betaAppLocalizations
  • PATCH /v1/betaAppLocalizations/{id}
  • POST /v1/betaAppReviewSubmissions
  • POST /v1/betaBuildLocalizations
  • PATCH /v1/betaBuildLocalizations/{id}
  • POST /v1/betaGroups
  • DELETE /v1/betaGroups/{id}
  • PATCH /v1/betaGroups/{id}
  • GET /v1/betaGroups/{id}/betaTesters
  • DELETE /v1/betaGroups/{id}/relationships/betaTesters
  • POST /v1/betaTesters
  • GET /v1/builds
  • PATCH /v1/builds/{id}
  • GET /v1/builds/{id}/betaAppReviewSubmission
  • GET /v1/builds/{id}/betaBuildLocalizations

App Analytics

  • GET /v1/analyticsReportInstances/{id}/segments
  • POST /v1/analyticsReportRequests
  • GET /v1/analyticsReportRequests/{id}/reports
  • GET /v1/analyticsReports/{id}/instances
  • GET /v1/apps/{id}/analyticsReportRequests

Custom product pages and search keywords

  • PATCH /v1/appCustomProductPageLocalizations/{id}
  • GET /v1/appCustomProductPageLocalizations/{id}/relationships/searchKeywords
  • GET /v1/appCustomProductPageVersions/{id}/appCustomProductPageLocalizations
  • POST /v1/appCustomProductPages
  • DELETE /v1/appCustomProductPages/{id}
  • PATCH /v1/appCustomProductPages/{id}
  • GET /v1/apps/{id}/appCustomProductPages
  • GET /v1/apps/{id}/searchKeywords

Review alerts (webhooks)

  • POST /v1/webhookPings
  • POST /v1/webhooks
  • DELETE /v1/webhooks/{id}

Ratings and reviews

  • GET /v1/apps/{id}/customerReviews
  • POST /v1/customerReviewResponses
  • DELETE /v1/customerReviewResponses/{id}