KAYAK Hotel Lookup API
Find KAYAK hotel IDs by hotel name.
Copy for your AI agent
Paste into Claude, ChatGPT, Cursor or Copilot — endpoint, parameters, response fields and a curl example in Markdown.
Overview
Find KAYAK hotel IDs by hotel name. Use StayAPI with an X-API-Key through REST or MCP.
Scope
Hotel-only suggestions, best match first. Include the city in query for the best match. The source returns a short suggestion list, so broad queries such as a chain name return only a few hotels. Suggestions can include individual vacation-rental units listed as hotels; no field marks them, so confirm name and city before using an ID. Pass hotel_id to Hotel Reviews. No property URL is returned; Details, Photos, and Amenities need the canonical property URL. limit controls the maximum number returned; total counts this response. A valid search with no matches returns an empty list.
Authentication
Send your StayAPI key in the X-API-Key header. Each successful request uses one credit and returns JSON; failures use RFC 7807 Problem Details.
Endpoint URL
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| query | string | Required | Hotel name, ideally with city (such as Hotel Indigo Boston Garden), 2–100 characters after trimming surrounding whitespace. |
| limit | integer | Optional | Maximum suggestions, 1–50. Default: 10. |
Response schema
| Field | Type | Description |
|---|---|---|
| success | boolean | True on success. |
| total | integer | Number of entries returned. |
| hotels | array | Hotel suggestions. |
| hotels[].hotel_id / name | string | KAYAK hotel ID and hotel name. |
| hotels[].city / region / country / country_code | string or null | Location metadata where available. |
| hotels[].latitude / longitude | number or null | Hotel coordinates where available. |
Errors and limitations
Errors use RFC 7807 Problem Details with provider: "kayak", an instance and correlation id.
- 400: invalid query or numeric limit outside 1–50.
- 422: required parameter missing or limit is not an integer.
- 401/402/429: authentication, credit, or rate-limit error.
- 502/503/504: source data temporarily unavailable or request could not complete. Errors are never returned as successful 2xx responses.