---
title: "POST /api/hotel/{hotelId}/roomsandrates"
method: POST
path: "/api/hotel/{hotelId}/roomsandrates"
tags: ["Hotel"]
---

# POST /api/hotel/{hotelId}/roomsandrates

`POST /api/hotel/{hotelId}/roomsandrates`

## Path parameters

- `hotelId` string, required

## Headers

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

## Request body

- HotelAPIDataContractRoomsAndRatesRequestRoomsAndRatesRq
  - `channelId` string, nullable — A unique identifier that is generated during setup. It is used to identify the source of the request and apply the appropriate business configurations.
  - `segmentId` string, nullable
  - `searchSpecificProviders` boolean
  - `providerIds` string[], nullable
  - `currency` string, nullable — 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 — Check-in date.
  - `checkOut` string, date-time — Check-out date.
  - `occupancies` HotelAPIDataContractCommonOccupancy[], nullable — 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.
  - `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.
  - `additionalInformation` HotelAPIDataContractCommonAdditionalInformation[], nullable — Additional information.
    - `type` string, nullable
    - `text` string, nullable
  - `providerFilter` HotelAPIDataContractCommonProviderFilter
    - `providerIds` string[], nullable
    - `inclusion` boolean, nullable
  - `userInfo` HotelAPIDataContractCommonUser
    - `email` string, nullable
    - `role` string, nullable
    - `agencyId` string, nullable
  - `travelPurpose` 'Leisure' | 'Business'

## Response `200`

Success

- HotelAPIDataContractRoomsAndRatesResponseRoomsAndRatesRs
  - `token` string, nullable — Unique token recieved in the search 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.
  - `hotel` HotelAPIDataContractRoomsAndRatesResponseHotel
    - `id` string, nullable — UnicaId of the hotel.
    - `rooms` HotelAPIDataContractCommonRoom[], nullable — List of rooms
      - `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 — List of rates for the rooms
      - `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
    - `supplierRates` HotelAPIDataContractCommonRate[], nullable — List of rates in supplier currency.
      - `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
    - `recommendations` HotelAPIDataContractCommonRecommendation[], nullable — List of recommendations. Each recommendation corresponds to a specific rate for a room within the rates array.
      - `id` string, nullable — Id of the recommendation.
      - `rates` string[], nullable — List of rate ids.
      - `groupId` integer — Group id.
      - `onHold` boolean, nullable
      - `paymentDueDate` string, date-time, nullable
    - `standardizedRooms` HotelAPIDataContractCommonStandardizedRoom[], nullable — List of standardized rooms.Standardized rooms offer unified information by normalizing room data from multiple suppliers.It is available in the response only when room mapping is enabled.
      - `id` string, nullable — Id of the standardized room.
      - `name` string, nullable — Name of the room.
      - `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.
      - `facilities` HotelAPIDataContractCommonFacility[], nullable — List of facilities included with the room.
        - `name` string, nullable — Name of the facility.
        - `description` string, nullable — Description of the facility.
      - `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
      - `masterTitle` string, nullable
      - `description` string, nullable
      - `beds` HotelAPIDataContractCommonBed[], nullable
        - `type` string, nullable — Type of the bed.
        - `description` string, nullable — Description of the bed.
        - `count` integer — Number of beds.
      - `occupancyType` string, nullable
      - `mappedRoomRates` HotelAPIDataContractCommonStdMappedRoomRate[], nullable
        - `inputIndex` integer
        - `roomCode` string, nullable
        - `boardBasis` string, nullable
        - `refundability` string, nullable
        - `attributes` HotelAPIDataContractCommonAttribute[], nullable
          - `name` string, nullable
          - `value` string, nullable
        - `rateId` string, nullable
      - `providerRoomContent` HotelAPIDataContractCommonStdProviderRoomContent
        - `roomName` string, nullable
        - `description` string, nullable
        - `views` string, nullable
        - `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
        - `images` HotelAPIDataContractCommonImage[], nullable
          - `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.
        - `facilities` HotelAPIDataContractCommonFacility[], nullable
          - `name` string, nullable — Name of the facility.
          - `description` string, nullable — Description of the facility.
        - `attributes` HotelAPIDataContractCommonAttribute[], nullable
          - `name` string, nullable
          - `value` string, nullable
      - `attributes` HotelAPIDataContractCommonAttribute[], nullable
        - `name` string, nullable
        - `value` string, nullable
    - `Error` HotelAPIDataContractError
      - `code` string, nullable
      - `message` string, nullable
  - `error` HotelAPIDataContractError
    - `code` string, nullable
    - `message` 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)
