Skip to content
Scrappa Get API key
Trip.com API 1 credit / request

Trip.com Hotel Reviews API Documentation

GET https://scrappa.co/api/tripcom/hotels/reviews

Trip.com Hotel Reviews API Documentation Get the guest reviews of one hotel, 10 to 30 per page, sorted by relevance, date or score. Each review has the id, text, score out of 10, ISO date, stay date, language, traveller type, room name, reviewer, helpful count and the answer of the hotel. The summary has the total, the sub scores and the counts per traveller type, language and room type. The language of each review is its own: Scrappa does not filter reviews by language. The score label (for example Superb) is set only for scores of 8 and above: below 8 it is null. A page past the last page returns an empty list and costs nothing. Cost: 1 credit.

Trip.com Hotel Reviews API Documentation 1 credit / request

Endpoint

Request preview
GET
https://scrappa.co/api/tripcom/hotels/reviews
Auth header
x-api-key
Cost
1 credit / request
hotel_id = 1234567890
Response preview
200 OK
{
    "data": {
        "page": 1,
        "sort": "recent",
        "total": 562,
        "reviews": [
            {
                "date": "2026-10-26T23:57:41",
                "text": "Everyone was kind and helpful. Really nice breakfast. Environmentally positive approach.",
                "score": 10,
                "photos": [],
                "language": "en",
                "reviewer": "Guest User",
                "review_id": "2153660713",
...

Parameters

Start with the required fields, then add optional filters only when your use case needs them.

Runnable path

1 required parameter needed before sending a request.

3 optional filters available.

hotel_id string Required

Trip.com hotel id from the suggest or search endpoint. Example: 718146.

Example value 1234567890
page integer Optional

Page number, 1 to 100. Defaults to 1.

Example value 1
page_size integer Optional

Reviews per page, 10 to 30. Defaults to 10.

Example value 10
sort string Optional

relevant (default), recent, rating_desc or rating_asc.

Example value relevance

Response Schema

Example response fields are illustrative; inspect the JSON before integrating.

Example response fields

Scan these fields before integrating.

data meta success
JSON Response
200 OK
{
    "data": {
        "page": 1,
        "sort": "recent",
        "total": 562,
        "reviews": [
            {
                "date": "2026-10-26T23:57:41",
                "text": "Everyone was kind and helpful. Really nice breakfast. Environmentally positive approach.",
                "score": 10,
                "photos": [],
                "language": "en",
                "reviewer": "Guest User",
                "review_id": "2153660713",
                "room_name": "Superior Double Room",
                "stay_date": "2026-10-01",
                "sub_scores": {
                    "room": 10,
                    "service": 10,
                    "location": 10,
                    "amenities": 10
                },
                "hotel_reply": "Dear Guest, thank you for sharing your experience with us. We are delighted to hear that everyone was kind and helpful, and that you enjoyed a really nice breakfast. We are also pleased that you appreciated our environmentally positive approach. Your recognition means a great deal to our team, and we look forward to welcoming you back for another wonderful stay.Best regards, Xue",
                "recommended": true,
                "score_label": "Outstanding",
                "helpful_count": 0,
                "traveller_type": "Couple",
                "reviewer_country": null
            }
        ],
        "summary": {
            "scale": 10,
            "score": 9.2,
            "total": 562,
            "languages": [
                {
                    "name": "English",
                    "count": 125
                },
                {
                    "name": "Chinese",
                    "count": 330
                }
            ],
            "room_types": [
                {
                    "name": "Classic Room",
                    "count": 207
                },
                {
                    "name": "Superior Double Room",
                    "count": 137
                }
            ],
            "service_score": 9.2,
            "location_score": 9.4,
            "amenities_score": 8.9,
            "traveller_types": [
                {
                    "name": "Business traveler",
                    "count": 79
                },
                {
                    "name": "Family",
                    "count": 112
                }
            ]
        },
        "has_more": true,
        "hotel_id": "718146",
        "page_size": 10
    },
    "meta": {
        "billable": true,
        "endpoint_family": "hotel_reviews"
    },
    "success": true
}

Errors

Handle these documented responses before retrying or showing customer-facing failures.

422

Validation Error

A query parameter is missing or invalid. This response is not billable.

{
    "errors": {
        "hotel_id": [
            "A hotel id is required. Take it from the suggest or search endpoint."
        ]
    },
    "message": "The request validation failed"
}
404

Resource Not Found

The id is unknown. This response is not billable.

{
    "meta": {
        "billable": false,
        "retryable": false,
        "endpoint_family": "trip_com"
    },
    "error": {
        "code": "NOT_FOUND",
        "message": "The requested Trip.com resource was not found."
    },
    "success": false
}
502

Unexpected Upstream Answer

Trip.com answered with a page or payload Scrappa cannot read. This response is not billable. Retry later.

{
    "meta": {
        "billable": false,
        "retryable": true,
        "endpoint_family": "trip_com"
    },
    "error": {
        "code": "PARSER_DRIFT",
        "message": "The Trip.com API is temporarily unavailable. Please retry."
    },
    "success": false
}
503

Upstream Unavailable

Trip.com did not answer after one retry. This response is not billable. Retry later.

{
    "meta": {
        "billable": false,
        "retryable": true,
        "endpoint_family": "trip_com"
    },
    "error": {
        "code": "UPSTREAM_UNAVAILABLE",
        "message": "The Trip.com API is temporarily unavailable. Please retry."
    },
    "success": false
}

Generate Code with AI

Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.

Try It Live

Test this endpoint in our interactive playground with real data.