Base URL: https://api.appeeky.com
All endpoints are versioned under /v1. Authentication is required for all endpoints except /v1/health.
Endpoints
Health & Auth
| Method | Endpoint | Description | Credits |
|---|
| GET | /v1/health | Service health check | 0 |
| GET | /v1/auth/usage | Check your credit usage | 0 |
Apps
| Method | Endpoint | Description | Credits |
|---|
| GET | /v1/apps/:id | Full app metadata (iTunes Lookup) | 2 |
| GET | /v1/apps/:id/intelligence | Intelligence report: revenue, downloads, IAPs, similar apps, sentiment | 5 |
| GET | /v1/apps/:id/reviews | User reviews from Apple RSS (up to 500) | 2 |
| GET | /v1/apps/:id/keywords | All organic keyword rankings for an app | 3 |
| GET | /v1/apps/:id/keywords/trends | Historical rank trend for a keyword | 2 |
| GET | /v1/apps/:id/country-rankings | App’s chart positions across countries | 3 |
Screenshots
| Method | Endpoint | Description | Credits |
|---|
| GET | /v1/apps/:id/screenshots | All screenshots for an app, split by device (iPhone/iPad) | 2 |
| GET | /v1/apps/:id/screenshots/competitors | Compare screenshots between an app and its competitors | 3 |
| GET | /v1/categories/:genreId/top/screenshots | Screenshots for top apps in a category | 3 |
Keywords
| Method | Endpoint | Description | Credits |
|---|
| GET | /v1/keywords/ranks | Apps ranking for a specific keyword | 2 |
| GET | /v1/keywords/suggestions | Apple Search autocomplete suggestions | 1 |
| GET | /v1/keywords/metrics | Search volume and difficulty for a keyword | 2 |
| GET | /v1/keywords/compare | Competitor keyword overlap and gap analysis | 3 |
| GET | /v1/keywords/trending | Keywords with fastest-growing reach | 2 |
| POST | /v1/keywords/track | Add keyword to the daily scraping pipeline | 1 |
Search & Discovery
| Method | Endpoint | Description | Credits |
|---|
| GET | /v1/search | Search apps by keyword or App ID | 1 |
| GET | /v1/categories | List all App Store categories | 1 |
| GET | /v1/categories/:id/top | Top Free / Top Paid / Top Grossing per category | 2 |
| GET | /v1/categories/:id/downloads-to-top | Estimated downloads to reach chart positions | 2 |
| GET | /v1/featured | Apps featured on the App Store Today tab | 3 |
| GET | /v1/new-releases | Recently released apps from Apple RSS | 2 |
| GET | /v1/discover | Trending and noteworthy apps | 2 |
| GET | /v1/discover/new-number-1 | Apps that just reached #1 in their category | 2 |
Success
All successful responses wrap data in a data envelope:
{
"data": {
"trackId": 1617391485,
"trackName": "Block Blast!",
"sellerName": "Hungry Studio",
"primaryGenreName": "Games",
"averageUserRating": 4.7,
"price": 0
}
}
Error
Errors return an error object containing a machine-readable code and a human-readable message:
{
"error": {
"code": "INVALID_APP_ID",
"message": "App ID must be a positive integer"
}
}
Error Codes
Client Errors (4xx)
| Status | Code | Description |
|---|
| 400 | INVALID_APP_ID | App ID is missing or not a positive integer |
| 400 | INVALID_QUERY | Search query is too short (min 2 characters) |
| 400 | INVALID_KEYWORD | Keyword is missing or too short (min 2 characters) |
| 400 | INVALID_COUNTRY | Country code is not a valid ISO 3166-1 alpha-2 code |
| 400 | INVALID_GENRE_ID | Genre ID is not valid |
| 400 | INVALID_SORT | Sort parameter is not one of the allowed values |
| 400 | MISSING_PARAMETER | A required parameter is missing |
| 401 | MISSING_API_KEY | No API key provided in request headers |
| 401 | INVALID_API_KEY | API key is invalid, inactive, or revoked |
| 404 | APP_NOT_FOUND | App does not exist or is unavailable in the specified country |
| 404 | KEYWORD_NOT_FOUND | No ranking data available for this keyword |
| 409 | EMAIL_ALREADY_REGISTERED | Email address already has an active API key |
| 429 | RATE_LIMIT_EXCEEDED | Monthly credit limit has been reached |
Server Errors (5xx)
| Status | Code | Description |
|---|
| 500 | INTERNAL_ERROR | Unexpected server error |
| 500 | DB_ERROR | Database operation failed |
| 502 | UPSTREAM_ERROR | Apple API or upstream service returned an error |
| 503 | SERVICE_UNAVAILABLE | Service temporarily unavailable (maintenance) |
| 504 | UPSTREAM_TIMEOUT | Apple API or upstream service timed out |
All error responses include the error.code field, which is stable and safe to use for programmatic error handling. The error.message field is human-readable and may change.
Endpoints that return lists support pagination via query parameters:
| Parameter | Type | Default | Description |
|---|
limit | integer | 25 | Number of results to return (max varies by endpoint) |
offset | integer | 0 | Number of results to skip |
Example:
GET /v1/apps/1617391485/reviews?country=us&limit=10&offset=20
Paginated responses include a pagination object when applicable:
{
"data": {
"reviews": [ ... ],
"pagination": {
"limit": 10,
"offset": 20,
"total": 487,
"hasMore": true
}
}
}
| Field | Type | Description |
|---|
limit | integer | Number of results returned |
offset | integer | Current offset |
total | integer | Total number of results available |
hasMore | boolean | Whether there are more results to fetch |
Country Codes
Many endpoints accept a country query parameter using ISO 3166-1 alpha-2 codes. If omitted, the default is us.
Common Country Codes
| Code | Country | Code | Country |
|---|
us | United States | jp | Japan |
gb | United Kingdom | kr | South Korea |
de | Germany | cn | China |
fr | France | br | Brazil |
it | Italy | in | India |
es | Spain | au | Australia |
ca | Canada | mx | Mexico |
nl | Netherlands | tr | Turkey |
se | Sweden | sa | Saudi Arabia |
ru | Russia | id | Indonesia |
The full list includes all countries where the iOS App Store is available (175+ storefronts). Use the two-letter ISO 3166-1 alpha-2 country code in lowercase.
HTTP Status Codes
| Status | Meaning | When |
|---|
200 | OK | Request succeeded |
201 | Created | Resource successfully created (e.g., API key registration) |
400 | Bad Request | Invalid parameters, missing required fields |
401 | Unauthorized | Missing or invalid API key |
404 | Not Found | App, keyword, or resource not found |
409 | Conflict | Duplicate resource (e.g., email already registered) |
429 | Too Many Requests | Monthly credit limit exceeded |
500 | Internal Server Error | Unexpected server failure |
502 | Bad Gateway | Upstream service error |
503 | Service Unavailable | Temporary maintenance |
504 | Gateway Timeout | Upstream service timeout |
Key Features
- App Metadata — Complete iTunes Lookup data including description, screenshots, version, size, languages, and age rating
- In-App Purchases — Subscription and IAP names with prices, scraped directly from the App Store product page
- Market Intelligence — Estimated downloads and revenue using power-law models with confidence levels and ranges
- Similar Apps — Competitors via 3-layer matching: keyword overlap, title search + genre filter, and same developer
- Category Charts — Top Free, Top Paid, and Top Grossing per category with genre filtering
- Downloads to Top — Estimated daily downloads needed to reach specific chart positions per category
- Keyword Intelligence — Volume scoring, difficulty analysis, competitor overlap, autocomplete suggestions, and rank trends
- User Reviews — Customer reviews from Apple RSS with sorting and pagination (up to 500 per country)
- App Search — Keyword search or direct App ID lookup via the iTunes Search API
- Country Rankings — Track an app’s chart positions across multiple countries simultaneously
- Featured Apps — App of the Day, Game of the Day, and curated editorial collections from the App Store Today tab
- Trending Keywords — Keywords with the fastest-growing reach, ranked by growth percentage
- Discovery — New releases, trending apps, and apps that just hit #1 in their category