Get property details — static facts, no live availability
get_property_detailsDetails and guest reviews for one specific property — hotel, B&B,
hostel, apartment, villa — identified by its id. Answers questions such
as what guests think of it, whether it is clean, quiet or comfortable,
the most common complaints, how the breakfast is, which facilities it
offers, where exactly it is, or how it compares with another option. It
also serves follow-up questions about a property returned earlier by
search_stays: the id of that result is the property_id here.
Returns the amenity list, photos, booking sources, location and the
headline rating (rating + rating_count). Guest-review data is added
through include:
reviews_aggregate— score, total count and per-source breakdown; it summarizes all reviews.reviews_sample— up to 5 recent review texts.reviews_extended— up to 20 recent review texts for a deeper read; it supersedesreviews_sample.reviews_metareports how many texts exist and that the cap is deliberate: the omitted texts are older, and the aggregate already reflects them.
It takes no dates and carries no price: a price only exists for a
concrete stay window, which is what check_property_availability
quotes. In the response price is null, offers is empty and
availability_status is unknown.
Input: property_id is the id of a search_stays result (an opaque
string starting with prop_) or a bluepillow.com property URL. For a
property known only by name, resolve_destination and a targeted
search_stays return its id.
user_country, currency and language carry the user's locale and
localize the web_url link to the property page. Language default is
"en"; country default is "US". All rating fields are on a 0-5 scale.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | No | Anonymous key for this server (format 'pk_anon_…'), as returned by `get_anonymous_key`. Required by this tool; the same key works for every call. | |
| include | No | Optional enrichments, always a list — pass ["reviews_aggregate"], never the bare string. reviews_aggregate = score + total count + per-OTA distribution (summarizes ALL reviews). reviews_sample = up to 5 recent review texts. reviews_extended = up to 20 recent review texts (supersedes reviews_sample). The text list is intentionally capped to save tokens; reviews_meta declares returned vs available. Prefer reviews_sample and the aggregate; use reviews_extended only when a deeper qualitative read is genuinely needed. | |
| currency | No | User's preferred currency (ISO-4217, 3-letter uppercase, e.g. 'USD', 'EUR'), carried into the `web_url` booking link. This tool returns no prices; live quotes come from `check_property_availability`. | |
| language | No | User's UI language (2-letter lowercase). Drives the booking link language and server-rendered narrative; pass the language the user is speaking. Falls back to 'en'. | |
| property_id | Yes | Opaque property id (e.g. 'prop_69ce2ddcbf...') OR a bluepillow.com property page URL (e.g. 'https://www.bluepillow.com/search/68d1a2...') — the id is extracted automatically. Use the URL form when the user pasted a bluepillow.com link. | |
| user_country | No | User's country (ISO-3166 alpha-2 uppercase). Localizes the `web_url` booking link. Pass the user's own country, not the property's home country. Falls back to 'US' when omitted. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| name | Yes | ||
| brand | No | ||
| chain | No | ||
| price | No | ||
| stars | No | ||
| images | No | ||
| offers | No | ||
| rating | Yes | ||
| web_url | No | ||
| features | No | Structured feature/facility tags (e.g. HouseFacilities, PropertyTypes). Populated alongside description when available. | |
| location | Yes | ||
| amenities | No | ||
| cluster_id | No | ||
| dedup_meta | No | ||
| description | No | Free-text property description, when the source provides one. Usually null on search results. | |
| ota_coverage | Yes | ||
| rating_count | No | ||
| reviews_meta | No | Provenance for reviews_sample on property detail: how many review texts were returned vs available, and that the cap is deliberate (token efficiency). null on search or when reviews were not requested. | |
| property_type | Yes | ||
| thumbnail_url | No | ||
| reviews_sample | No | ||
| reviews_aggregate | No | rating_count = reviews backing the score (OTA aggregate, e.g. 156). comment_count = readable review TEXTS available (e.g. 53), fetchable via reviews_sample/reviews_extended. They differ: most guests rate, fewer write text — do not conflate them. | |
| availability_status | No | available = live bookable quotes in offers for the requested dates (price is the curated best); unavailable = no rooms reported for these dates (offers=[], price=null); unknown = availability not established, either because the call carried no dates or because the operators returned nothing conclusive (offers=[], price=null). |