# Agoda — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Agoda provides 4 callable API endpoints through the Parse marketplace.

**Category:** Travel | **Website:** [agoda.com/](https://agoda.com/) | **Docs:** [parse.bot/marketplace/82a3fa26-f31c-4290-b1f8-b919525b37c7/agoda-com-api](https://parse.bot/marketplace/82a3fa26-f31c-4290-b1f8-b919525b37c7/agoda-com-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/agoda/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get hotel reviews

Get paginated guest reviews for a specific hotel property. Returns the hotel name, overall score, and a list of reviews with ratings, titles, text, dates, reviewer info, and source platform. Each page returns up to 20 reviews.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `hotel_id` | integer | Yes | Agoda hotel property ID (e.g. 10602 for Hilton Singapore Orchard). Use object_id from search_autocomplete results for hotel-type suggestions. |
| `page` | integer | No | Page number for paginated reviews. Each page returns up to 20 reviews. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/agoda/get-hotel-reviews \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"hotel_id":"<integer>","page":"<integer>"}'
```

### Get hotel rooms

Get available room types and details for a specific hotel property. Returns room names, availability, sizes, occupancy limits, bed types, and facilities. Requires a valid hotel property ID (not a city ID). Uses dateless search so availability reflects general room inventory.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `hotel_id` | integer | Yes | Agoda hotel property ID (e.g. 10602 for Hilton Singapore Orchard). Use object_id from search_autocomplete results for hotel-type suggestions. City IDs from get_popular_destinations are not valid hotel IDs. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/agoda/get-hotel-rooms \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"hotel_id":"<integer>"}'
```

### Get popular destinations

Get popular international travel destinations on Agoda. Returns up to 20 destinations with city IDs, names, countries, and hotel counts. No parameters required.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/agoda/get-popular-destinations \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Search autocomplete

Search for destination suggestions by keyword. Returns matching cities, neighborhoods, landmarks, and hotels from Agoda's autocomplete index. Results include city IDs and object IDs that can be used with other endpoints.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search keyword for destination lookup (e.g. 'Tokyo', 'Bangkok', 'Bali'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/agoda/search-autocomplete \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://paywithlocus.com/agent/index.md): every Locus agent page.