# Agoda Hotel Search API Documentation

<p><strong>Agoda Hotel Search API Documentation</strong> Search Agoda hotels in one city for a stay: for each hotel the position, id, name, public url, property type, star rating, coordinates, city, area, review score and count, up to 5 images, the cheapest nightly price excluding taxes and fees, the total price including taxes and fees for the whole stay, currency and free cancellation flag. Sold-out hotels carry sold_out true and no price. Pages hold up to 45 hotels; has_more and next_page drive pagination. Prices follow the currency parameter. A page past the last result is a successful empty response.</p>

- **Documentation:** [https://scrappa.co/docs/agoda-api/agoda_search](https://scrappa.co/docs/agoda-api/agoda_search)
- **API group:** Agoda API
- **Endpoint:** `GET https://scrappa.co/api/agoda/search`

## Authentication

Send your Scrappa API key in the `X-API-KEY` request header. Paid endpoints also support accountless x402 payments when called without an API key.

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `city_id` | integer | Yes | Agoda city id from the suggest endpoint. Example: 9395 for Bangkok. |
| `check_in` | string | Yes | Check-in date, YYYY-MM-DD, today or later. Example: 2027-03-14. |
| `check_out` | string | Yes | Check-out date, YYYY-MM-DD, after check-in, at most 30 nights. Example: 2027-03-16. |
| `adults` | integer | No | Number of adults, 1 to 30. Defaults to 2. |
| `rooms` | integer | No | Number of rooms, 1 to 9. Defaults to 1. |
| `children_ages` | string | No | Comma-separated ages of the children, each 0 to 17, up to 6. Example: 5,7. |
| `currency` | string | No | Three-letter uppercase currency code. Defaults to USD. |
| `page` | integer | No | Page number starting at 1. Defaults to 1. |

## Example response

```json
{
    "data": {
        "page": 1,
        "total": 6129,
        "hotels": [
            {
                "id": 10637,
                "url": "https://www.agoda.com/baiyoke-sky-hotel/hotel/bangkok-th.html",
                "area": "Pratunam",
                "city": "Bangkok",
                "name": "Baiyoke Sky Hotel",
                "images": [
                    "https://pix8.agoda.net/hotelImages/10637/-1/878a9b58ccd19eee41b98d20e388c080.jpg?ca=9&ce=1",
                    "https://pix8.agoda.net/hotelImages/10637/-1/58c6a29ea6eb3c71e8819fd29edee04c.jpg?ce=0"
                ],
                "currency": "USD",
                "latitude": 13.754597663879396,
                "position": 1,
                "longitude": 100.5403060913086,
                "price_total": 135.41,
                "star_rating": 4,
                "country_code": "TH",
                "review_count": 58128,
                "review_score": 8.1,
                "property_type": "Hotel",
                "price_per_night": 63.27,
                "free_cancellation": false
            },
            {
                "id": 186593,
                "url": "https://www.agoda.com/tower-club-at-lebua-hotel/hotel/bangkok-th.html",
                "area": "Bangkok Riverside",
                "city": "Bangkok",
                "name": "Tower Club at Lebua Hotel",
                "images": [
                    "https://pix8.agoda.net/hotelImages/186593/-1/06795674718b0691c14bf28856a2c5b6.jpg?ce=0",
                    "https://pix8.agoda.net/hotelImages/186593/1356199056/5240b2a7e1f665fc9807efdee3d880f5.jpg?ce=3"
                ],
                "currency": "USD",
                "latitude": 13.721062660217283,
                "position": 2,
                "longitude": 100.51673889160156,
                "price_total": 399.24,
                "star_rating": 5,
                "country_code": "TH",
                "review_count": 8033,
                "review_score": 8.9,
                "property_type": "Hotel",
                "price_per_night": 186.56,
                "free_cancellation": false
            }
        ],
        "city_id": 9395,
        "check_in": "2027-03-14",
        "currency": "USD",
        "has_more": true,
        "check_out": "2027-03-16",
        "next_page": 2
    },
    "meta": {
        "billable": true,
        "endpoint_family": "hotel_search"
    },
    "success": true
}
```

## Errors

| Status | Error | Description |
| --- | --- | --- |
| 422 | Validation Error | A required query parameter is missing or invalid. This response is not billable. |
| 404 | Resource Not Found | The city id is unknown to Agoda. This response is not billable. |
| 503 | Service Unavailable | Agoda could not be reached or answered with an unexpected shape. This response is not billable. |

## More Scrappa resources

- [API documentation](https://scrappa.co/docs)
- [Full LLM-readable API reference](https://scrappa.co/llms-full.txt)
- [OpenAPI specification](https://scrappa.co/docs/api.json)
- [Pricing](https://scrappa.co/pricing)
