app-store · fetcher-sh — Claude Code skill: App Store data without a developer account
This skill gives your agent search and detail access to iOS apps, reviews and developer catalogs through a paid HTTP API.
npx skills add fetcher-sh/fetcher-skills --skill app-store -a claude-codeWhat app-store does
The skill points your agent at https://appstore.fetcher.sh, an alternative to the official App Store API. Nine GET endpoints cover keyword search, full app and bundle records, reviews sorted by recency or helpfulness, similar apps, and a developer's catalog. Storefronts are selectable — us, jp, de and others. No Apple Developer Program membership is involved.
Payment comes in two flavours. Prepaid credits: grab a bby_live_... key and send it as Authorization: Bearer $FETCHER_API_KEY. Or pay per call in USDC over x402 — skip the header, and an unpaid request answers 402 with machine-readable payment terms; @x402/fetch signs and retries for you. Each call costs $0.003.
There is an MCP route too, at https://appstore.fetcher.sh/mcp, using the same Bearer key in the headers. Free tools are search_endpoints, describe_endpoint and check_balance; paid ones are fetch_data, topup_credits and the appstore_apps shortcut. No rate limits apply, and upstream failures are not refunded because settlement happens before delivery. Get the key first — without it, x402 is your only option.
What it helps with
- find iOS apps by keyword in a specific country storefront
- pull an app's reviews sorted by helpfulness
- list apps similar to a given one
- browse a developer's full app catalog
- compare search results across country storefronts
Example prompts for the agent
- Search the
usstorefront for "habit tracker" and show me the first ten apps - Pull reviews for app
324684580sorted by helpfulness - Show the app catalog for developer
284882218
How to install app-store
1Skills CLI (Vercel)
npx skills add fetcher-sh/fetcher-skills --skill app-store -a claude-code2Manually: put the files in place
~/.claude/skills/app-store/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/app-store/
1Skills CLI (Vercel)
npx skills add fetcher-sh/fetcher-skills --skill app-store -a codex2Manually: put the files in place
.agents/skills/app-store/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add fetcher-sh/fetcher-skills --skill app-store -a cursor2Manually: put the files in place
.cursor/skills/app-store/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install fetcher-sh/fetcher-skills app-store2Manually: put the files in place
.github/skills/app-store/SKILL.md1Skills CLI (Vercel)
npx skills add fetcher-sh/fetcher-skills --skill app-store -a gemini-cli2Platform CLI
gemini skills install https://github.com/fetcher-sh/fetcher-skills --path skills/app-storeManually: put the files in place
.devin/skills/app-store/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add fetcher-sh/fetcher-skills --skill app-store -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about app-store
How do I install app-store in Claude Code?
Run npx skills add fetcher-sh/fetcher-skills --skill app-store -a claude-code. The skill lands at ~/.claude/skills/app-store/SKILL.md.
What does the app-store skill do?
It lets your agent search iOS apps and bundles, read their details and reviews, find similar apps, and fetch developer catalogs over HTTP. You can target any country storefront.
Do I need an API key?
For credit-based payment, yes — a bby_live_... key goes in the Authorization header. Without one you can pay per call in USDC via x402 and leave the header out.
Source text
SKILL.md · MIT
---
name: app-store
description: >-
An Apple App Store API alternative on fetcher.sh — pay-per-call in USDC via
x402, or prepaid credits with a Bearer key, no Apple Developer Program
membership. Use when the user wants to search iOS apps by keyword in any
country's storefront, fetch an app's or app bundle's full details, reviews
sorted by recent/helpful, apps similar to a given app, search or fetch app
bundles, or fetch a developer's app catalog. Also covers iOS app store
optimization (ASO) research, competitor app monitoring, localized
storefront comparison, and app discovery without Apple Developer Program
access.
keywords:
- app-store
- apple-app-store
- ios-apps
- app-store-api
- app-store-optimization
- aso
- itunes-api
- x402
- ai-agent
---
# Apple App Store API
App Store app and bundle search, details, reviews, similar-apps, and
developer catalogs across any country storefront — one plain HTTP GET per
call, paid as you go. No Apple Developer Program membership, no App Store
Connect access, no scraping the storefront HTML.
Base URL: `https://appstore.fetcher.sh`
## Authentication
Two ways to pay, same data — full mechanics in the [`fetcher`
skill](../fetcher/SKILL.md):
```bash
# 1. Prepaid credits (recommended — get a key at https://fetcher.sh/topup
# or via POST /api/credits/topup, see the fetcher skill)
export FETCHER_API_KEY="bby_live_xxxxxxxxxxxx"
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
"https://appstore.fetcher.sh/api/apps?term=meditation"
# 2. x402 pay-per-call — omit the header; a GET with no payment returns 402
# with machine-readable payment requirements (USDC on Base, Polygon,
# Arbitrum, Monad, or Solana). @x402/fetch signs and retries automatically.
```
Every response is `{ "status": number, "message": string, "data": ... }`; the
HTTP status mirrors `status`.
## Endpoints (9 — all GET, $0.003/call)
| Endpoint | What it returns |
| --- | --- |
| `/api/apps` | Apps matching a keyword; page and country storefront filters |
| `/api/apps/{appId}` | An app's full details |
| `/api/apps/{appId}/reviews` | An app's reviews |
| `/api/apps/{appId}/similar` | Apps similar to a given app |
| `/api/bundles` | App bundles matching a keyword |
| `/api/bundles/{bundleId}` | A bundle's full details |
| `/api/bundles/{bundleId}/reviews` | A bundle's reviews |
| `/api/bundles/{bundleId}/similar` | Bundles similar to a given bundle |
| `/api/developers/{developerId}` | A developer's full app catalog |
Required on `/api/apps` and `/api/bundles`: `term`. Optional everywhere:
`country` (storefront, e.g. `us`, `jp`, `de`), `lang`, `page`. Reviews
support `sort` (`recent`, `helpful`).
## Scenarios
**US storefront search:**
```bash
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
--data-urlencode "term=habit tracker" -G \
--data-urlencode "country=us" \
"https://appstore.fetcher.sh/api/apps"
```
**Japanese storefront search:**
```bash
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
--data-urlencode "term=camera" -G \
--data-urlencode "country=jp" \
"https://appstore.fetcher.sh/api/apps"
```
**An app's full details, then reviews sorted by helpfulness:**
```bash
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
--data-urlencode "country=us" -G \
"https://appstore.fetcher.sh/api/apps/324684580"
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
--data-urlencode "country=us" -G \
--data-urlencode "sort=helpful" \
"https://appstore.fetcher.sh/api/apps/324684580/reviews"
```
**Apps similar to a given app:**
```bash
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
--data-urlencode "country=us" -G \
"https://appstore.fetcher.sh/api/apps/324684580/similar"
```
**Search and fetch app bundles:**
```bash
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
--data-urlencode "term=photo editing suite" -G \
"https://appstore.fetcher.sh/api/bundles"
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
--data-urlencode "country=us" -G \
"https://appstore.fetcher.sh/api/bundles/1234567890"
```
**A developer's full app catalog:**
```bash
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
"https://appstore.fetcher.sh/api/developers/284882218"
```
## MCP
```json
{
"mcpServers": {
"app-store": {
"url": "https://appstore.fetcher.sh/mcp",
"headers": { "Authorization": "Bearer bby_live_..." }
}
}
}
```
Free: `search_endpoints`, `describe_endpoint`, `check_balance`. Paid:
`fetch_data` (any endpoint above), `topup_credits`, plus the named shortcut
`appstore_apps`. Drop the `headers` block to pay per call with x402 instead —
see the [`fetcher` skill](../fetcher/SKILL.md) for the full flow.
## Errors
- `400` — missing/invalid parameter (message names it)
- `401` — unknown or rotated key
- `402` — payment required (x402 challenge) or `topup_required` (credits
exhausted)
- `404` — not a priced path
- No rate limits; no refunds on upstream failures (settlement precedes
delivery)
## Reference
- Full agent setup: <https://appstore.fetcher.sh/skill.md>
- OpenAPI 3.1 contract: <https://appstore.fetcher.sh/openapi.json>
- Condensed catalog: <https://appstore.fetcher.sh/llms.txt>
- Payment, credits, and MCP deep dive: [`fetcher` skill](../fetcher/SKILL.md)
- Site: <https://appstore.fetcher.sh>
© fetcher-sh · MIT · fetcher-sh/fetcher-skills
Similar skills
Everything for Mobile →app-store by other authors comes first.