> ## Documentation Index
> Fetch the complete documentation index at: https://mindcase.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Booking Reviews

> Extract Booking.com hotel reviews, ratings, stars, and reviewer details from hotel URLs

`$0.8 / 1k reviews`

Extract Booking.com hotel reviews, ratings, stars, and reviewer details from hotel URLs

## Endpoint

`POST /api/v1/agents/booking/reviews/run`

## Parameters

<ParamField body="urls" type="array" required>
  **List** · Booking.com hotel URLs to scrape reviews from. One per line.
</ParamField>

<ParamField body="maxReviewsPerHotel" type="integer" default={100}>
  **Number** · Reviews per hotel. Use 0 for all.
</ParamField>

<ParamField body="sortBy" type="string" default="f_relevance">
  **Dropdown** · Sort order for reviews.

  **Options:** `f_relevance`, `f_recent_desc`, `f_recent_asc`, `f_score_desc`, `f_score_asc`

  *Legend: `f_relevance` = Most relevant, `f_recent_desc` = Newest first, `f_recent_asc` = Oldest first, `f_score_desc` = Highest scores, `f_score_asc` = Lowest scores*
</ParamField>

<ParamField body="cutoffDate" type="date">
  **Date picker** · Stop loading older/newer reviews past this date. Only applies when Sort By = Newest first OR Oldest first.
</ParamField>

<ParamField body="reviewScores" type="array">
  **Multi-select** · Filter to reviews in these score bands. Leave empty for all.

  **Options:** `review_adj_superb`, `review_adj_good`, `review_adj_average_passable`, `review_adj_poor`

  *Legend: `review_adj_superb` = Superb (9+), `review_adj_good` = Good (7-9), `review_adj_average_passable` = Passable (5-7), `review_adj_poor` = Poor (3-5)*
</ParamField>

## Response columns

| Field                  | Display name           | Type   |
| ---------------------- | ---------------------- | ------ |
| `hotelUrl`             | Hotel URL              | url    |
| `reviewTitle`          | Review Title           | text   |
| `liked`                | Liked                  | text   |
| `disliked`             | Disliked               | text   |
| `rating`               | Rating                 | rating |
| `reviewer`             | Reviewer               | text   |
| `reviewerLocation`     | Reviewer Location      | text   |
| `reviewerAvatar`       | Reviewer Avatar        | url    |
| `travelerType`         | Traveler Type          | text   |
| `nights`               | Nights                 | number |
| `room`                 | Room                   | text   |
| `checkIn`              | Check-In               | text   |
| `checkOut`             | Check-Out              | text   |
| `posted`               | Posted                 | text   |
| `language`             | Language               | text   |
| `helpfulVotes`         | Helpful Votes          | number |
| `hotelRating`          | Hotel Rating           | rating |
| `hotelRatingLabel`     | Hotel Rating Label     | text   |
| `hotelReviews`         | Hotel Reviews          | number |
| `topSubscoreCategory`  | Top Subscore Category  | text   |
| `topSubscore`          | Top Subscore           | rating |
| `totalCategoryReviews` | Total Category Reviews | number |
| `scoreFilter`          | Score Filter           | text   |
| `page`                 | Page                   | number |
| `images`               | Images                 | text   |

## Example

<CodeGroup>
  ```bash curl theme={null}
  curl -X POST https://api.mindcase.co/api/v1/agents/booking/reviews/run \
    -H "Authorization: Bearer mk_live_abc123def456" \
    -H "Content-Type: application/json" \
    -d '{
    "params": {
      "urls": [
        {
          "url": "https://www.booking.com/hotel/us/the-plaza.en-gb.html"
        }
      ],
      "maxReviewsPerHotel": 10
    }
  }'
  ```

  ```python Python theme={null}
  import requests

  resp = requests.post(
      "https://api.mindcase.co/api/v1/agents/booking/reviews/run",
      headers={"Authorization": "Bearer mk_live_abc123def456"},
      json={"params": {
      "urls": [
          {
              "url": "https://www.booking.com/hotel/us/the-plaza.en-gb.html"
          }
      ],
      "maxReviewsPerHotel": 10
  }},
  )
  data = resp.json()
  ```
</CodeGroup>

### Example response

```json Response theme={null}
{
  "job_id": "job_7f3a2b1c",
  "status": "completed",
  "data": [
    {
      "hotelUrl": "https://www.booking.com/hotel/us/the-plaza.en-gb.html",
      "reviewTitle": "Expereience worth for it",
      "liked": "Great location. Very authentic and elegantly decorated ambiance. Kind and helpful service.",
      "disliked": "A bit expensive but worth for experience",
      "rating": 10,
      "reviewer": "Muhammet",
      "reviewerLocation": "Turkey",
      "reviewerAvatar": "https://xx.bstatic.com/static/img/review/avatars/ava-m.png",
      "travelerType": "Couple",
      "nights": 1,
      "room": "Plaza Room",
      "checkIn": "2026-04-24",
      "checkOut": "2026-04-25",
      "posted": "2026-04-29T15:18:40.000Z",
      "language": "en",
      "helpfulVotes": 0,
      "hotelRating": 8.5,
      "hotelRatingLabel": "Very good",
      "hotelReviews": 556,
      "topSubscoreCategory": null,
      "topSubscore": null,
      "totalCategoryReviews": 556,
      "scoreFilter": "ALL",
      "page": 1,
      "images": []
    }
  ]
}
```
