Appearance
GET /v1/hotels/autocomplete
Hotel typeahead. Use it to find a hotel and its placeId (sent as hotelPlaceId) before calling POST /v1/concierge.
http
GET /v1/hotels/autocomplete?q=<text>
Authorization: Bearer <token>Query
| Parameter | Type | Required | Notes |
|---|---|---|---|
q | string | yes | Free-text hotel search. Fewer than 2 characters returns an empty list without searching. |
bash
curl -s "https://api.overlookhospitality.com/v1/hotels/autocomplete?q=Portland+Regency" \
-H "Authorization: Bearer $OVERLOOK_TOKEN"Response 200 OK
At most 8 matches. Each result is the Hotel shape — the same object that comes back under hotel on a concierge response.
json
{
"query": "Portland Regency",
"results": [
{
"placeId": "123456",
"name": "Portland Regency Hotel & Spa",
"label": "Portland Regency Hotel & Spa, Portland, ME",
"address": "20 Milk St",
"locality": "Portland",
"region": "ME",
"latitude": 43.657,
"longitude": -70.253
}
]
}placeIdis the bare Overlook id; namespaced ids are normalized, so it can be used directly ashotelPlaceIdinPOST /v1/concierge.- For the rich hotel detail (descriptions, ratings, images), call
GET /v1/places/:placeIdwith the same id.
Errors
All errors use the shared envelope and codes; see Errors. A search provider failure returns 502 upstream_unavailable rather than an empty list, so a caller can tell "no match" from "we're down".