Bookable properties
The 2M+ deduplicated properties from the Hotels catalog, each with its shared ID. A hotel result is not just a pin with a phone number: it is the exact record your booking flow uses.
Help people find where they are going as they type: hotels, cities and landmarks, matched to real bookable places. It works with OnArrival booking or with the booking system you already run.

The search box is where every trip starts. Places Search turns what people type into a real, bookable place.
A traveller starts typing, typos and all.
Hotels, cities, airports and landmarks appear as they type.
Each result says what kind of place it is and carries its own ID.
A hotel’s ID goes straight to rates, with no name matching.
A hotel, a neighbourhood, an airport and a landmark are different things on a map. To a traveller they all mean "where I want to stay". The index treats them that way.
The 2M+ deduplicated properties from the Hotels catalog, each with its shared ID. A hotel result is not just a pin with a phone number: it is the exact record your booking flow uses.
Cities, neighbourhoods and every airport with scheduled service, with the boundaries to answer "hotels in Shoreditch" differently from "hotels in London".
"Near the Eiffel Tower", "walking distance from Bandra station": the anchors real hotel searches use, indexed with the shapes needed to rank results around them.
Free text, coordinates or a supplier’s own code in; one typed place with a shared ID out. So a search result, a booking record and an analytics row agree on which hotel they mean.
Three endpoints. Suggest fills the search box with ranked, typo-tolerant suggestions as people type. Search takes a place or landmark and returns bookable hotels around it. Resolve turns free text, coordinates or other companies’ codes into one place with a shared ID. Every response uses the same typed IDs, whatever the query looked like.
GET /v1/places/suggest?q=grnd+hyat+dubay
200 OK
{ "suggestions": [ {
"type": "hotel",
"entity_id": "prop_9f2c81",
"name": "Grand Hyatt Dubai",
"city": "Dubai",
"bookable": true,
"score": 0.97 } ] }Help travellers search by hotel name, neighbourhood or landmark. Return a property ID your booking flow can use, even when the name is misspelt.
Every hotel result carries the shared hotel ID from our mapping pipeline, plus location, type and whether it can be booked. What comes out of the search box is what your booking flow uses, so there is no fragile name-matching step before checkout.
A hotel result includes the property ID used by the booking flow. Request rates with that ID, without matching the hotel name again. City and landmark results help travellers narrow down the location.
"Grnd Hyat Dubay" and the same hotel typed in Cyrillic, Arabic or Devanagari all lead to one property. Fuzzy matching and transliteration (reading one alphabet as another) across 30+ query languages, tuned on real travel searches rather than a generic spell-checker.
Travellers do not search by latitude. "Hotels near the Blue Mosque" and "close to Churchgate station" are real queries: 250k+ landmarks with walking-distance shapes decide what near means, and results rank by it.
Choose a monthly query tier for your expected search traffic. Your agreement sets the included volume, throughput limits and any overage terms.
Places Search is an independent service, not a feature of our booking stack. Put it in front of any inventory: the resolve API maps our IDs to your own supplier codes, and nothing obliges you to book a single room through OnArrival.
Replace the generic places service in the box that starts every session. Hotel matches land on the right property, landmark searches convert, and the bill stops growing with every keystroke.
A travel tab is only as good as its first input. Ship search that understands travel from day one, without building a places index or negotiating a maps contract.
AI models produce place names, not IDs. The resolve endpoint turns "that hotel near the Trevi Fountain" into a bookable place an agent can act on, in one call.
Something we haven’t covered? Talk to the team. We can help you work through your integration.

Different suppliers can list the same hotel under different names. Hotel mapping joins those records while keeping room types, rate conditions and booking references distinct.
Our mapping pipeline compares supplier records, checks room attributes and sends uncertain matches for review. The key is keeping the evidence behind each decision.