hilton.com APIwww.hilton.com ↗
Search Hilton hotels worldwide by destination, get autocomplete suggestions, and geocode addresses. Returns rates, ratings, amenities, and coordinates.
curl -X GET 'https://api.parse.bot/scraper/caf249fe-ffc9-4517-a323-cb77a999f164/search_hotels?limit=3&query=Miami' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for Hilton hotels near a destination. Returns hotel details including name, address, coordinates, TripAdvisor ratings, nightly rates, amenities, and brand information. Results are sorted by distance from the destination center.
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of hotels to return (1-100) |
| queryrequired | string | Destination to search (e.g., 'New York', 'Miami', 'London') |
| currency | string | Currency code for rates (e.g., USD, EUR, GBP) |
| language | string | Language code for results |
{
"type": "object",
"fields": {
"hotels": "array of hotel objects with name, hotel_code, brand_code, distance, address, coordinates, tripadvisor_rating, tripadvisor_reviews, rate_amount, rate_formatted, amenities, and image_url",
"location": "object containing name, type, address, coordinates, and bounds for the matched destination",
"total_hotels": "integer count of hotels returned",
"available_brands": "array of brand objects with code and name",
"available_amenities": "array of amenity objects with id and name"
},
"sample": {
"data": {
"hotels": [
{
"name": "The Grayson Miami, an SLH Hotel",
"phone": "+1 (555) 012-3456",
"address": {
"city": "Miami",
"state": "FL",
"country": "US",
"stateName": "Florida",
"countryName": "USA",
"addressLine1": "123 Main St"
},
"is_open": true,
"currency": "USD",
"latitude": 25.7853439,
"amenities": [
"concierge",
"dining",
"evCharging"
],
"hotel_url": "https://www.hilton.com/en/hotels/miagmlx-the-grayson-miami/",
"image_alt": "Rooftop pool with loungers and parasols",
"image_url": "https://www.hilton.com/im/en/MIAGMLX/26746826/203769217-rooftop-pool-o.jpg",
"longitude": -80.1900694,
"brand_code": "LX",
"hotel_code": "MIAGMLX",
"adults_only": null,
"rate_amount": 141.14,
"distance_miles": 0.8044153339362956,
"rate_formatted": "$142",
"rate_plan_name": "Honors Discount Advance Purchase",
"distance_formatted": "0.80",
"tripadvisor_rating": 4,
"tripadvisor_reviews": 681,
"reservations_enabled": true,
"rate_plan_description": "No cancellations. Pay now."
}
],
"location": {
"name": "Miami, Florida, US",
"type": "locality",
"bounds": {
"northeast": {
"latitude": 25.96006003867992,
"longitude": -80.10221862792967
},
"southwest": {
"latitude": 25.67388916015625,
"longitude": -80.33058166503906
}
},
"address": {
"city": "Miami",
"state": "FL",
"country": "US",
"stateName": "Florida",
"postalCode": null,
"countryName": "USA"
},
"coordinates": {
"latitude": 25.774146,
"longitude": -80.193608
}
},
"total_hotels": 3,
"available_brands": [
{
"code": "LX",
"name": "SLH"
}
],
"available_amenities": [
{
"id": "adjoiningRooms",
"name": "Connecting Rooms"
}
]
},
"status": "success"
}
}About the hilton.com API
The Hilton.com API exposes 3 endpoints covering hotel search, destination autocomplete, and geocoding. The search_hotels endpoint returns hotel objects with fields including nightly rates, TripAdvisor ratings and review counts, GPS coordinates, brand codes, amenities, and distance from the destination center — all in a single call. The autocomplete and geocode endpoints handle location resolution, from partial text input to full coordinate bounds.
Hotel Search
The search_hotels endpoint accepts a query string (e.g., 'London', 'Miami Beach') and returns an array of hotel objects sorted by distance from the matched destination. Each hotel object includes name, hotel_code, brand_code, distance, address, and coordinates. The response also surfaces tripadvisor_rating and tripadvisor_reviews per property, plus a location object that describes the matched destination with its own coordinates and bounding box. Pass a currency parameter (e.g., USD, EUR, GBP) to control the currency of returned nightly rates. The top-level response also includes available_brands and available_amenities arrays, useful for building filter UIs.
Autocomplete and Geocoding
The autocomplete endpoint takes a partial query string — as short as two or three characters — and returns an array of suggestions, each with description, main_text, secondary_text, type (city, airport, point of interest, or property), place_id, and address. This endpoint is designed for search-as-you-type flows where you need fast location resolution before committing to a full hotel search.
The geocode endpoint converts either a free-text address or a place_id (from an autocomplete suggestion) into structured location data: coordinates (latitude/longitude), bounds (northeast and southwest corner pairs), a structured address object with city, country, state, and postal code fields, and a place_uri path for the resolved location. The type field indicates whether the resolved place is a locality, state, country, or other classification.
Coverage and Data Shape
All three endpoints accept a language parameter for localized result text. Hotel results are scoped to Hilton-branded properties; the brand_code field distinguishes sub-brands (e.g., Waldorf Astoria, DoubleTree, Hampton Inn). The total_hotels field in search responses indicates how many results were returned, and the limit parameter caps results between 1 and 100.
- Display Hilton hotels near a searched city sorted by distance, showing nightly rates and TripAdvisor scores.
- Build a search-as-you-type destination input using the autocomplete endpoint with place type classification.
- Resolve a user-supplied city or airport name to precise coordinates and bounding box via the geocode endpoint.
- Populate brand and amenity filter options for a hotel search UI from the available_brands and available_amenities fields.
- Compare TripAdvisor ratings and review counts across multiple Hilton properties in a destination.
- Map Hilton property locations using coordinates returned per hotel in search results.
- Convert an autocomplete place_id into structured address metadata including country, state, and postal code.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Hilton offer an official developer API?+
What does the search_hotels endpoint return beyond hotel names and addresses?+
hotel_code, brand_code, distance from the destination center, coordinates (latitude/longitude), tripadvisor_rating, tripadvisor_reviews, and nightly rate data in the requested currency. The response also returns a location object with bounding box coordinates for the matched destination, plus available_brands and available_amenities arrays for the full result set.Does the API return room availability or allow date-based rate searches?+
search_hotels endpoint returns nightly rate data but does not accept check-in or check-out date parameters for availability filtering. It covers hotel metadata, ratings, and general rate information. You can fork the API on Parse and revise it to add date-based availability filtering.Can I filter search results by brand or amenity?+
search_hotels endpoint returns available_brands and available_amenities arrays alongside the hotel results, but it does not currently accept brand or amenity values as input filters. You can filter the returned array client-side using these fields, or fork the API on Parse and revise it to add server-side filtering parameters.How does the autocomplete endpoint differ from geocode, and when should I use each?+
autocomplete endpoint is for resolving partial text into a list of candidate locations — cities, airports, points of interest, and hotel properties — each with a place_id and type. The geocode endpoint takes a resolved address string or place_id and returns precise coordinates, bounds, and structured address fields. The typical flow is autocomplete first, then geocode on the selected suggestion's place_id.