App Comparison
Fetch and compare an app across Apple App Store and Google Play in a single request.
Endpoint
GET /api/insights/comparison/
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
appleId | string | Conditional | Apple app ID (at least one of appleId/googleId required) |
googleId | string | Conditional | Google Play package name |
country | string | No | Country code (default: us) |
lang | string | No | Language code (default: en) |
Example Request
GET /api/insights/comparison/?appleId=com.spotify.client&googleId=com.spotify.music&country=us
Response
Returns comparison data for both stores, plus fallback screenshots if the Apple listing has none:
{
"apple": {
"info": {
"appId": "com.spotify.client",
"title": "Spotify: Music and Podcasts",
"developer": { "name": "Spotify AB" },
"screenshots": { "phone": [...] },
...
},
"ratings": { ... },
"reviews": [...]
},
"google": {
"info": { ... },
"ratings": { ... },
"reviews": [...]
},
"fallbackScreenshots": []
}
The fallbackScreenshots array is populated when the Apple listing has no screenshots — the API attempts to fetch them from Google Play as a best-effort fallback.
Cache
| Header | Value |
|---|---|
s-maxage | 86400 (24 hours) |
max-age | 3600 (1 hour) |
stale-while-revalidate | 7200 (2 hours) |
Errors
| Status | Description |
|---|---|
| 400 | Neither appleId nor googleId provided |
| 500 | Upstream API failure |