API Reference
Reviews
Read the reviews customers have left for a business, including the rating breakdown and per-staff reviews. Reviews are read-only via API keys; customers submit reviews from the Salonify apps.
Scope and plan
Reviews are read-only and require the
reviews:read scope. API keys are available on the PRO and ENTERPRISE plans.List reviews
GET
/businesses/{businessId}/reviewsreviews:readPRO plan
Path parameters
Query parameters
curl "https://api.salonify.eu/api/v1/businesses/b_8f3a/reviews?minRating=4&limit=20" \
-H "X-API-Key: sk_live_..."Response
{
"data": [
{
"id": "rv_31",
"rating": 5,
"comment": "Best cut I've had in years.",
"createdAt": "2026-06-10T16:40:00.000Z",
"customer": { "id": "cu_9a21", "firstName": "Anna", "lastName": "B." },
"booking": { "id": "bk_3f9c2a", "date": "2026-06-09", "services": [{ "serviceName": "Women's Cut" }] },
"response": { "id": "rr_5", "content": "Thank you Anna!", "createdAt": "2026-06-11T08:00:00.000Z" }
}
],
"meta": { "total": 142, "page": 1, "limit": 20, "totalPages": 8 }
}Retrieve a review
GET
/reviews/{reviewId}reviews:readPRO plan
Path parameters
curl "https://api.salonify.eu/api/v1/reviews/rv_31" \
-H "X-API-Key: sk_live_..."Response
{
"id": "rv_31",
"rating": 5,
"comment": "Best cut I've had in years.",
"createdAt": "2026-06-10T16:40:00.000Z",
"customer": { "id": "cu_9a21", "firstName": "Anna", "lastName": "B." }
}Get review statistics
GET
/businesses/{businessId}/reviews/statsreviews:readPRO plan
curl "https://api.salonify.eu/api/v1/businesses/b_8f3a/reviews/stats" \
-H "X-API-Key: sk_live_..."Response
{
"averageRating": 4.8,
"totalReviews": 142,
"ratingDistribution": { "1": 1, "2": 2, "3": 5, "4": 24, "5": 110 },
"recentTrend": "up"
}Per-staff reviews
Reviews for a single team member are available at
GET /businesses/{businessId}/staff/{staffId}/reviews with the same reviews:read scope and the same query filters. Submitting, responding to, approving, or reporting reviews is done from the Salonify dashboard and apps, not via API keys.