# Data Samples
Metasearch Pricing provides real-time hotel rates from multiple OTAs and direct channels through a REST API. Access live pricing, cancellation policies, room details, and booking URLs from providers worldwide.
BETA
These data points are available in Hotel Universe as of October 2025. This is a BETA feature with continuous improvements to data quality and coverage.
# What Data Is Included
# Provider/Advertiser Information
- Full name - Complete provider name (e.g., "Booking.com", "Expedia")
- Short name - Abbreviated provider name (e.g., "Booking", "Expedia")
- URL - Direct booking link to the provider's site
- Is hotel - Boolean indicating if this is the hotel's direct website (
true) or an OTA (false) - Is sponsored - Boolean indicating if this is a sponsored/paid placement
# Pricing (Top-Level Offer)
Each provider offer includes:
- Price per night
- Gross price (including taxes)
- Formatted text (e.g., "£53", "$125")
- Numeric value (e.g., 52.87742)
- Net price (before taxes) - Optional, primarily US properties
- Formatted text
- Numeric value
- Gross price (including taxes)
- Total price (for entire stay)
- Gross price (including taxes)
- Formatted text (e.g., "£106", "$250")
- Numeric value (e.g., 105.75484)
- Net price (before taxes) - Optional
- Formatted text
- Numeric value
- Gross price (including taxes)
- Cancellation date - Free cancellation deadline (e.g., "Nov 28", "Dec 24") - Optional
# Room Details (Optional)
When available, detailed room-level information includes:
- Room name - Room type name (e.g., "Standard Double Room", "Twin Room - Smoking")
- Room images - Array of image URLs
- Multiple rates - Different rate options for the same room:
- Rate description (e.g., "Free cancellation", "Non-refundable")
- Price per night (gross/net)
- Total price (gross/net)
- Refundable status - Boolean
- Cancellation deadline - Date string (e.g., "Nov 28")
- Breakfast included - Boolean
Note
Room-level details are more commonly available from direct hotel websites. OTA aggregators typically provide basic offer information only.
# Response Schema
The complete JSON Schema for the Metasearch Pricing API response:
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://api.hotel-universe.travel/schemas/metasearch-pricing-response.json",
"title": "Metasearch Pricing Response",
"description": "Response schema for the Hotel Universe Metasearch Pricing API endpoint",
"type": "array",
"items": {
"$ref": "#/definitions/ProviderOffer"
},
"definitions": {
"ProviderOffer": {
"type": "object",
"description": "A single provider offer with pricing and optional room details",
"required": ["advertiser", "pricePerNight", "totalPrice"],
"properties": {
"advertiser": {
"$ref": "#/definitions/Advertiser"
},
"pricePerNight": {
"$ref": "#/definitions/Price",
"description": "Price per night for the stay"
},
"totalPrice": {
"$ref": "#/definitions/Price",
"description": "Total price for the entire stay"
},
"cancellationDate": {
"type": ["string", "null"],
"description": "Free cancellation deadline (e.g., 'Nov 28', 'Dec 24')",
"examples": ["Nov 28", "Dec 24", "2024-06-14T12:00:00Z"]
},
"rooms": {
"type": "array",
"description": "Optional room-level details (more common from direct hotels)",
"items": {
"$ref": "#/definitions/Room"
}
}
}
},
"Advertiser": {
"type": "object",
"description": "Provider/advertiser information",
"required": ["fullname", "url", "shortname", "isHotel", "isSponsored"],
"properties": {
"fullname": {
"type": "string",
"description": "Full provider name",
"examples": ["Booking.com", "Expedia", "The Grand Hotel London"]
},
"url": {
"type": "string",
"format": "uri",
"description": "Direct booking URL for this offer"
},
"shortname": {
"type": "string",
"description": "Abbreviated provider name",
"examples": ["Booking", "Expedia", "The Grand Hotel"]
},
"isHotel": {
"type": "boolean",
"description": "True if this is the hotel's direct website, false for OTAs"
},
"isSponsored": {
"type": "boolean",
"description": "True if this is a sponsored/paid placement"
}
}
},
"Price": {
"type": "object",
"description": "Price information with optional net (before tax) and gross (including tax) values. At least one of net or gross must be present.",
"properties": {
"net": {
"$ref": "#/definitions/PriceDetail",
"description": "Price before taxes (primarily available for US properties)"
},
"gross": {
"$ref": "#/definitions/PriceDetail",
"description": "Price including all taxes and fees"
}
},
"anyOf": [
{
"required": ["net"]
},
{
"required": ["gross"]
}
]
},
"PriceDetail": {
"type": "object",
"description": "Formatted and numeric price representation",
"required": ["text", "value"],
"properties": {
"text": {
"type": "string",
"description": "Formatted price string with currency symbol",
"examples": ["£53", "$125", "€98"]
},
"value": {
"type": "number",
"description": "Numeric price value",
"minimum": 0,
"examples": [52.87742, 125.00, 98.50]
}
}
},
"Room": {
"type": "object",
"description": "Room type with available rates",
"required": ["name", "imageUrls", "rates"],
"properties": {
"name": {
"type": "string",
"description": "Room type name",
"examples": ["Standard Double Room", "Twin Room - Smoking", "Deluxe King Room"]
},
"imageUrls": {
"type": "array",
"description": "Array of room image URLs",
"items": {
"type": "string",
"format": "uri"
},
"minItems": 0
},
"rates": {
"type": "array",
"description": "Different rate options for this room",
"items": {
"$ref": "#/definitions/Rate"
},
"minItems": 1
}
}
},
"Rate": {
"type": "object",
"description": "A specific rate option for a room",
"required": ["description", "pricePerNight", "totalPrice"],
"properties": {
"description": {
"type": ["string", "null"],
"description": "Rate description (can be null)",
"examples": ["Free cancellation", "Non-refundable", "Breakfast included", null]
},
"pricePerNight": {
"$ref": "#/definitions/Price",
"description": "Per-night price for this rate"
},
"totalPrice": {
"$ref": "#/definitions/Price",
"description": "Total price for this rate"
},
"refundable": {
"type": "boolean",
"description": "Whether this rate is refundable"
},
"cancellationUntil": {
"type": "string",
"description": "Cancellation deadline",
"examples": ["Nov 28", "Dec 24", "2024-06-14T12:00:00Z"]
},
"breakfastIncluded": {
"type": "boolean",
"description": "Whether breakfast is included in this rate"
}
}
}
}
}