GET

Agoda Review Comments API

Fetch Agoda's own guest reviews for a hotel, page by page.

Copy for your AI agent

Paste into Claude, ChatGPT, Cursor or Copilot — endpoint, parameters, response fields and a curl example in Markdown.

Overview

This endpoint returns the same Agoda reviews as the main reviews endpoint: Agoda's own guest reviews only. Reviews Agoda shows from partner sites are not included.

Endpoint URL

GET https://api.stayapi.com/v1/agoda/hotel/reviews/{hotel_id}/comments

Management replies

Returns Agoda's own guest reviews only; reviews Agoda shows from partner sites are not included; pagination (total_count, has_more) covers Agoda's own reviews only. The requested page size is 20; actual counts can differ. Agoda lists English-language reviews first (newest first with the default sort), then reviews in other languages, so for a complete date range, page until has_more is false. Advertised totals do not guarantee every review is accessible. A hotel with no Agoda reviews returns 200 with reviews: [] and total_count 0; a page Agoda keeps blocking returns 502, so retry it later.

reviews[].owner_response is null when no reply is available, or an object with nullable string fields text, published_date, and author. Reply dates preserve source formatting; ISO format and timezone are not guaranteed. Date and author may be null even when text is present.

{"text":"Thank you for your feedback.","published_date":null,"author":"Hotel management"}

review_score is Agoda's own guest score and rating count (not combined with partner sites), never a page average. Its review_count can be higher than pagination.total_count because it includes ratings without written reviews. Available aggregates contain nullable overall, score_text, and review_count. Missing aggregates can be an empty object or null; this endpoint may return null. Do not infer an aggregate from the reviews on this page.

Parameters

Parameter Type Required Description
hotel_id integer Required Agoda hotel ID (path parameter)
page integer Optional Page number for pagination (starts at 1, default: 1)
sorting integer Optional Sort order: 7 = most recent, 6 = highest rating, 5 = lowest rating (default: 7)

Response Format

Success Response

Returns a page of Agoda's own guest reviews with pagination information.

{
  "success": true,
  "hotel_id": 319457,
  "reviews": [...],
  "pagination": {
    "current_page": 1,
    "page_size": 20,
    "total_count": 565,
    "total_pages": 29,
    "has_more": true
  },
  "retrieved_at": "2025-09-04T10:30:00Z"
}

Usage Examples

Get the Newest Reviews

Fetch the first page with the default sort (most recent):

GET /v1/agoda/hotel/reviews/319457/comments?page=1

Get Highest Rated Reviews

Fetch top-rated reviews for showcasing positive feedback:

GET /v1/agoda/hotel/reviews/319457/comments?sorting=6

Paginate Through All Reviews

Increase page until pagination.has_more is false:

GET /v1/agoda/hotel/reviews/319457/comments?page=3

Best Practices

Optimization Tips

  • Page until pagination.has_more is false; English-language reviews come first, then other languages
  • Paginate available reviews; requested page size is 20
  • Use sorting=6 to highlight positive reviews in your application
Request
curl -X GET "https://api.stayapi.com/v1/agoda/hotel/reviews/319457/comments?page=1&sorting=7" \
  -H "X-API-Key: YOUR_API_KEY"
Response
{
  "success": true,
  "hotel_id": 319457,
  "reviews": [
    {
      "review_id": "607467196",
      "rating": 8.0,
      "title": "Very good",
      "comment": "",
      "pros": "Enough space in room, clean and silent.",
      "cons": "Shower is annoying, whole toilet floor is wet after shower...",
      "reviewer": {
        "name": "Eerik",
        "country": "",
        "level": "",
        "group_type": "Business traveler"
      },
      "date": "January 16, 2023",
      "stay_date": "",
      "room_type": "",
      "helpful_count": 0,
      "language": "en",
      "translation": null,
      "photos": [],
      "sub_ratings": {},
      "owner_response": {
        "text": "Dear guest, thank you for taking the time to review us. We are glad the location worked well for you and hope to host you again.",
        "published_date": "2023-01-20T09:00:00+07:00",
        "author": "Hotel Management"
      }
    },
    {
      "review_id": "607467536",
      "rating": 6.0,
      "title": "Will not go again to this hotel---",
      "comment": "",
      "pros": "The place of the hotel was very good. We could reach all parts of town...",
      "cons": "They didn't communicate with me. I contacted them about payment...",
      "reviewer": {
        "name": "Gyorgy",
        "country": "",
        "level": "",
        "group_type": "Business traveler"
      },
      "date": "October 03, 2022",
      "stay_date": "",
      "room_type": "",
      "helpful_count": 0,
      "language": "en",
      "translation": null,
      "photos": [],
      "sub_ratings": {},
      "owner_response": null
    }
  ],
  "pagination": {
    "current_page": 1,
    "page_size": 20,
    "total_count": 565,
    "total_pages": 29,
    "has_more": true
  },
  "retrieved_at": "2025-09-04T10:30:00Z"
}
Browse documentation