V2 Rates
The V2 rates endpoint is the entry point for suppliers and resellers who want to aggregate hotel rates. Unlike V1, there are no sessions to manage and no polling required — you get all rates in a single request.
V2 is designed for travel suppliers, resellers, and aggregators who ingest rates from multiple sources. If you are building a whitelabel or loyalty booking experience, see the V1 Availability endpoint instead.
How V2 differs from V1
| V1 (For Platforms) | V2 (For Suppliers) | |
|---|---|---|
| Sessions | Session-based (session_id) | No sessions |
| Polling | Poll until search_completed is true | No polling — results in a single response |
| Flow | Search → Poll → Hotel → Prebook → Book | Rates → Prebook → Book |
| Best for | Whitelabel sites, loyalty platforms | Aggregators, resellers, suppliers |
The rates request model
Required attributes
- Name
check_in- Type
- string
- Description
Check-in date in YYYY-MM-DD format.
- Name
check_out- Type
- string
- Description
Check-out date in YYYY-MM-DD format.
- Name
rooms- Type
- array of Room
- Description
Array of room configurations. Maximum 8 rooms per search.
- Name
filters- Type
- AvailabilityFilter
- Description
Optional filters for price range, star rating, amenities, etc.
- Name
nationality- Type
- string
- Description
ISO 3166-1 alpha-2 country code of the guest (e.g.,
"US","GB","MX"). Optional — defaults to"US"if omitted. Some vendors return different rates or require this for tax/residency purposes.
- Name
search_loyalty_rates- Type
- boolean
- Description
Optional. Controls whether loyalty rates are searched. When omitted, behavior is unchanged — loyalty rates are searched when enabled for your account. Set to
falseto exclude loyalty rates from this search. Set totrueto search loyalty rates; this still requires loyalty rates to be enabled for your account.
Location (exactly one required)
- Name
destination_id- Type
- string
- Description
Internal destination identifier.
- Name
place_id- Type
- string
- Description
Google Places ID.
- Name
coordinates- Type
- object
- Description
Object with
latandlngproperties.
- Name
hotel_ids- Type
- array of integers
- Description
Array of hotel IDs (max 2000).
Room object
- Name
adults- Type
- integer
- Description
Number of adults per room. Range: 1-14. Required.
- Name
children- Type
- integer
- Description
Number of children per room. Range: 0-6. Required.
- Name
children_ages- Type
- array of integers
- Description
Array of child ages (0-17 for each child). Required.
AvailabilityFilter object
- Name
price_range- Type
- array
- Description
Tuple of [min, max] price values.
- Name
star_rating- Type
- array of numbers
- Description
Array of star ratings to filter by (e.g., [4.0, 5.0]).
- Name
property_types- Type
- array of strings
- Description
Property types to include (e.g., ["hotel", "resort"]).
- Name
amenities- Type
- array of strings
- Description
Required amenities (e.g., ["pool", "wifi"]).
- Name
room_type- Type
- string
- Description
Specific room type filter.
- Name
sort_by- Type
- string
- Description
Sort field for results.
The rates response model
V2RatesSearchResponse
- Name
search_completed- Type
- boolean
- Description
Whether the search has completed across all vendors.
- Name
search- Type
- AvailabilityRequest
- Description
The original search request parameters.
- Name
metadata- Type
- SearchMetadata
- Description
Aggregated metadata about search results.
- Name
rates- Type
- array of HotelRate
- Description
Flat array of all rates across all hotels. Pass the rate
iddirectly to V2 Prebook to validate and then book.
SearchMetadata object
- Name
total_hotels- Type
- integer
- Description
Total number of hotels returned.
- Name
total_pages- Type
- integer
- Description
Total number of pages available.
- Name
max_price_per_night_avg- Type
- number
- Description
Highest average price per night across all results.
- Name
max_price_inclusive- Type
- number
- Description
Highest total inclusive price across all results.
- Name
nights- Type
- integer
- Description
Number of nights for the stay.
- Name
rooms- Type
- integer
- Description
Number of rooms requested.
- Name
center_coordinates- Type
- Coordinates
- Description
Center point coordinates of the search area.
HotelRate object
- Name
id- Type
- string
- Description
Unique rate identifier. Pass this to V2 Prebook and V2 Book.
- Name
hotel_id- Type
- integer
- Description
Associated hotel ID.
- Name
rooms- Type
- array of HotelRateRoom
- Description
Room details for this rate.
- Name
price_per_night_avg- Type
- number
- Description
Average price per night.
- Name
price_per_night- Type
- array of numbers
- Description
Price for each night of the stay.
- Name
price_chargeable- Type
- number
- Description
Total amount to charge the customer.
- Name
price_per_room- Type
- array of numbers
- Description
Total price per room.
- Name
price_per_night_per_room- Type
- array of array of numbers
- Description
Price breakdown per night per room.
- Name
price_before_fees- Type
- number
- Description
Price before taxes and fees.
- Name
price_fees- Type
- number
- Description
Taxes and fees amount.
- Name
price_due_at_hotel- Type
- number
- Description
Amount payable at hotel (e.g., resort fees).
- Name
price_inclusive- Type
- number
- Description
Total inclusive price.
- Name
price_currency- Type
- string
- Description
Currency code (e.g., "USD").
- Name
price_retail- Type
- number
- Description
Retail/comparison price if available.
- Name
cancellation_policy- Type
- string
- Description
Either "Refundable" or "NonRefundable".
- Name
cancellation_policy_datetime- Type
- string
- Description
Free cancellation deadline (ISO 8601).
- Name
cancellation_policy_data- Type
- array of CancellationPolicyData
- Description
Detailed cancellation penalty schedule.
- Name
brand_loyalty_eligible- Type
- boolean
- Description
Whether loyalty points can be earned.
- Name
brand_loyalty_required- Type
- boolean
- Description
Whether loyalty number is required to book.
- Name
brand_loyalty_name- Type
- string
- Description
Loyalty program name (e.g., "Marriott Bonvoy").
- Name
elite- Type
- HotelRateElite
- Description
Elite/premium rate benefits if applicable.
- Name
price_commission- Type
- number
- Description
Commission amount.
- Name
price_commission_currency- Type
- string
- Description
Commission currency code.
- Name
payment_type- Type
- string
- Description
Payment type ("account" or "credit_card").
HotelRateRoom object
- Name
name- Type
- string
- Description
Room name/type.
- Name
board- Type
- string
- Description
Board type: RO (Room Only), BB (Bed & Breakfast), HB (Half Board), FB (Full Board), AI (All Inclusive).
- Name
room_data- Type
- HotelRateRoomData
- Description
Detailed room information.
- Name
price_per_night_avg- Type
- number
- Description
Average price per night for this room.
- Name
price_per_night- Type
- array of numbers
- Description
Price for each night.
- Name
price_chargeable- Type
- number
- Description
Total chargeable amount for this room.
- Name
price_per_room- Type
- number
- Description
Total price for this room.
- Name
price_before_fees- Type
- number
- Description
Price before fees.
- Name
price_fees- Type
- number
- Description
Fees amount.
- Name
price_due_at_hotel- Type
- number
- Description
Amount due at hotel.
- Name
price_inclusive- Type
- number
- Description
Inclusive price.
- Name
price_currency- Type
- string
- Description
Currency code.
- Name
fees- Type
- array of HotelRateFee
- Description
Itemized fees.
- Name
deposit_per_accomodation_per_night- Type
- number
- Description
Deposit amount per accommodation per night.
- Name
deposit_currency- Type
- string
- Description
Deposit currency.
- Name
adults- Type
- integer
- Description
Number of adults this room accommodates.
- Name
children- Type
- integer
- Description
Number of children this room accommodates.
- Name
children_ages- Type
- array of integers
- Description
Ages of children.
HotelRateRoomData object
- Name
images- Type
- array of strings
- Description
Room image URLs.
- Name
size_sqft- Type
- integer
- Description
Room size in square feet.
- Name
size_sqm- Type
- integer
- Description
Room size in square meters.
- Name
max_occupancy- Type
- integer
- Description
Maximum total occupancy.
- Name
max_adults- Type
- integer
- Description
Maximum adults allowed.
- Name
max_children- Type
- integer
- Description
Maximum children allowed.
- Name
beds- Type
- array of HotelRateRoomBedType
- Description
Bed configuration.
- Name
amenities- Type
- array of strings
- Description
Room amenities.
- Name
room_id- Type
- integer
- Description
Internal room type identifier.
HotelRateRoomBedType object
- Name
name- Type
- string
- Description
Bed type name (e.g., "King", "Queen", "Twin").
- Name
size- Type
- string
- Description
Bed size description.
- Name
quantity- Type
- integer
- Description
Number of beds of this type.
HotelRateFee object
- Name
name- Type
- string
- Description
Fee name/description.
- Name
price- Type
- number
- Description
Fee amount.
- Name
due_at_hotel- Type
- boolean
- Description
Whether this fee is paid at the hotel.
- Name
price_currency- Type
- string
- Description
Fee currency.
CancellationPolicyData object
- Name
from_datetime- Type
- string
- Description
Start datetime for this penalty period (ISO 8601).
- Name
price_cancellation_penalty- Type
- number
- Description
Penalty amount if cancelled during this period.
- Name
price_currency- Type
- string
- Description
Penalty currency.
HotelRateElite object
- Name
room_upgrade_guaranteed- Type
- boolean
- Description
Guaranteed room upgrade.
- Name
room_upgrade_subject_availability- Type
- boolean
- Description
Room upgrade subject to availability.
- Name
late_checkout_guaranteed- Type
- boolean
- Description
Guaranteed late checkout.
- Name
late_checkout_subject_availability- Type
- boolean
- Description
Late checkout subject to availability.
- Name
welcome_amenity- Type
- boolean
- Description
Welcome amenity included.
- Name
description- Type
- array of strings
- Description
Elite benefit descriptions.
- Name
price_property_credit- Type
- number
- Description
Property credit amount.
- Name
price_property_credit_currency- Type
- string
- Description
Property credit currency.
- Name
property_credit_description- Type
- string
- Description
Property credit description.
- Name
breakfast_included- Type
- boolean
- Description
Breakfast included.
- Name
breakfast_description- Type
- string
- Description
Breakfast details.
- Name
breakfast_pax- Type
- integer
- Description
Number of guests breakfast covers.
- Name
travel_agent- Type
- boolean
- Description
Travel agent rate.
Coordinates object
- Name
lat- Type
- number
- Description
Latitude.
- Name
lng- Type
- number
- Description
Longitude.
Search rates
Search for hotel rates across all vendors. Returns all rates in a single response with no sessions or polling.
Required attributes
- Name
check_in- Type
- string
- Description
Check-in date in YYYY-MM-DD format.
- Name
check_out- Type
- string
- Description
Check-out date in YYYY-MM-DD format.
- Name
rooms- Type
- array
- Description
Array of room configurations with adults, children, and children_ages.
Optional attributes
- Name
nationality- Type
- string
- Description
ISO 3166-1 alpha-2 country code of the guest (e.g.,
"US","GB","MX"). Defaults to"US"if omitted. Some vendors return different rates or require this for tax/residency purposes.
Location (exactly one required)
- Name
destination_id- Type
- string
- Description
Internal destination identifier.
- Name
place_id- Type
- string
- Description
Google Places ID.
- Name
coordinates- Type
- object
- Description
Object with
latandlngproperties.
- Name
hotel_ids- Type
- array
- Description
Array of hotel IDs (max 2000).
Request
curl -X POST https://api.tripedge.com/v2/rates \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"place_id": "ChIJOwg_06VPwokRYv534QaPC8g",
"check_in": "2024-03-15",
"check_out": "2024-03-18",
"nationality": "US",
"rooms": [
{
"adults": 2,
"children": 1,
"children_ages": [5]
}
]
}'
Response
{
"search_completed": true,
"search": {
"place_id": "ChIJOwg_06VPwokRYv534QaPC8g",
"check_in": "2024-03-15",
"check_out": "2024-03-18",
"nationality": "US",
"rooms": [
{
"adults": 2,
"children": 1,
"children_ages": [5]
}
]
},
"metadata": {
"total_hotels": 150,
"total_pages": 3,
"max_price_per_night_avg": 450.00,
"max_price_inclusive": 1350.00,
"nights": 3,
"rooms": 1,
"center_coordinates": {
"lat": 40.7128,
"lng": -74.0060
}
},
"rates": [
{
"id": "eyJhbGciOiJDaGFDaGEyMC1Qb2x5MTMwNSIs...",
"hotel_id": 1234,
"rooms": [
{
"name": "Deluxe King Room",
"board": "BB",
"room_data": {
"images": ["https://images.tripedge.com/rooms/deluxe-king.jpg"],
"size_sqft": 450,
"size_sqm": 42,
"max_occupancy": 3,
"max_adults": 2,
"max_children": 1,
"beds": [
{
"name": "King",
"size": "king",
"quantity": 1
}
],
"amenities": ["minibar", "safe", "balcony", "coffee-maker"],
"room_id": 101
},
"price_per_night_avg": 250.00,
"price_per_night": [250.00, 250.00, 250.00],
"price_chargeable": 750.00,
"price_per_room": 750.00,
"price_before_fees": 700.00,
"price_fees": 50.00,
"price_due_at_hotel": 0.00,
"price_inclusive": 750.00,
"price_currency": "USD",
"fees": [
{
"name": "City Tax",
"price": 30.00,
"due_at_hotel": false,
"price_currency": "USD"
},
{
"name": "Service Fee",
"price": 20.00,
"due_at_hotel": false,
"price_currency": "USD"
}
],
"adults": 2,
"children": 1,
"children_ages": [5]
}
],
"price_per_night_avg": 250.00,
"price_per_night": [250.00, 250.00, 250.00],
"price_chargeable": 750.00,
"price_per_room": [750.00],
"price_per_night_per_room": [[250.00, 250.00, 250.00]],
"price_before_fees": 700.00,
"price_fees": 50.00,
"price_due_at_hotel": 0.00,
"price_inclusive": 750.00,
"price_currency": "USD",
"price_retail": 850.00,
"cancellation_policy": "Refundable",
"cancellation_policy_datetime": "2024-03-14T23:59:00Z",
"cancellation_policy_data": [
{
"from_datetime": "2024-03-14T23:59:00Z",
"price_cancellation_penalty": 250.00,
"price_currency": "USD"
}
],
"brand_loyalty_eligible": true,
"brand_loyalty_required": false,
"brand_loyalty_name": "Marriott Bonvoy",
"elite": null,
"price_commission": 75.00,
"price_commission_currency": "USD",
"payment_type": "account"
}
]
}