Hotel Prices API
Get real-time room pricing, tax breakdowns, and availability for any Booking.com hotel.
Overview
Live Pricing Data
Returns real-time prices with tax breakdowns, cancellation policies, meal plans, and bundle extras for all available rooms.
The Hotel Prices endpoint provides comprehensive pricing information for a specific Booking.com hotel, including per-night and total costs, detailed tax breakdowns, and individual room options with cancellation policies and meal plans.
Endpoint URL
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| hotel_id | string | Required | Booking.com hotel ID (numeric, up to 10 digits) |
| check_in | string | Required | Check-in date (YYYY-MM-DD) |
| check_out | string | Required | Check-out date (YYYY-MM-DD) |
| adults | integer | Optional | Number of adults (1-10, default: 2) |
| rooms | integer | Optional | Number of rooms (1-10, default: 1) |
| currency | string | Optional | 3-letter currency code (default: USD) |
Response Structure
Pricing Summary
Shows the cheapest available room. See the rooms array for all room categories and prices.
price_per_night/price_per_night_value- Formatted and numeric price per nighttotal_price/total_price_value- Total stay costnet_price/net_price_value- Price before taxestaxes_and_charges/taxes_and_charges_value- Tax totalcurrency- Currency code
Tax Breakdown
name- Tax nametype- Tax typepercentage- Tax rateamount/amount_value- Tax amountincluded- Whether tax is already included in the price
Rooms
Array of all available room categories with individual pricing. Each entry represents a bookable room option.
block_id/room_name- Room identifier and namebed_configuration- Bed type descriptionis_refundable/cancellation_policy- Cancellation detailsbreakfast_included/meal_plan- Meal informationprice_per_night/total_price- Room-level pricingbundle_extras- Included extras (WiFi, gym, etc.)
Best Practices
Date Selection
Prices vary significantly by date. Always provide accurate check-in/check-out dates to get reliable pricing.
Implementation Tips
- Use both formatted strings and numeric values for flexible display
- Check
is_soldoutbefore displaying pricing - Display the tax breakdown for price transparency
- Highlight cancellation policies prominently for user confidence
Error handling and status codes
Status codes: 200 on success; errors use non-2xx (400, 500, 502) with Problem Details.
- 400
INVALID_HOTEL_ID: Hotel ID is not numeric or exceeds 10 digits. - 400
INVALID_DATE_FORMAT: Dates are not in YYYY-MM-DD format. - 400
INVALID_DATES: Check-out is before check-in or stay exceeds 90 nights. - 400
INVALID_CURRENCY: Currency is not a 3-letter code. - 502
UPSTREAM_ERROR: Upstream request or parsing failed. - 500
INTERNAL_ERROR: Unexpected processing error.
Error responses (Problem Details)
All Booking.com hotel endpoints return errors using RFC 7807 Problem Details.
{
"type": "https://api.stayapi.com/errors/invalid-url",
"title": "Invalid URL",
"status": 400,
"detail": "Parameter 'url' must be a full Booking.com hotel URL of the form https://www.booking.com/hotel/{cc}/{slug}.html.",
"error_code": "INVALID_URL",
"provided": "baan-coconut"
}
Media type: application/problem+json
Standard fields: type, title, status, detail
Extensions: error_code and any endpoint-specific fields
2xx policy: 2xx is returned only when data extraction succeeds.