List published reviews across a vacation rental manager
View .mdGET /v1/developer/vacation-rental-manager/reviews
Operation ID: listVacationRentalManagerReviews
Returns collection-wide published reviews, newest first. Ratings are normalized to a 1–5 scale before minRating filtering; Booking.com raw ratings use a 1–10 scale and are divided by two. meta.aggregate covers all public reviews of published homes in the granted collection, regardless of recentDays, minRating or pagination. reviewCount includes unrated reviews; ratedReviewCount is the denominator of overallRating (null when none are rated). stayMonth is emitted only when the review raw payload matches a stored reservation confirmation code.
Contract status
Section titled “Contract status”| Field | Value |
|---|---|
| Maturity | beta |
| Required capability | reviews.read |
| Freshness class | published-content |
| Quota cost | 1 |
All operations require a Kismet Developer Bearer credential. Collection and resource authority is resolved from the credential’s installation grants; identifiers in the URL never grant access.
Request parameters
Section titled “Request parameters”| Name | In | Type | Required | Description |
|---|---|---|---|---|
recentDays |
query | integer | no | Include reviews from this many days before the request time. |
minRating |
query | number | no | Minimum normalized 1–5 rating. |
limit |
query | integer | no | |
cursor |
query | string | no |
Request body
Section titled “Request body”This operation has no JSON request body.
Set KISMET_API_ORIGIN=https://api.ksmt.app and configure KISMET_DEVELOPER_API_KEY in your environment. Run server-credential requests from your backend, not browser code.
curl --request GET \ "$KISMET_API_ORIGIN/v1/developer/vacation-rental-manager/reviews" \ --header "Authorization: Bearer $KISMET_DEVELOPER_API_KEY" \ --header "Accept: application/json"Responses
Section titled “Responses”| Status | Meaning |
|---|---|
| 200 | Success. |
| 400 | Invalid request parameters or body. |
| 401 | Missing, invalid, expired, or inappropriate credential/session. |
| 403 | Credential lacks the required grant/capability, or an origin/CSRF check failed. |
| 429 | Rate limit or quota exceeded; inspect response metadata before retrying. |
| 503 | A required Kismet dependency is temporarily unavailable. |
200 response example
Section titled “200 response example”{ "data": [ { "id": "44444444-4444-4444-8444-444444444444", "channel": "airbnb2", "platform": "airbnb", "overallRating": 5, "reviewText": "Wonderful stay — spotless and quiet.", "hostResponse": null, "reviewerDisplayName": "Jamie", "reviewDate": "2026-05-20T00:00:00.000Z", "categoryRatings": { "cleanliness": 5, "accuracy": 5, "checkin": 5, "communication": 5, "location": 4.5, "value": 5 }, "personas": [], "features": [], "season": null, "stayMonth": "2026-04", "vacationRental": { "id": "11111111-1111-4111-8111-111111111111", "slug": "safe-cabin", "name": "Safe Cabin" } } ], "page": { "limit": 20, "nextCursor": null }, "meta": { "asOf": "2026-05-20T00:00:00.000Z", "recentDays": 15, "aggregate": { "overallRating": 4.7, "reviewCount": 120, "ratedReviewCount": 118, "scope": "published_collection" } }}200 response schema
Section titled “200 response schema”Content type: application/json. Required fields, nullable values, and nested structures are defined below.
View complete response schema
{ "type": "object", "additionalProperties": false, "required": [ "data", "page", "meta" ], "properties": { "data": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": [ "id", "channel", "overallRating", "reviewText", "hostResponse", "reviewerDisplayName", "reviewDate", "categoryRatings", "personas", "features", "season", "platform", "vacationRental" ], "properties": { "id": { "type": "string" }, "channel": { "type": "string" }, "overallRating": { "type": [ "null", "number" ] }, "reviewText": { "type": [ "null", "string" ] }, "hostResponse": { "type": [ "null", "string" ] }, "reviewerDisplayName": { "type": [ "null", "string" ] }, "reviewDate": { "type": [ "null", "string" ], "format": "date-time" }, "categoryRatings": { "type": "object", "additionalProperties": false, "required": [ "cleanliness", "accuracy", "checkin", "communication", "location", "value" ], "properties": { "cleanliness": { "type": [ "null", "number" ] }, "accuracy": { "type": [ "null", "number" ] }, "checkin": { "type": [ "null", "number" ] }, "communication": { "type": [ "null", "number" ] }, "location": { "type": [ "null", "number" ] }, "value": { "type": [ "null", "number" ] } } }, "personas": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": [ "slug", "label", "confidence", "source" ], "properties": { "slug": { "type": "string" }, "label": { "type": "string" }, "confidence": { "type": [ "null", "number" ] }, "source": { "type": "string", "enum": [ "ai", "manual" ] } } } }, "features": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": [ "slug", "label", "confidence", "source" ], "properties": { "slug": { "type": "string" }, "label": { "type": "string" }, "confidence": { "type": [ "null", "number" ] }, "source": { "type": "string", "enum": [ "ai", "manual" ] } } } }, "season": { "anyOf": [ { "type": "null" }, { "type": "object", "additionalProperties": false, "required": [ "season", "source" ], "properties": { "season": { "type": "string" }, "source": { "type": "string", "enum": [ "derived", "ai", "manual" ] } } } ] }, "platform": { "type": "string", "enum": [ "airbnb", "vrbo", "booking", "other" ], "description": "Normalized platform; Booking.com ratings are normalized from 1–10 to 1–5 before filtering." }, "stayMonth": { "type": "string", "pattern": "^\\d{4}-\\d{2}$" }, "vacationRental": { "type": "object", "additionalProperties": false, "required": [ "id", "slug", "name" ], "properties": { "id": { "type": "string" }, "slug": { "type": "string" }, "name": { "type": "string" } } } } } }, "page": { "type": "object", "additionalProperties": false, "required": [ "nextCursor", "limit" ], "properties": { "nextCursor": { "type": [ "null", "string" ] }, "limit": { "type": "integer" } } }, "meta": { "type": "object", "additionalProperties": false, "required": [ "asOf", "recentDays" ], "properties": { "asOf": { "type": "string", "format": "date-time" }, "recentDays": { "type": [ "null", "integer" ] }, "aggregate": { "type": "object", "additionalProperties": false, "required": [ "overallRating", "reviewCount", "ratedReviewCount", "scope" ], "properties": { "overallRating": { "type": [ "null", "number" ], "minimum": 0, "maximum": 5 }, "reviewCount": { "type": "integer", "minimum": 0 }, "ratedReviewCount": { "type": "integer", "minimum": 0 }, "scope": { "type": "string", "enum": [ "published_collection" ] } } } } } }}