---
title: "POST /api/hotel/availability"
method: POST
path: "/api/hotel/availability"
tags: ["Hotel"]
---

# POST /api/hotel/availability

`POST /api/hotel/availability`

## Headers

- `accountId` string, required
- `apiKey` string, required

## Request body

- HotelAPIDataContractAvailabilityRequestAvailabilityInitRq — AvailabilityInitRq
  - `channelId` string, required — A unique identifier that is generated during setup. It is used to identify the source of the request and apply the appropriate business configurations.
  - `currency` string, required — Used to define the currency in which the rates should be returned. If not specified, the default currency configured on the channel will be used.
  - `culture` string, nullable
  - `checkIn` string, date-time, required — Check-in date.
  - `checkOut` string, date-time, required — Check-out date.
  - `occupancies` HotelAPIDataContractCommonOccupancy[], required — Specify the occupancy details for each room requested. For a multi-room request, each room's occupancy should be specified separately.
    - `numOfAdults` integer, required — Identifies the number of adult guests in the room.
    - `childAges` integer[], nullable — Ages of the children in the room. The number of items in the array will calculate the child count.
  - `circularRegion` HotelAPIDataContractAvailabilityRequestCircularRegion
    - `centerLat` number, double, required — Center latitude for the circular based search.
    - `centerLong` number, double, required — Center longitude for the circular based search.
    - `radiusInKM` integer, required — Radius in km for forming circular boundary for circular search taking centerLat and centerLong as point of reference.
  - `polygonalRegion` HotelAPIDataContractAvailabilityRequestPolygonalRegion
    - `coordinates` HotelAPIDataContractCommonGeoCode[], required — Geo Coordinates
      - `lat` number, double, required — Latitude
      - `long` number, double, required — Longitude
  - `multiPolygonalRegion` HotelAPIDataContractAvailabilityRequestMultiPolygonalRegion
    - `polygons` HotelAPIDataContractAvailabilityRequestPolygonalRegion[], nullable
      - `coordinates` HotelAPIDataContractCommonGeoCode[], required — Geo Coordinates
        - `lat` number, double, required — Latitude
        - `long` number, double, required — Longitude
  - `hotelIds` string[], nullable — Unica hotelIds
  - `nationality` string, nullable — Used to identify the primary guest's nationality. This information might be used to fetch nationality-based rates from the provider/hotels. Format: 2-character ISO country code.
  - `countryOfResidence` string, nullable — Used to identify the primary guest's nationality. This information might be used to fetch nationality-based rates from the provider/hotels. Format: 2-character ISO country code.
  - `destinationCountryCode` string, nullable — Country code of the destination. Format: 2-character ISO country code.
  - `filterBy` HotelAPIDataContractAvailabilityRequestFilterBy
    - `ratings` HotelAPIDataContractCommonRange
      - `min` integer
      - `max` integer
    - `facilities` string[], nullable
    - `location` HotelAPIDataContractCommonLocation
      - `state` string, nullable
      - `country` string, nullable
  - `additionalInformation` HotelAPIDataContractAvailabilityRequestAdditionalInformation[], nullable — Additional information.
    - `type` string, nullable
    - `text` string, nullable
  - `providerFilter` HotelAPIDataContractCommonProviderFilter
    - `providerIds` string[], nullable
    - `inclusion` boolean, nullable
  - `userInfo` HotelAPIDataContractAvailabilityRequestUser
    - `email` string, nullable
    - `role` string, nullable
    - `agencyId` string, nullable
  - `travelPurpose` 'Leisure' | 'Business'

## Response `200`

Success

