---
title: "Get hotel property details"
method: POST
path: "/v1/hotels/property"
tags: ["Market intelligence"]
---

# Get hotel property details

`POST /v1/hotels/property`

Retrieves full details for a single hotel or vacation rental, including amenities, images, and booking offers.

<span>⚡ <strong>Rate limit:</strong> 120 requests per 1 minute</span>

<span>💰 <strong>Cost:</strong> 2 credits per property lookup&nbsp;<span title="Pricing shown is default pricing. Actual pricing may vary.">ⓘ</span></span>

## Request body

- object
  - `apiKey` string, required — Your Fiber API key
  - `propertyToken` string, required — Opaque identifier for a specific hotel or vacation rental. Obtain it from the `propertyToken` of a result returned by the hotel search endpoint (`POST /v1/hotels/search`).
  - `checkInDate` string, required — Check-in date for the stay.
  - `checkOutDate` string, required — Check-out date for the stay.
  - `adults` integer — Number of adult guests (at least 1). Total guests (`adults` + `children`) must not exceed 6 for hotels or 10 for vacation rentals.
  - `children` integer — Number of child guests. Total guests (`adults` + `children`) must not exceed 6 for hotels or 10 for vacation rentals.
  - `childrenAges` integer[] — Ages of each child guest. Must contain exactly `children` entries when `children` is greater than zero.
  - `currencyCode` string — ISO 4217 currency code for prices in the response (e.g. 'EUR', 'GBP', 'CAD'). Case-insensitive. Defaults to USD.
  - `searchMarketCountryCode` string — ISO 3166-1 alpha-3 country code that sets the search market (e.g. 'GBR', 'BRA'). This affects regional pricing and availability. Case-insensitive.
  - `languageCode` string — Language for results such as property names and amenity labels. Pass a BCP-47 language tag such as 'en', 'en-US', 'pt-BR', 'zh-CN', 'ja', 'ko', 'fr', 'de', or 'es'. Defaults to en.

## Response `200`

Default Response

