Review analytics
GET /analytics/reviews
Returns aggregates computed server-side over the platform reviews of
one shop (shop_id) or all your shops: total count, average rating,
star distribution, reply rate, and the same figures per platform.
Without from/to, aggregates cover the whole history.
Requires the reviews:read scope.
Returns a single object: totals, a rating_distribution keyed by
stars 1 to 5, a reply_rate in percent, and a platforms
array carrying the same figures per platform. Counts are 0 and
averages null when no review matches.
Unlike /reviews, this endpoint covers external platform reviews only;
Dokaa satisfaction surveys are aggregated by /analytics/feedbacks.
Example request
curl "https://api.dokaa.app/v1/analytics/reviews" \
-H "Authorization: Bearer dk_live_..."Query parameters
shop_id(string) – Restrict to a single shop (omit to query all your shops)platform(string) (one of: google, deliveroo, ubereats, tripadvisor, fork) – Restrict to a single platformfrom(string) (format: date) – Only reviews posted on or after this dateto(string) (format: date) – Only reviews posted on or before this date
Responses
200 – Review aggregates
{
"review_count": 4572,
"average_rating": 4.6,
"reply_count": 3980,
"reply_rate": 87.1,
"rating_distribution": {
"1": 128,
"2": 87,
"3": 133,
"4": 526,
"5": 3698
},
"platforms": [
{
"platform": "google",
"review_count": 3076,
"average_rating": 4.7,
"rating_distribution": {
"1": 60,
"2": 40,
"3": 80,
"4": 350,
"5": 2546
}
},
{
"platform": "ubereats",
"review_count": 1087,
"average_rating": 4.5,
"rating_distribution": {
"1": 45,
"2": 30,
"3": 40,
"4": 130,
"5": 842
}
}
]
}401 – Missing, invalid, or revoked API key
403 – The API key does not grant access to this resource
422 – Invalid request parameters
Errors are application/problem+json (RFC 9457) with type, title, status and detail fields.