GET

Expedia Hotel Rates API

Get real-time room rates and availability for an Expedia hotel.

Overview

Real-time Pricing

Returns live room rates, rate plans, nightly and total prices, strikeout prices, and availability status.

The Expedia Hotel Rates endpoint returns room types with rate plans for a given property and date range. Each room includes features, and each rate plan includes nightly rate, total price, strikeout price, payment model, and availability.

Endpoint URL

GET https://api.stayapi.com/v1/expedia/hotel/rates

Parameters

Parameter Type Required Description
property_id string Required Expedia property ID (numeric string, e.g., "10507369")
check_in string Required Check-in date in YYYY-MM-DD format
check_out string Required Check-out date in YYYY-MM-DD format (must be after check-in)
adults integer Optional Number of adults, 1-10 (default: 2)
currency string Optional Currency code, e.g., USD, EUR, GBP, THB (default: USD). Accepted but currency conversion is not yet confirmed for all currencies.

Response Structure

Top-Level Fields

  • property_id - Expedia property ID
  • check_in - Check-in date
  • check_out - Check-out date
  • adults - Number of adults
  • currency - Currency code
  • sold_out - Whether the property is sold out
  • lowest_price - Lowest available price (formatted string)
  • lowest_price_amount - Lowest price as a number
  • rooms - Array of room types

Room Object

  • room_id - Room type identifier
  • room_name - Room type name
  • features - Array of room features (e.g., "Free WiFi", "Breakfast included")
  • rate_plans - Array of rate plans for this room

Rate Plan Object

  • rate_plan_id - Rate plan identifier
  • deal - Deal badge text (e.g., "Member Price")
  • payment_model - Payment model (e.g., "PAY_LATER", "PAY_NOW")
  • nightly_rate - Nightly rate (formatted string)
  • nightly_rate_amount - Nightly rate as a number
  • total_price - Total price (formatted string)
  • total_price_amount - Total price as a number
  • strikeout_price - Original price before discount
  • strikeout_price_amount - Original price as a number
  • total_with_taxes_and_fees - Total including taxes and fees
  • available - Whether this rate plan is available
  • rooms_left - Scarcity message (e.g., "Only 3 left")

Finding the Property ID

Finding the Property ID

The property ID can be found in Expedia hotel URLs after the "h" prefix.

The property ID appears in Expedia URLs. For example:

https://www.expedia.com/h10507369.Hotel-Information

The property ID is 10507369 (the number after "h").

Request
curl -X GET "https://api.stayapi.com/v1/expedia/hotel/rates?property_id=10507369&check_in=2026-05-01&check_out=2026-05-03&adults=2" \
  -H "x-api-key: YOUR_API_KEY"
Response
{
  "property_id": "10507369",
  "check_in": "2026-05-01",
  "check_out": "2026-05-03",
  "adults": 2,
  "currency": "USD",
  "sold_out": false,
  "lowest_price": "$189",
  "lowest_price_amount": 189.0,
  "rooms": [
    {
      "room_id": "314898187",
      "room_name": "Aloft King Room",
      "features": [
        "1 King Bed",
        "Free WiFi",
        "City view"
      ],
      "rate_plans": [
        {
          "rate_plan_id": "381851541",
          "deal": "Member Price",
          "payment_model": "PAY_LATER",
          "nightly_rate": "$189 per night",
          "nightly_rate_amount": 189.0,
          "total_price": "$378",
          "total_price_amount": 378.0,
          "strikeout_price": "$420",
          "strikeout_price_amount": 420.0,
          "total_with_taxes_and_fees": 438.48,
          "available": true,
          "rooms_left": "Only 3 left"
        }
      ]
    }
  ]
}