GET

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

GET https://api.stayapi.com/v1/booking/hotel/prices

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 night
  • total_price / total_price_value - Total stay cost
  • net_price / net_price_value - Price before taxes
  • taxes_and_charges / taxes_and_charges_value - Tax total
  • currency - Currency code

Tax Breakdown

  • name - Tax name
  • type - Tax type
  • percentage - Tax rate
  • amount / amount_value - Tax amount
  • included - 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 name
  • bed_configuration - Bed type description
  • is_refundable / cancellation_policy - Cancellation details
  • breakfast_included / meal_plan - Meal information
  • price_per_night / total_price - Room-level pricing
  • bundle_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_soldout before 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.

Request
curl -X GET "https://api.stayapi.com/v1/booking/hotel/prices?hotel_id=346648&check_in=2026-04-01&check_out=2026-04-03&adults=2&rooms=1&currency=USD" \
  -H "x-api-key: YOUR_API_KEY"
Response
{
  "success": true,
  "hotel_id": "346648",
  "data": {
    "hotel": {
      "id": "346648",
      "name": "Angsana Laguna Phuket"
    },
    "search_params": {
      "check_in": "2026-04-01",
      "check_out": "2026-04-03",
      "adults": 2,
      "rooms": 1,
      "currency": "USD",
      "nights": 2
    },
    "pricing_summary": {
      "price_per_night": "$185",
      "price_per_night_value": 185.0,
      "total_price": "$370",
      "total_price_value": 370.0,
      "net_price": "$320",
      "net_price_value": 320.0,
      "taxes_and_charges": "$50",
      "taxes_and_charges_value": 50.0,
      "currency": "USD"
    },
    "tax_breakdown": [
      {
        "name": "VAT",
        "type": "VAT",
        "percentage": 7.0,
        "amount": "$22.40",
        "amount_value": 22.4,
        "included": false
      },
      {
        "name": "Service charge",
        "type": "service_charge",
        "percentage": 10.0,
        "amount": "$27.60",
        "amount_value": 27.6,
        "included": false
      }
    ],
    "rooms": [
      {
        "block_id": "346648_101_2_2_0",
        "room_id": "34664801",
        "room_name": "Laguna Suite",
        "room_count": 1,
        "max_occupancy": 2,
        "bed_configuration": "1 King Bed",
        "is_refundable": true,
        "deposit_required": false,
        "cancellation_policy": "Free cancellation",
        "cancellation_detail": "Free cancellation until March 28, 2026",
        "prepayment": "No prepayment needed",
        "breakfast_included": true,
        "meal_plan": "Breakfast Included",
        "price_per_night": "$185",
        "price_per_night_value": 185.0,
        "total_price": "$370",
        "total_price_value": 370.0,
        "net_price": "$320",
        "net_price_value": 320.0,
        "currency": "USD",
        "bundle_extras": [
          "Free WiFi",
          "Pool access"
        ]
      },
      {
        "block_id": "346648_102_2_2_0",
        "room_id": "34664802",
        "room_name": "Deluxe Pool View",
        "room_count": 1,
        "max_occupancy": 2,
        "bed_configuration": "1 Queen Bed",
        "is_refundable": false,
        "deposit_required": true,
        "cancellation_policy": "Non-refundable",
        "cancellation_detail": "This reservation is non-refundable",
        "prepayment": "Full prepayment required",
        "breakfast_included": false,
        "meal_plan": null,
        "price_per_night": "$142",
        "price_per_night_value": 142.0,
        "total_price": "$284",
        "total_price_value": 284.0,
        "net_price": "$245",
        "net_price_value": 245.0,
        "currency": "USD",
        "bundle_extras": null
      },
      {
        "block_id": "346648_103_2_2_0",
        "room_id": "34664803",
        "room_name": "Grand Laguna Pool Suite",
        "room_count": 1,
        "max_occupancy": 3,
        "bed_configuration": "1 King Bed, 1 Sofa Bed",
        "is_refundable": true,
        "deposit_required": false,
        "cancellation_policy": "Free cancellation",
        "cancellation_detail": "Free cancellation until March 25, 2026",
        "prepayment": "No prepayment needed",
        "breakfast_included": true,
        "meal_plan": "Breakfast + Dinner",
        "price_per_night": "$310",
        "price_per_night_value": 310.0,
        "total_price": "$620",
        "total_price_value": 620.0,
        "net_price": "$536",
        "net_price_value": 536.0,
        "currency": "USD",
        "bundle_extras": [
          "Free WiFi",
          "Pool access",
          "Spa credit"
        ]
      }
    ],
    "available_rooms_count": 12,
    "is_soldout": false
  },
  "message": "Success",
  "retrieved_at": "2026-04-01T10:30:00Z"
}