App Analysis
AI-powered review analysis that extracts pros and cons from user reviews.
Endpoint
GET /api/insights/{store}/app/{bundleId}/analysis/
Path Parameters
| Parameter | Required | Description |
|---|---|---|
store | Yes | apple, google, or - (unified cross-platform) |
bundleId | Yes | App bundle identifier |
When store is -, the API fetches reviews from both stores and produces a unified analysis.
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
country | string | Smart fallback | Country code |
lang | string | en | Language for the analysis output |
Example Request
GET /api/insights/-/app/com.spotify.music/analysis/?country=us&lang=en
Response
Returns an AI-generated analysis of the app’s reviews:
{
"platform": "unified",
"bundleId": "com.spotify.music",
"totalReviews": 45,
"analysisDate": "2025-02-25T10:30:00.000Z",
"pros": [
"Excellent music discovery and personalized playlists",
"Clean, intuitive interface",
"Great podcast integration",
"Seamless cross-device experience",
"High-quality audio streaming"
],
"cons": [
"Frequent ads on free tier",
"Shuffle algorithm feels repetitive",
"Occasional playback issues",
"Battery drain on mobile devices",
"Limited offline features for free users"
],
"platforms": {
"apple": { "reviews": 20, "available": true },
"google": { "reviews": 25, "available": true }
}
}
The analysis examines up to 30 recent reviews with meaningful content. If the OpenAI API is unavailable, the endpoint falls back to keyword-based extraction.
Cache
This endpoint uses private caching only (no edge cache) since results are AI-generated and may vary:
| Header | Value |
|---|---|
Cache-Control | private, max-age=7200 |
Errors
| Status | Description |
|---|---|
| 400 | Missing/invalid store or bundleId |
| 404 | App not found or no reviews available |
| 500 | Upstream API or AI analysis failure |