- object
  - `output` object, required
    - `property` object, required — Full property details including offers and amenities.
      - `type` 'hotel' | 'vacationRental' | 'null', nullable — Property category.
      - `propertyToken` string, required — Opaque token identifying this property. Pass as `propertyToken` in POST /v1/hotels/property to retrieve full details. Always present on returned properties.
      - `name` string, required — Property display name.
      - `description` string, nullable — Property description.
      - `url` string, nullable — Property website URL.
      - `coordinates` object, nullable — Geographic coordinates of the property in decimal degrees.
        - `latitude` number, required — Latitude in decimal degrees.
        - `longitude` number, required — Longitude in decimal degrees.
      - `city` string, nullable — City name.
      - `countryCode` string, nullable — ISO 3166-1 alpha-3 country code (e.g. 'USA').
      - `checkInTime` string, nullable — Check-in time in 24-hour `HH:mm` format, where `HH` is 00 through 23 (e.g. '15:00'). Null when unavailable.
      - `checkOutTime` string, nullable — Check-out time in 24-hour `HH:mm` format, where `HH` is 00 through 23 (e.g. '11:00'). Null when unavailable.
      - `ratePerNight` object, nullable — Nightly rate summary for one night.
        - `currencyCode` string, required — ISO 4217 currency code for the amounts in this rate.
        - `allInCost` integer, nullable — All-in cost in whole currency units, including taxes and fees. Null when only a pre-tax rate is available, in which case only `baseCost` is populated.
        - `baseCost` integer, nullable — Base cost before taxes and fees in whole currency units; this is not the final amount charged.
      - `totalRate` object, nullable — Total rate summary for the entire requested stay, from check-in through check-out. The all-in amount includes taxes and fees when supplied; otherwise `baseCost` is provided.
        - `currencyCode` string, required — ISO 4217 currency code for the amounts in this rate.
        - `allInCost` integer, nullable — All-in cost in whole currency units, including taxes and fees. Null when only a pre-tax rate is available, in which case only `baseCost` is populated.
        - `baseCost` integer, nullable — Base cost before taxes and fees in whole currency units; this is not the final amount charged.
      - `rating` number, nullable — Guest rating from 0 to 5.
      - `reviewCount` integer, nullable — Total number of guest reviews.
      - `reviewsBreakdown` object[], required — Breakdown of reviews by category.
        - `name` string, nullable — Review category name.
        - `description` string, nullable — Review category description.
        - `totalCount` integer, nullable — Total reviews mentioning this category.
        - `positiveCount` integer, nullable — Positive mentions for this category.
        - `neutralCount` integer, nullable — Neutral mentions for this category.
        - `negativeCount` integer, nullable — Negative mentions for this category.
      - `hotelStarClass` integer, nullable — Observed hotel star class indicating how upscale the property is, from 1 to 5 whole stars. This is a property classification, not a guest review rating.
      - `amenities` string[], required — Amenities offered by this property.
      - `excludedAmenities` string[], required — Amenities explicitly not offered.
      - `images` object[], required — Property images.
        - `thumbnailUrl` string, nullable — Thumbnail image URL.
        - `originalUrl` string, nullable — Full-size image URL.
      - `nearbyPlaces` object[], required — Notable nearby places and transit options.
        - `name` string, nullable — Nearby place name.
        - `transportations` object[], required — Transportation options to reach this place.
          - `type` string, nullable — Transportation mode (e.g. 'Walking').
          - `durationMinutes` integer, nullable — Travel duration in minutes.
      - `locationRating` number, nullable — Location quality rating from 0 to 5.
      - `deal` string, nullable — Deal label when the booking provider marks a promotion; may be present without `dealDescription`.
      - `dealDescription` string, nullable — Short deal description when supplied by the booking provider; may be absent even when `deal` is present.
      - `essentialInfo` string[], required — Key facts for vacation rentals (e.g. 'Entire apartment', 'Sleeps 4').
      - `address` string, nullable — Street address.
      - `phone` string, nullable — Contact phone number normalized to E.164 format.
      - `directionsUrl` string, nullable — URL with directions to the property.
      - `amenitiesDetailed` string[], required — Detailed amenity list for the property.
      - `offers` object[], required — Booking offers from online travel agencies.
        - `sourceName` string, nullable — Booking source name.
        - `logoUrl` string, nullable — Booking source logo URL.
        - `url` string, nullable — Booking URL.
        - `isOfficial` boolean, nullable — True when this is the property's official booking channel.
        - `ratePerNight` object, nullable — Nightly rate from this source.
          - `currencyCode` string, required — ISO 4217 currency code for the amounts in this rate.
          - `allInCost` integer, nullable — All-in cost in whole currency units, including taxes and fees. Null when only a pre-tax rate is available, in which case only `baseCost` is populated.
          - `baseCost` integer, nullable — Base cost before taxes and fees in whole currency units; this is not the final amount charged.
        - `totalRate` object, nullable — Total rate for the entire requested stay from this source. The all-in amount includes taxes and fees when supplied; otherwise `baseCost` is provided.
          - `currencyCode` string, required — ISO 4217 currency code for the amounts in this rate.
          - `allInCost` integer, nullable — All-in cost in whole currency units, including taxes and fees. Null when only a pre-tax rate is available, in which case only `baseCost` is populated.
          - `baseCost` integer, nullable — Base cost before taxes and fees in whole currency units; this is not the final amount charged.
      - `typicalPriceRange` object, nullable — Typical price range for this property in whole currency units.
        - `currencyCode` string, required — ISO 4217 currency code for the amounts in this range.
        - `lowerBound` integer, nullable — Lower bound of the typical price range in the specified currency.
        - `upperBound` integer, nullable — Upper bound of the typical price range in the specified currency.
      - `ratingsBreakdown` object, nullable — Guest review counts grouped by one- through five-star rating.
        - `oneStarCount` integer, nullable — Count of 1-star reviews.
        - `twoStarCount` integer, nullable — Count of 2-star reviews.
        - `threeStarCount` integer, nullable — Count of 3-star reviews.
        - `fourStarCount` integer, nullable — Count of 4-star reviews.
        - `fiveStarCount` integer, nullable — Count of 5-star reviews.
    - `currencyCode` string, nullable — ISO 4217 currency code for prices in this response (e.g. 'USD', 'EUR', 'GBP').
  - `chargeInfo` union, required
    - object — Credits were charged immediately for this operation
      - `method` 'charged-now', required
      - `creditsCharged` number, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — Credits will be charged after the operation completes
      - `method` 'charging-later', required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — Credits that were charged for an asynchronous operation
      - `method` 'charged-for-async-process', required
      - `creditsCharged` number, required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — No credits were charged for this operation
      - `method` 'free', required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — Credits were refunded for this operation
      - `method` 'credits-refunded', required
      - `creditsRefunded` number, required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
  - `warnings` object[], nullable — Warnings about extraneous fields in request
    - `field` string, required — Full path to extraneous field (e.g., 'searchParams.ExtraField')
    - `message` string, required — Warning message
  - `advice` string[], nullable — Tips, recommendations, and suggestions for using this API effectively.

## Other responses

- `400` — Default Response
- `401` — Default Response
- `402` — Default Response
- `403` — Default Response
- `404` — Default Response
- `422` — Default Response
- `429` — Default Response
- `500` — Default Response
- `503` — Default Response

---

[API](https://skmtc.net/fiber/apis/fiber-ai-api.md) · [All operations](https://skmtc.net/fiber/apis/fiber-ai-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fiber/fiber-ai-api/versions/693a454797a3/schema)
