Apple App Store hub

Apple App Store Details API

Everything the app record leaves out: rating breakdown, privacy label, versions, in-app purchases, similar apps and per-platform records.

GET /v1/apple-app-store/apps/{appId}/details

1 credit Failed requests are free

About this endpoint

GET /v1/apple-app-store/apps/{appId}/details takes the numeric app id and an optional country storefront. The response names the two parts in data.sources.page and data.sources.catalogue, each ok, failed or skipped. data.details carries the page part: subtitle, url, ratings.histogram, chartPosition, inAppPurchases (at most 10), topInAppPurchases, versionHistory, privacy, developerLinks, compatibility, capabilities, accessibilityFeatures, events, featuredReviews, similarApps, developerApps (up to 15), featuredIn, bundleParents, screenshots and previewVideos.

data.catalogue carries the per-platform record: ratings, ageRating, chartPositions, privacy, requirements, accessibility, distributionKind, isAppleArcade, isPreorder, gameCenterFeatures, macCompatible, genres, tags, developer, events and platforms, where each platform has its own price, version history, developer links, capabilities, icon, screenshots, preview videos, editorial notes and Mac support. ratings.average is rounded to one decimal, as the App Store displays it; use the app route for the precise average. When one part fails, the other is still returned, the failed field is null, and data.sources says which failed. The request is still billed, so check sources before treating a null as missing data.

Apple App Store Details API FAQ

Why are details or catalogue null?

Read data.sources. page and catalogue are ok, failed or skipped. failed means that part is temporarily unavailable; the other part is still returned. skipped means the app is not in this storefront, so neither part is returned.

Can I use a bundle id on the details route?

No. The details route takes a numeric app id. Look the app up by bundle id with GET /v1/apple-app-store/apps/{appId} first and use the id it returns.

What can I get here that the app route does not return?

ratings.histogram, privacy, versionHistory, inAppPurchases, topInAppPurchases, similarApps, featuredReviews, in-app events, developer links, compatibility, capabilities, accessibility features, per-platform records, chart positions, tags, requirements and preview videos.

Are old versions returned?

Yes. data.details.versionHistory lists versions newest first, and each catalogue platform has its own versionHistory. Apple publishes at most 25 versions per platform, so an older app can have more history than the response shows.

Is a partial details response still billed?

We do bill it, because the request completed. data.sources and the response meta show which parts are present. Retry when the missing part matters, or use the app route for the core record.

How many credits does the details route cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged: that field is the billing source of truth.