Search hotels for a destination
wanderlog_search_hotelsSearch hotel offers across Airbnb, Expedia, Google, and Kayak for a destination and date range; compare vendor deals and filter results by price, rating, amenities, and lodging type.
Instructions
Search Wanderlog's hotel aggregator (airbnb, expedia, google, kayak) for a destination and date range. Returns ranked offers with per-vendor deal comparison and an available_filters facet block the LLM can use to narrow.
Specify exactly one of destination or geo_id. For free-text destinations the highest-popularity match is picked; up to 2 candidates appear in alternative_geos as a soft hint — re-call with one of those geo_ids if the wrong city was chosen.
Use response_format='detailed' to include amenities, hotel class, and property type on each offer. The default 'concise' format omits those fields to keep token usage low.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of offers in the response. | |
| geo_id | No | Explicit Wanderlog geo id (usually obtained from a prior search's 'geo' or 'alternative_geos'). | |
| sort_by | No | Result ordering. | ratings |
| sources | No | Override the default vendor set ['airbnb','expedia','google','kayak']. | |
| check_in | Yes | Check-in date, YYYY-MM-DD. | |
| currency | No | ISO 4217 currency code for prices (e.g. 'INR', 'USD', 'ARS'). Optional. When provided, the shared session's currency preference is updated before searching so all returned prices are in this currency. When omitted, prices are returned in the session's existing currency and no global preference is changed. | |
| amenities | No | Required amenities; values come from 'available_filters.amenities' in a prior response. | |
| check_out | Yes | Check-out date, YYYY-MM-DD. Must be after check_in. | |
| room_count | No | Number of rooms. | |
| adult_count | No | Number of adults. | |
| destination | No | Free-text destination (e.g. 'Pattaya', 'Tokyo Shinjuku'). The highest-popularity matching geo is picked; up to 2 alternatives are returned in 'alternative_geos' for the LLM to re-call with geo_id if needed. | |
| price_range | No | [min, max] nightly price band in the response currency. | |
| children_ages | No | Ages of children. Wanderlog prices children by age, not count — pass each child's age (e.g. [4, 9]). | |
| hotel_classes | No | Star ratings to keep, e.g. [4, 5]. | |
| lodging_types | No | Lodging-type filter; values come from 'available_filters.lodging_types' in a prior response. | |
| property_name | No | Substring match against the property name. | |
| response_format | No | Output verbosity. 'concise' returns essential fields (name, price, rating, deals, location). 'detailed' also includes amenities, hotel_class, lodging_type, accommodation_type, and thumbnail. | concise |
| min_beds_in_room | No | Minimum beds per room. | |
| min_guest_rating | No | Minimum guest review score (Wanderlog's 0-10 scale). | |
| accommodation_types | No | Accommodation-type filter; values come from 'available_filters.accommodation_types' in a prior response. | |
| hotel_or_vacation_rental | No | Restrict to hotels, vacation rentals, or both. | |
| vacation_rental_amenities | No | Vacation-rental-specific amenities; values come from 'available_filters' in a prior response. |