Room options
get_room_ratesGet one identified or named hotel’s room options and provider prices for explicit hotel-local dates (including today), or date_intent: tonight, and occupancy. Tonight is resolved server-side in the hotel time zone. Accepts the exact HotelUse hotel_id from search_hotels, or hotel_name and destination when the ID is unavailable; destination is optional but helps disambiguation. A unique hotel match is required. Returns server-grouped room types, rate terms and full-stay provider prices in a separate Room options view. Provider price links open external booking pages; no reservation is made. Providing search_quote_session_id inherits omitted dates, occupancy, currency, language, residency and rate filters from that exact search. Explicit itinerary changes create a new quote; the search device is preserved. Supply exactly one hotel_id or hotel_name. Supply check_in/check_out, date_intent, or an existing search_quote_session_id for room quotes. All returned room groups are included in the first response; no room pagination is needed. Omit unknown optional values; do not send null. Resolve a hotel follow-up by name or position against the most recent relevant ordered search list. Copy its hotel_id exactly; if unavailable, use hotel_name and destination. Ask only if the hotel is ambiguous. For room options or current room prices call get_room_rates directly, passing search_quote_session_id from that search to preserve its stay and preferences. The first get_room_rates response includes all returned room groups and every provider minimum in room_groups. For all room options and prices, use that complete list after one call; do not paginate raw supplier offers or re-query the same stay. The raw_offer_page count describes supplier rate plans, not additional room types. Users can expand room cards locally without another price query. For undated amenities, policies or other hotel facts call get_hotel directly. Do not repeat a destination search before either hotel-specific tool. Existing returned prices may be explained without refreshing when no new search or current quote is requested.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| rooms | No | ||
| device | No | Optional traveler device. Omission uses trusted client hints, then desktop. Room follow-ups inherit the effective search device. Mobile app rates require an approved native-app integration. | |
| locale | No | Traveler BCP 47 language, such as en-GB, independent of the destination. | |
| region | No | ||
| country | No | ||
| check_in | No | Hotel-local calendar date; today is allowed in the destination time zone, even after UTC midnight. | |
| currency | No | Requested display currency. Omission defaults to client visitor country, then locale, then USD. | |
| hotel_id | No | Exact HotelUse hotel_id from a previous result. | |
| check_out | No | ||
| providers | No | ||
| hotel_name | No | Hotel name when no exact hotel_id is available. A unique, confident match is required. A full hotel name may be used without a destination; add the destination when ambiguous. | |
| date_intent | No | A one-night stay resolved server-side in the destination or hotel time zone. Mutually exclusive with check_in/check_out. | |
| destination | No | City or region to disambiguate the hotel name. | |
| user_locale | No | Optional traveler locale from client context, such as en-GB. Independent of the hotel destination. | |
| rate_filters | No | ||
| residency_country | No | ||
| user_location_country | No | Optional traveler country from client context, used for default currency and residency. Independent of the hotel destination. | |
| search_quote_session_id | No | A search result’s search_session_id. Inherits omitted stay dates, rooms, currency, language, residency and rate_filters from that search. Its device is preserved even if current client metadata changes. |