> **For coding agents and LLMs:** This is one Social Fetch marketing page (markdown export). For API orientation start with [`/llms.txt`](https://www.socialfetch.dev/llms.txt); for auth and crawl rules use [`/agents.txt`](https://www.socialfetch.dev/agents.txt); for every operation use [`/llms-endpoints.txt`](https://www.socialfetch.dev/llms-endpoints.txt).

## This page

- **On-site (HTML):** <https://www.socialfetch.dev/platforms/apple-app-store/apps>
- **Markdown (.mdx) URL:** <https://www.socialfetch.dev/platforms/apple-app-store/apps.mdx>

---

# Apple App Store Batch API

Look up up to 200 apps in one request and get one typed row per unique reference, in the order you sent them.

`GET /v1/apple-app-store/apps` takes a repeated `url` parameter of up to 200 app references. Each `url` can be a numeric id such as `284882215`, a bundle id such as `com.google.ios.youtube`, or an App Store link. Every app is looked up in the `country` storefront you pass, and a storefront inside a pasted link is ignored. `language` changes the language of the text.

The answer is `data.storefront`, `data.results` and `data.summary`. Each row has `input`, `requestedAs` (`id` or `bundle_id`), `lookupStatus` and `app`, which is null when that app is not in the storefront. The rows stay in request order with repeats of the same reference dropped, and `summary` counts the unique `requested`, `found` and `notFound` references. The route is billed one credit per unique reference, so a batch of 20 references costs 20 credits. An id and its bundle id are separate references.

## Request

- **Endpoint:** `GET /v1/apple-app-store/apps`
- **Credits:** 1 credit per app reference
Up to 200 app references per request
Max 200 credits
Failed requests are free
- **Input:** by app id or bundle id
- **Full reference:** [docs](https://www.socialfetch.dev/docs/api/v1/apple-app-store/apps/get)
- **Platform page:** [/platforms/apple-app-store](https://www.socialfetch.dev/platforms/apple-app-store)

## FAQ

### How do I send multiple apps?

Repeat the url query parameter, for example url=284882215&url=com.google.ios.youtube, or send an App Store link and the id inside it is used. Up to 200 unique references are accepted in one request; sending the same app id or bundle id twice, in any form, keeps one row and charges once. An id and its bundle id are different references.

### Is the storefront inside a link used?

No. Every app is looked up in the country storefront you pass, and a gb or jp segment inside a pasted link is ignored. Pass country when you want a storefront other than the default us.

### How is a batch billed?

One credit per unique requested reference. A batch of 20 references charges 20 credits, and a row that comes back not_found is still a requested app. Repeating the same app id or bundle id in any form keeps one row and charges once. An id and its bundle id are different references. meta.creditsCharged is the billing source of truth.

### How do I know which app a row belongs to?

results[].input is the reference as you sent it, and requestedAs says whether it was taken as an id or a bundle id. The rows keep request order, so a missing app does not shift the rest. Repeats of one reference are dropped.

### What happens when an app is missing?

lookupStatus is not_found and app is null for that row. The rest of the batch is still returned, and summary.notFound counts the misses.

### How many credits does a batch 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.
