Get review-site distribution
Overview
Review-site distribution for the account dashboard: review counts and average ratings per platform. When no review_site_id filter is applied and there are more than 5 platforms, the top 4 are returned plus a rolled-up "Others" row (weighted-average rating). For hipages platforms, ratings and counts span all connected sites.
Prerequisites
- A bearer token. Callable with Account tokens.
Base URL
| Environment | URL |
|---|---|
| Production | https://production-api.shoutaboutus.com |
| Development | https://development-api.shoutaboutus.com |
Endpoint
GET /api/v1/account/dashboard/get-review-site-distribution
Authentication
-
Requires a bearer token in the
Authorization: Bearer <bearer-token>header. -
Who can call it: Account tokens.
-
Mounted under the
account/dashboardgroup (role-agnostic). -
Scope is the caller's company tree.
-
store_id(if given) is validated by an ownership check; otherwise all of the caller's stores are used.
Rate limit
- No rate limit.
Query parameters
- Query:
store_id(integer, optional) — must belong to the caller's company; omit it to cover all of your locations. - Query:
review_site_id(integer, optional) — filter to one platform; must be an existing review site. When set, the top-5/Others rollup is disabled. - Query:
range_start(stringY-m-d, optional) — both range params must be present for the date filter to apply. - Query:
range_end(stringY-m-d, optional) — must be ≥range_start.
Response
name(string) — review site name (e.g.maps.google,Facebook, orOthers).total_reviews(integer) — review count for the platform (for hipages, unified across all connected sites).avg_rating(number) — average rating to 2 decimals (for hipages, spanning all connected sites).logo(string) — S3 URL of the platform logo image.
200 Success · 200
200{
"data": [
{
"name": "hipages",
"total_reviews": 532,
"avg_rating": 4.31,
"logo": "https://cdn.example.com/logos/hipages.png"
},
{
"name": "Google",
"total_reviews": 318,
"avg_rating": 4.52,
"logo": "https://cdn.example.com/logos/google.png"
},
{
"name": "Others",
"total_reviews": 214,
"avg_rating": 4.08,
"logo": "https://cdn.example.com/logos/others.png"
}
]
}Errors
| Status | Meaning |
|---|---|
401 | The bearer token is missing, expired or invalid |
422 | The request failed validation — the response names the fields |
500 | Unexpected server error |
Example request
curl --request GET \
--url "https://production-api.shoutaboutus.com/api/v1/account/dashboard/get-review-site-distribution?store_id=123&review_site_id=123&range_start=2026-01-01&range_end=2026-01-31" \
--header 'Authorization: Bearer <bearer-token>' \
--header 'Accept: application/json'Updated 8 days ago
Did this page help you?