- HotelAPIDataContractAvailabilityResponseAvailabilityRs
  - `token` string, nullable — Unique token recieved in the search init response to be used throught the process from search to book for a complete transaction.
  - `currency` string, nullable — The currency details for the hotel rates.
  - `hotels` HotelAPIDataContractAvailabilityResponseHotel[], nullable — List of hotels
    - `id` string, nullable — UnicaId of the hotel.
    - `relevanceScore` integer
    - `rate` HotelAPIDataContractAvailabilityResponseHotelRate
      - `totalRate` number, double — Total rate of the hotel inclusive of taxes.
      - `publishedRate` number, double — Publish rate provided by the hotel.
      - `baseRate` number, double — Base rate of the hotel exclusive of taxes.
      - `commission` number, double — Commission amount detail provided by the source.
      - `taxes` number, double — Tax amount provided by the source.
      - `fees` number, double — Fee amount provided by the source.
      - `discounts` number, double — Discount amount provided by the source.
      - `providerId` string, nullable — Provider/Supplier Identifier for the Rate
      - `providerName` string, nullable — Provider/Supplier Name for the Rate
      - `offer` HotelAPIDataContractCommonOffer
        - `title` string, nullable
        - `description` string, nullable
        - `type` 'FixedDiscount' | 'PercentageDiscount' | 'StayOffer'
        - `discountOffer` number, double, nullable
        - `percentageDiscountOffer` integer, nullable
        - `stayOffer` HotelAPIDataContractCommonStayOffer
          - `stayNights` integer
          - `freeNights` integer
      - `distributionType` 'Unknown' | 'Public' | 'Private' | 'MinimumSellingPrice' | 'Optimized' | 'Corporate'
      - `distributionChannel` 'Any' | 'Website' | 'AgentTool' | 'Mobile' | 'MetaSearch' | 'Cache'
      - `type` 'Published' | 'Negotiated'
      - `publishedRateProviderId` string, nullable — Provider/Supplier Identifier for the PublishedRate
      - `publishedRateProviderName` string, nullable — Provider/Supplier Name for the PublishedRate
      - `payAtHotel` boolean, nullable — Indicates whether the payment for the booking will be made directly at the hotel.
      - `additionalCharges` HotelAPIDataContractCommonAdditionalCharge[], nullable — Provides information about any additional rate component that is part of the total rate.
        - `charge` HotelAPIDataContractCommonCharge
          - `type` 'Fee' | 'Tax' | 'ResortFee' | 'Unknown'
          - `description` string, nullable
          - `frequency` 'PerNight' | 'PerStay' | 'PerWeek' | 'Unknown'
          - `unit` 'PerPerson' | 'PerRoom' | 'PerAcommodation' | 'PerAdult' | 'Unknown'
          - `amount` number, double
          - `currency` string, nullable
        - `text` string, nullable
      - `otherRateComponents` HotelAPIDataContractCommonRateComponent[], nullable
        - `amount` number, double
        - `description` string, nullable
        - `type` string, nullable
        - `isIncludedInBaseRate` boolean
      - `supplierBookingPaymentDate` string, nullable
      - `publishedBaseRate` number, double — Publish baseRate provided by the hotel.
      - `rateIdentifier` string, nullable
      - `cancellationPolicy` HotelAPIDataContractCommonCancellationPolicy[], nullable — Cancellation policy details provided by the source.
        - `text` string, nullable
        - `rules` HotelAPIDataContractCommonRule[], nullable
          - `value` number, double
          - `valueType` 'Amount' | 'Percentage' | 'Nights'
          - `estimatedValue` number, double
          - `start` string, date-time
          - `end` string, date-time
      - `additionalInformation` HotelAPIDataContractCommonAdditionalInformation[], nullable — Additional information.
        - `type` string, nullable
        - `text` string, nullable
      - `isChildConvertedToAdult` boolean — Indicates whether any child pax provided in the search request is being treated as adult on the supplier end.
    - `isRecommended` boolean, nullable
    - `options` HotelAPIDataContractAvailabilityResponseHotelOptions
      - `freeBreakfast` boolean, nullable
      - `freeCancellation` boolean, nullable
      - `refundable` boolean, nullable
      - `payAtHotel` boolean, nullable
      - `contractedRateExists` boolean, nullable
      - `roomOnly` boolean, nullable
      - `halfBoard` boolean, nullable
      - `fullBoard` boolean, nullable
      - `isGstMandatory` boolean, nullable
      - `isPANMandatory` boolean, nullable
      - `allInclusive` boolean, nullable
      - `isPrivateDistribution` boolean, nullable
      - `isPublicDistribution` boolean, nullable
      - `isOptimizedDistribution` boolean, nullable
      - `isCorporateDistribution` boolean, nullable
    - `rooms` HotelAPIDataContractCommonRoom[], nullable
      - `id` string, nullable — Id of the room.
      - `name` string, nullable — Name of the room.
      - `description` string, nullable — Description of the room.
      - `beds` HotelAPIDataContractCommonBed[], nullable — Bedding info of the room.
        - `type` string, nullable — Type of the bed.
        - `description` string, nullable — Description of the bed.
        - `count` integer — Number of beds.
      - `smokingAllowed` boolean, nullable — Indicates if smoking is allowed or not in the room.
      - `facilities` HotelAPIDataContractCommonFacility[], nullable — List of facilities included with the room.
        - `name` string, nullable — Name of the facility.
        - `description` string, nullable — Description of the facility.
      - `images` HotelAPIDataContractCommonImage[], nullable — List of room images.
        - `url` string, nullable — Url of the image.
        - `links` HotelAPIDataContractCommonImageLink[], nullable — List of image links.
          - `url` string, nullable — Url of the image.
          - `size` string, nullable — Size of the image.
        - `caption` string, nullable — Caption of the image.
      - `maxGuestAllowed` integer, nullable — Indicates the maximum number of guests allowed in the room.
      - `maxAdultAllowed` integer, nullable — Indicates the maximum number of adults allowed in the room.
      - `maxChildrenAllowed` integer, nullable — Indicates the maximum number of children allowed in the room.
      - `area` HotelAPIDataContractCommonRoomArea
        - `squareMeter` string, nullable — Size of the room in square meter.
        - `squareFeet` string, nullable — Size of the room in square feet.
        - `text` string, nullable
      - `views` string[], nullable — Room view details.
      - `type` string, nullable
    - `rates` HotelAPIDataContractCommonRate[], nullable
      - `id` string, nullable — Id of the rate.
      - `code` string, nullable
      - `availability` integer — Indicates the units of this rate available.
      - `description` string, nullable — Description .
      - `needsPriceCheck` boolean — Indicates if the price check is needed for this rate. It is used for internal purposes only.
      - `isPackageRate` boolean, nullable — Indicates whether this is a package rate.
      - `providerId` string, nullable — Indicates the provider id .
      - `providerName` string, nullable — Indicates the provider name .
      - `isContractedRate` boolean
      - `occupancies` HotelAPIDataContractCommonRoomOccupancy[], nullable — Detail about the occupancy info .
        - `roomId` string, nullable — Id of the room object.
        - `stdRoomId` string, nullable — Id of the standardized room object.It is available in the response only when room mapping is enabled.
        - `numOfAdults` integer — Number of adults in the room.
        - `numOfChildren` integer — Number of children in the room.
        - `childAges` integer[], nullable — Ages of the children in the room.
      - `type` 'Published' | 'Negotiated'
      - `baseRate` number, double — Base amount .
      - `totalRate` number, double — Total amount .
      - `minSellingRate` number, double
      - `publishedRate` number, double — Published total amount .
      - `currency` string, nullable — Currency .
      - `publishedRateProviderId` string, nullable — Indicates the provider id of the published rate.
      - `publishedRateProviderName` string, nullable — Indicates the provider name of the published rate.
      - `taxes` HotelAPIDataContractCommonRateComponent[], nullable — Tax info
        - `amount` number, double
        - `description` string, nullable
        - `type` string, nullable
        - `isIncludedInBaseRate` boolean
      - `fees` HotelAPIDataContractCommonRateComponent[], nullable — Fee info
        - `amount` number, double
        - `description` string, nullable
        - `type` string, nullable
        - `isIncludedInBaseRate` boolean
      - `discounts` HotelAPIDataContractCommonRateComponent[], nullable — Discount info
        - `amount` number, double
        - `description` string, nullable
        - `type` string, nullable
        - `isIncludedInBaseRate` boolean
      - `commission` HotelAPIDataContractCommonRateComponent
        - `amount` number, double
        - `description` string, nullable
        - `type` string, nullable
        - `isIncludedInBaseRate` boolean
      - `dailyRates` HotelAPIDataContractCommonDailyRateComponent[], nullable — Daily rates info
        - `amount` number, double
        - `date` string, date-time
        - `taxIncluded` boolean
        - `discount` number, double
      - `refundable` boolean
      - `refundability` 'Refundable' | 'NonRefundable' | 'Unknown'
      - `allGuestsInfoRequired` boolean — Indicates if all guest info is required for booking.
      - `onlineCancellable` boolean
      - `specialRequestSupported` boolean
      - `documentOptions` HotelAPIDataContractCommonDocumentOption[], nullable
      - `payAtHotel` boolean, nullable — Indicates whether the payment for the booking will be made directly at the hotel.
      - `cardRequired` boolean, nullable — Indicates whether the payment info is required.
      - `policies` HotelAPIDataContractCommonPolicy[], nullable — Policy details.
        - `type` string, nullable
        - `text` string, nullable
      - `boardBasis` HotelAPIDataContractCommonBoardBasis
        - `description` string, nullable
        - `type` 'RoomOnly' | 'BedAndBreakfast' | 'HalfBoard' | 'FullBoard' | 'AllInclusive' | 'SelfCatering' | 'Other' | 'LunchIncluded' | 'DinnerIncluded'
      - `offers` HotelAPIDataContractCommonOffer[], nullable
        - `title` string, nullable
        - `description` string, nullable
        - `type` 'FixedDiscount' | 'PercentageDiscount' | 'StayOffer'
        - `discountOffer` number, double, nullable
        - `percentageDiscountOffer` integer, nullable
        - `stayOffer` HotelAPIDataContractCommonStayOffer
          - `stayNights` integer
          - `freeNights` integer
      - `cancellationPolicies` HotelAPIDataContractCommonCancellationPolicy[], nullable — Cancellation policy info.
        - `text` string, nullable
        - `rules` HotelAPIDataContractCommonRule[], nullable
          - `value` number, double
          - `valueType` 'Amount' | 'Percentage' | 'Nights'
          - `estimatedValue` number, double
          - `start` string, date-time
          - `end` string, date-time
      - `includes` string[], nullable — Inclusions provided by the hotel.
      - `additionalCharges` HotelAPIDataContractCommonAdditionalCharge[], nullable — Additional charges details.
        - `charge` HotelAPIDataContractCommonCharge
          - `type` 'Fee' | 'Tax' | 'ResortFee' | 'Unknown'
          - `description` string, nullable
          - `frequency` 'PerNight' | 'PerStay' | 'PerWeek' | 'Unknown'
          - `unit` 'PerPerson' | 'PerRoom' | 'PerAcommodation' | 'PerAdult' | 'Unknown'
          - `amount` number, double
          - `currency` string, nullable
        - `text` string, nullable
      - `depositRequired` boolean
      - `depositAmount` number, double, nullable
      - `guaranteeRequired` boolean
      - `allowedCreditCards` HotelAPIDataContractCommonAllowedCreditCard[], nullable
        - `type` string, nullable
        - `code` string, nullable
        - `processingCountry` string, nullable
      - `allowedCountries` HotelAPIDataContractCommonCountry[], nullable
        - `code` string, nullable
        - `name` string, nullable
        - `states` HotelAPIDataContractCommonState[], nullable
          - `code` string, nullable
          - `name` string, nullable
      - `otherRateComponents` HotelAPIDataContractCommonRateComponent[], nullable — Provides information about any additional rate component that is part of the total rate.
        - `amount` number, double
        - `description` string, nullable
        - `type` string, nullable
        - `isIncludedInBaseRate` boolean
      - `distributionType` 'Unknown' | 'Public' | 'Private' | 'MinimumSellingPrice' | 'Optimized' | 'Corporate'
      - `distributionChannel` 'Any' | 'Website' | 'AgentTool' | 'Mobile' | 'MetaSearch' | 'Cache'
      - `supplierBookingPaymentDate` string, nullable
      - `publishedBaseRate` number, double — Publish baseRate provided by the hotel.
      - `IsPassportMandatory` boolean
      - `IsPANMandatory` boolean
      - `providerHotelId` string, nullable
      - `otherProviderRates` HotelAPIDataContractCommonRateComponent[], nullable
        - `amount` number, double
        - `description` string, nullable
        - `type` string, nullable
        - `isIncludedInBaseRate` boolean
      - `rateIdentifier` string, nullable
      - `additionalInformation` HotelAPIDataContractCommonAdditionalInformation[], nullable — Additional information.
        - `type` string, nullable
        - `text` string, nullable
      - `isChildConvertedToAdult` boolean — Indicates whether any child pax provided in the search request is being treated as adult on the supplier end.
      - `supplierRateWithRevenueComponents` number, double, nullable
      - `traderInformation` HotelAPIDataContractCommonTraderInformation
        - `trader` HotelAPIDataContractCommonTrader[], nullable
          - `name` string, nullable
          - `address` HotelAPIDataContractCommonAddress
            - `line1` string, nullable
            - `line2` string, nullable
            - `city` HotelAPIDataContractCommonRegion
              - …
            - `state` HotelAPIDataContractCommonRegion
              - …
            - `country` HotelAPIDataContractCommonRegion
              - …
            - `postalCode` string, nullable
          - `businessRegisterName` string, nullable
          - `businessRegisterNumber` string, nullable
          - `selfCertification` boolean
          - `phone` string, nullable
          - `rightToWithdrawMessage` string, nullable
        - `termsAndConditions` string, nullable
      - `deposits` HotelAPIDataContractCommonDeposit[], nullable
        - `amount` number, double
        - `dueDate` string, nullable
        - `currency` string, nullable

## Other responses

- `400` — ClientSideError

---

[API](https://skmtc.net/zentrumhub/apis/hotelcontent-api.md) · [All operations](https://skmtc.net/zentrumhub/apis/hotelcontent-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zentrumhub/hotelcontent-api/revisions/9fa4830db488/schema)
