swagger: "2.0"
schemes:
  - https
host: api.hetras-certification.net
basePath: /
info:
  title: hetras Hotel API Version 0
  version: v0
  x-logo:
    url: https://twitter.com/hetras/profile_image?size=original
  x-origin:
    - format: swagger
      url: https://developer.hetras.com/swagger/spec/HotelAPIv0.json
      version: "2.0"
  x-providerName: hetras-certification.net
  x-serviceName: hotel
paths:
  /api/hotel/v0/hotels:
    get:
      consumes: []
      deprecated: false
      description: Load the details about all the hotels your application has access to.
      operationId: Hotels_GetHotels
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: A list of hotels.
          schema:
            items:
              $ref: "#/definitions/Hotel"
            type: array
        "204":
          description: You don´t have access to any hotels.
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get a list of all the hotels of a chain your application has access to.
      tags:
        - Hotels
  "/api/hotel/v0/hotels/{hotelId}":
    get:
      consumes: []
      deprecated: false
      description: Load the details about the specified hotel.
      operationId: Hotels_GetHotel
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - format: int32
          in: path
          name: hotelId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: The details about the hotel.
          schema:
            $ref: "#/definitions/Hotel"
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get the details of the hotel with the speccified hotel id.
      tags:
        - Hotels
  "/api/hotel/v0/hotels/{hotelId}/codes":
    get:
      consumes: []
      deprecated: false
      description: "With this call you can find codes for a hotel by type or code. By default and without any filter criteria\r

        \            defined it will return you all available codes."
      operationId: Codes_GetCodes
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id you are trying to find codes for.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: "Return all results matching the specified code. A code is unique in combination with the type\r

            \            which means when you query for a code you could get multiple results each for a different type"
          in: query
          name: code
          required: false
          type: string
        - description: Return all codes for the specified type
          enum:
            - GuestRequest
            - RequestDietary
            - VIPStatus
            - ReasonForRateChange
            - Regrets
            - MarketSegments
            - SourceOfBusiness
            - LoyaltyProgram
            - CancellationReason
            - AccountType
            - AccountRank
            - VIPLevel
            - Title
            - ContactFunction
            - Territory
            - CorrespondenceType
            - ExternalProgramType
            - RevenueBucket
            - AdditionalRevenueBucket
            - AdditionalStatisticsBuckets
            - MealPeriod
            - BillingCycle
            - ReminderCycle
            - MajorMarketSegments
            - DocumentType
            - ActivityType
            - ReservationLabels
          in: query
          name: type
          required: false
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: A list of codes for a requested hotel matching the filter criteria.
          schema:
            $ref: "#/definitions/CodesListResponse"
        "204":
          description: There are no codes found for the given filtering criteria.
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get a list of codes for the specified hotel either filtered by type or code.
      tags:
        - Codes
  "/api/hotel/v0/hotels/{hotelId}/codes/{id}":
    get:
      consumes: []
      deprecated: false
      description: Read the details about a specific code available for the defined hotel.
      operationId: Codes_GetCode
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the code available for.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: The code identifier you want to see details for.
          in: path
          name: id
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Details for the given code and hotel.
          schema:
            $ref: "#/definitions/CodeFullEntry"
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI or the requested rateplan could not be found.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get all the details for a specific code available for the hotel.
      tags:
        - Codes
  "/api/hotel/v0/hotels/{hotelId}/rateplans":
    get:
      consumes: []
      deprecated: false
      description: "With this call you can find rateplans for a hotel by different filters. By default and without any filter criteria\r

        \            defined it will return you all active rateplans."
      operationId: RatePlans_GetRateplans
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id you are trying to find rateplans for.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: "Specify which rateplans to return. If you do not specify a value you will by default get active\r

            \            rateplans."
          enum:
            - Active
            - Inactive
            - All
          in: query
          name: sellingStatus
          required: false
          type: string
        - description: Return all rateplans having commisionable status
          in: query
          name: commissionable
          required: false
          type: boolean
        - description: Return all rateplans belonging to the specified rateplan group
          in: query
          name: group
          required: false
          type: string
        - description: Return all rateplans having the specified rateplan as base rateplan
          in: query
          name: baseRateplan
          required: false
          type: string
        - description: Return all rateplans that are sold through at least one channel out of the specified channel group
          in: query
          name: channelGroup
          required: false
          type: string
        - description: Return all rateplans sold through the specified channel
          in: query
          name: channelCode
          required: false
          type: string
        - collectionFormat: csv
          description: Return all rateplans having one of the specified values as a market code
          in: query
          items:
            type: string
          name: marketCodes
          required: false
          type: array
        - collectionFormat: csv
          description: Return all rateplans by which at least one of the specified room types are sold
          in: query
          items:
            type: string
          name: roomTypes
          required: false
          type: array
        - collectionFormat: csv
          description: Return all rateplans having at least one of the specified services included
          in: query
          items:
            type: string
          name: includedServices
          required: false
          type: array
        - description: Amount of items to skip.
          format: int32
          in: query
          name: skip
          required: false
          type: integer
        - description: Amount of items to select.
          format: int32
          in: query
          name: top
          required: false
          type: integer
        - description: Return total number of items for a given filter criteria.
          enum:
            - None
            - AllPages
          in: query
          name: inlinecount
          required: false
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: A list of rateplans for a requested hotel matching the filter criteria.
          schema:
            $ref: "#/definitions/RateplansListResponse"
        "204":
          description: There are no rateplans found for the given filtering and pagination criteria.
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get a list of rateplans for the specified hotel id matching the filter criteria.
      tags:
        - RatePlans
  "/api/hotel/v0/hotels/{hotelId}/rateplans/$count":
    get:
      consumes: []
      deprecated: false
      operationId: RatePlans_GetRateplansCount
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel you are counting the rateplans for.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: "Specify which rateplans to return. If you do not specify a value you will by default get active\r

            \            rateplans."
          enum:
            - Active
            - Inactive
            - All
          in: query
          name: sellingStatus
          required: false
          type: string
        - description: Return all rateplans having commisionable status
          in: query
          name: commissionable
          required: false
          type: boolean
        - description: Return all rateplans belonging to the specified rateplan group
          in: query
          name: group
          required: false
          type: string
        - description: Return all rateplans having the specified rateplan as base rateplan
          in: query
          name: baseRateplan
          required: false
          type: string
        - description: Return all rateplans that are sold through at least one channel out of the specified channel group
          in: query
          name: channelGroup
          required: false
          type: string
        - description: Return all rateplans sold through the specified channel
          in: query
          name: channelCode
          required: false
          type: string
        - collectionFormat: csv
          description: Return all rateplans having one of the specified values as a market code
          in: query
          items:
            type: string
          name: marketCodes
          required: false
          type: array
        - collectionFormat: csv
          description: Return all rateplans by which at least one of the specified room types are sold
          in: query
          items:
            type: string
          name: roomTypes
          required: false
          type: array
        - collectionFormat: csv
          description: Return all rateplans having at least one of the specified services included
          in: query
          items:
            type: string
          name: includedServices
          required: false
          type: array
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: The rateplans count in the hotel matching the given filter criteria.
          schema:
            $ref: "#/definitions/TotalCountResponse"
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get the count of all rateplans in the hotel matching the given filter criteria.
      tags:
        - RatePlans
  "/api/hotel/v0/hotels/{hotelId}/rateplans/batch/$rates":
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Currently this call only allows to set the base price for non-derived rateplans if the rateplan\r

        \            is active and already loaded for the specified time period.\r

        \            <br /><br />\r

        \            A request example:<br /><pre>\r

        \            [\r

        \              {\r

        \                \"rateplan\": \"STDN01\", \"from\": \"2018-01-01\", \"to\": \"2018-01-30\", \"base_price\": 120.00\r

        \              }\r

        \            ]\r

        \            </pre><br />\r

        \            For more details on how the API responds to errors please check our documentation on \r

        \            <a href=\"https://developer.hetras.com/docs/errors/\" onfocus=\"this.blur()\">Error Handling</a>.<br />"
      operationId: RatePlans_BatchUpdateRates
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the rateplan belongs to.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: ""
          in: body
          name: request
          required: true
          schema:
            items:
              $ref: "#/definitions/RatesBatchUpdateRequestItem"
            type: array
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: The update was successful
          schema:
            $ref: "#/definitions/Object"
        "400":
          description: Bad request. Request body erroneous.
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Update a list of base rateplans for a given period and a given base price for single occupancy.
      tags:
        - RatePlans
  "/api/hotel/v0/hotels/{hotelId}/rateplans/{rateplanCode}":
    get:
      consumes: []
      deprecated: false
      description: Read the details about a specific rateplan for the defined hotel.
      operationId: RatePlans_GetRateplan
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the rateplan belongs to.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: The code of the rateplan you want to see details for.
          in: path
          name: rateplanCode
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Rateplan details for the given rateplan and hotel.
          schema:
            $ref: "#/definitions/ExtendedRateplanEntry"
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI or the requested rateplan could not be found.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get all the details for a specific rateplan in the hotel.
      tags:
        - RatePlans
  "/api/hotel/v0/hotels/{hotelId}/rateplans/{rateplanCode}/rates":
    get:
      consumes: []
      deprecated: false
      description: "With this call you can read the daily rates setup including the cancellation policy and minimum guarantee per day for the\r

        \            specified rateplan. You can specify a timeperiod to read the daily rates for. The rateplan needs to be active for at least\r

        \            one business day in the defined time period and have rates loaded."
      operationId: RatePlans_GetRates
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the rateplan belongs to.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: The code of the rateplan you want to see details for.
          in: path
          name: rateplanCode
          required: true
          type: string
        - description: You can expand the supplements per room type on demand. By default they are not shown.
          enum:
            - RoomTypeSupplements
          in: query
          name: expand
          required: false
          type: string
        - description: "Defines the last business day you would like to get rates for. The maximum time span between <i>from</i>´and <i>to</i>\r

            \            is limited to 365 days."
          format: date-time
          in: query
          name: from
          required: true
          type: string
        - description: Defines the first business day you would like to get rates for.
          format: date-time
          in: query
          name: to
          required: true
          type: string
        - description: Amount of items to skip.
          format: int32
          in: query
          name: skip
          required: false
          type: integer
        - description: Amount of items to select.
          format: int32
          in: query
          name: top
          required: false
          type: integer
        - description: Return total number of items for a given filter criteria.
          enum:
            - None
            - AllPages
          in: query
          name: inlinecount
          required: false
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: List of daily rates within the specified time preiod.
          schema:
            $ref: "#/definitions/RatesResponse"
        "204":
          description: The rateplan does not have any active date or is not loaded within the defined time period.
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI or the requested rateplan could not be found.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get the setup of the daily rates for a specific rateplan and a defined timeperiod.
      tags:
        - RatePlans
    patch:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "The hetras API is using this <a href=\"https://developer.hetras.com/docs/patch\" onfocus=\"this.blur()\" target=\"_blank\">Patch Specification</a>\r

        \            to partially update an existing resource. Currently this call only allows to set the base price for non-derived rateplans if the rateplan\r

        \            is active and already loaded for the specified time period.\r

        \            <br /><br />\r

        \            A request example:<br /><pre>\r

        \            [\r

        \              {\r

        \                \"op\": \"replace\", \"path\": \"/base_price\", \"value\": 120.00\r

        \              }\r

        \            ]\r

        \            </pre><br />\r

        \            For more details on how the API responds to errors please check our documentation on \r

        \            <a href=\"https://developer.hetras.com/docs/errors/\" onfocus=\"this.blur()\">Error Handling</a>.<br />"
      operationId: RatePlans_PatchRates
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the rateplan belongs to.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: The code of the rateplan you want to update the daily rate details for.
          in: path
          name: rateplanCode
          required: true
          type: string
        - description: A set of JSON Patch operations.
          in: body
          name: patchRequest
          required: true
          schema:
            $ref: "#/definitions/JsonPatchDocument[RatePatchRequest]"
        - description: "Defines the last business day you would like to get rates for. The maximum time span between <i>from</i>´and <i>to</i>\r

            \            is limited to 365 days."
          format: date-time
          in: query
          name: from
          required: true
          type: string
        - description: Defines the first business day you would like to get rates for.
          format: date-time
          in: query
          name: to
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: The update was successful
          schema:
            $ref: "#/definitions/Object"
        "400":
          description: Bad request. Request body erroneous.
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Partially update a rate of the specified rateplan for the defined time period.
      tags:
        - RatePlans
  "/api/hotel/v0/hotels/{hotelId}/rateplans/{rateplanCode}/rates/$count":
    get:
      consumes: []
      deprecated: false
      operationId: RatePlans_GetRatesCount
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the rateplan belongs to.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: The code of the rateplan you want to count daily rates for.
          in: path
          name: rateplanCode
          required: true
          type: string
        - description: "Defines the last business day you would like to get rates for. The maximum time span between <i>from</i>´and <i>to</i>\r

            \            is limited to 365 days."
          format: date-time
          in: query
          name: from
          required: true
          type: string
        - description: Defines the first business day you would like to get rates for.
          format: date-time
          in: query
          name: to
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: The count of daily rates for the specified time period.
          schema:
            $ref: "#/definitions/TotalCountResponse"
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI or the requested room could not be found.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get the count of all active and loaded daily rates for the defined rateplan in a specified time period.
      tags:
        - RatePlans
  "/api/hotel/v0/hotels/{hotelId}/rateplans/{rateplanCode}/rates/{businessDay}":
    get:
      consumes: []
      deprecated: false
      description: Read the setup of the daily rate for the defined rateplan for that specific business day.
      operationId: RatePlans_GetRate
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the rateplan belongs to.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: The code of the rateplan you want to see details for.
          in: path
          name: rateplanCode
          required: true
          type: string
        - description: The business day you want to get the rate setup for.
          format: date-time
          in: path
          name: businessDay
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Daily rate with room type supplements for the specified rateplan and business day.
          schema:
            $ref: "#/definitions/RateResponse"
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: "Not Found. The server has not found anything matching the Request-URI or the requested\r

            \            rateplan could not be found or the rate is inactive on this business day."
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get the setup of a daily rate for a specific business day and rateplan.
      tags:
        - RatePlans
    patch:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "The hetras API is using this <a href=\"https://developer.hetras.com/docs/patch\" onfocus=\"this.blur()\" target=\"_blank\">Patch Specification</a>\r

        \            to partially update an existing resource. Currently this call only allows to set the base price for non-derived rateplans if the rateplan\r

        \            is active and already loaded for the specified business day.\r

        \            <br /><br />\r

        \            A request example:<br /><pre>\r

        \            [\r

        \              {\r

        \                \"op\": \"replace\", \"path\": \"/base_price\", \"value\": 120.00\r

        \              }\r

        \            ]\r

        \            </pre><br />\r

        \            For more details on how the API responds to errors please check our documentation on \r

        \            <a href=\"https://developer.hetras.com/docs/errors/\" onfocus=\"this.blur()\">Error Handling</a>.<br />"
      operationId: RatePlans_PatchRate
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the rateplan belongs to.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: The code of the rateplan you want to update the daily rate details for.
          in: path
          name: rateplanCode
          required: true
          type: string
        - description: The business day of the daily rate you want to update.
          format: date-time
          in: path
          name: businessDay
          required: true
          type: string
        - description: A set of JSON Patch operations.
          in: body
          name: patchRequest
          required: true
          schema:
            $ref: "#/definitions/JsonPatchDocument[RatePatchRequest]"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: The update was successful
          schema:
            $ref: "#/definitions/Object"
        "400":
          description: Bad request. Request body erroneous.
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Partially update a rate of the specified rateplan for a defined business day.
      tags:
        - RatePlans
  "/api/hotel/v0/hotels/{hotelId}/room_types":
    get:
      consumes: []
      deprecated: false
      description: With this call you can load the details about a all available room types for the specified hotel.
      operationId: RoomTypes_GetRoomTypes
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the room type belongs to.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: A list of room types for the given hotel.
          schema:
            items:
              $ref: "#/definitions/RoomType"
            type: array
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI or the requested room could not be found.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get a list with the details of all room types for for the specified hotel id.
      tags:
        - RoomTypes
  "/api/hotel/v0/hotels/{hotelId}/room_types/{code}":
    get:
      consumes: []
      deprecated: false
      description: With this call you can load the details about a specific room type in the hotel.
      operationId: RoomTypes_GetRoomType
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the room type belongs to.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: The code of the room type you want to see details for.
          in: path
          name: code
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Room type details for the given room and hotel.
          schema:
            $ref: "#/definitions/RoomType"
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI or the requested room could not be found.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get all the details for a specific room type in the hotel.
      tags:
        - RoomTypes
  "/api/hotel/v0/hotels/{hotelId}/rooms":
    get:
      consumes: []
      deprecated: false
      description: "Find all rooms for the hotel that match the specified filter criteria. The filtering will be done based on the current state of\r

        \            the rooms."
      operationId: Rooms_GetRooms
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel you are trying to find rooms for.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: Return results only for rooms that have the given frontdesk ocuppancy status.
          enum:
            - Occupied
            - Vacant
          in: query
          name: occupancy
          required: false
          type: string
        - collectionFormat: csv
          description: Return results only for rooms that have the given room condition status.
          in: query
          items:
            enum:
              - CleanNotInspected
              - Clean
              - Dirty
            type: string
          name: conditions
          required: false
          type: array
        - collectionFormat: csv
          description: Return results only for rooms that have the given maintenance status.
          in: query
          items:
            enum:
              - NotSet
              - None
              - OutOfInventory
              - OutOfOrder
              - OutOfService
            type: string
          name: maintenances
          required: false
          type: array
        - collectionFormat: csv
          description: Return result only for rooms for the given room types. Allows to pass a comma-separated list of room types.
          in: query
          items:
            type: string
          name: roomTypes
          required: false
          type: array
        - collectionFormat: csv
          description: "Return result only for rooms having all of the given amenities. You can provide a comma seperated list of \r

            \            amenity codes."
          in: query
          items:
            type: string
          name: amenities
          required: false
          type: array
        - collectionFormat: csv
          description: "Return result only for rooms having at least one of the specified views. You can provide a comma seperated list of \r

            \            view codes."
          in: query
          items:
            type: string
          name: views
          required: false
          type: array
        - collectionFormat: csv
          description: "Return result only for rooms having at least one of the specified locations. You can provide a comma seperated list of \r

            \            location codes."
          in: query
          items:
            type: string
          name: locations
          required: false
          type: array
        - description: Amount of items to skip.
          format: int32
          in: query
          name: skip
          required: false
          type: integer
        - description: Amount of items to select.
          format: int32
          in: query
          name: top
          required: false
          type: integer
        - description: Return total number of items for a given filter criteria.
          enum:
            - None
            - AllPages
          in: query
          name: inlinecount
          required: false
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: A list of rooms for the hotel based on the set filter criteria.
          schema:
            $ref: "#/definitions/RoomListResponse"
        "204":
          description: There are no rooms found for the given filtering and pagination criteria.
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI or the requested room could not be found.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get a list of rooms using the provided filtering and pagination criteria.
      tags:
        - Rooms
  "/api/hotel/v0/hotels/{hotelId}/rooms/$count":
    get:
      consumes: []
      deprecated: false
      operationId: Rooms_GetRoomsCount
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel you are counting the rooms for.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: Return results only for rooms that have the given frontdesk ocuppancy status.
          enum:
            - Occupied
            - Vacant
          in: query
          name: occupancy
          required: false
          type: string
        - collectionFormat: csv
          description: Return results only for rooms that have the given room condition status.
          in: query
          items:
            enum:
              - CleanNotInspected
              - Clean
              - Dirty
            type: string
          name: conditions
          required: false
          type: array
        - collectionFormat: csv
          description: Return results only for rooms that have the given maintenance status.
          in: query
          items:
            enum:
              - NotSet
              - None
              - OutOfInventory
              - OutOfOrder
              - OutOfService
            type: string
          name: maintenances
          required: false
          type: array
        - collectionFormat: csv
          description: Return result only for rooms for the given room types. Allows to pass a comma-separated list of room types.
          in: query
          items:
            type: string
          name: roomTypes
          required: false
          type: array
        - collectionFormat: csv
          description: "Return result only for rooms having all of the given amenities. You can provide a comma seperated list of \r

            \            amenity codes."
          in: query
          items:
            type: string
          name: amenities
          required: false
          type: array
        - collectionFormat: csv
          description: "Return result only for rooms having at least one of the specified views. You can provide a comma seperated list of \r

            \            view codes."
          in: query
          items:
            type: string
          name: views
          required: false
          type: array
        - collectionFormat: csv
          description: "Return result only for rooms having at least one of the specified locations. You can provide a comma seperated list of \r

            \            location codes."
          in: query
          items:
            type: string
          name: locations
          required: false
          type: array
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: The room count in the hotel matching the given filter criteria.
          schema:
            $ref: "#/definitions/TotalCountResponse"
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI or the requested room could not be found.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get the count of all rooms in the hotel matching the given filter criteria.
      tags:
        - Rooms
  "/api/hotel/v0/hotels/{hotelId}/rooms/available":
    get:
      consumes: []
      deprecated: false
      operationId: Rooms_GetAvailableRooms
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel you are looking for available rooms.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: "Rooms returned will not be assigned to a reservation or be under maintenance between this date\r

            \            and the specified to date. Still there could be departing reservations or ending maintenances\r

            \            for this date."
          format: date-time
          in: query
          name: from
          required: true
          type: string
        - description: "Rooms returned will not be assigned to a reservation or be under maintenance between the specified\r

            \            from date and this date. Still there could be arriving reservations or beginning maintenances\r

            \            for this date."
          format: date-time
          in: query
          name: to
          required: true
          type: string
        - description: Specifies number of adults the returned rooms will have to be able to house. The default value is 1.
          format: byte
          in: query
          name: adults
          required: false
          type: string
        - description: "Should rooms that are set OutOfService in the defined time period be returned as available. By default\r

            \            they are not."
          in: query
          name: includeOutOfService
          required: false
          type: boolean
        - collectionFormat: csv
          description: Return result only for rooms for the given room types. Allows to pass a comma-separated list of room types.
          in: query
          items:
            type: string
          name: roomTypes
          required: false
          type: array
        - collectionFormat: csv
          description: "Return result only for rooms having all of the given amenities. You can provide a comma seperated list of \r

            \            amenity codes."
          in: query
          items:
            type: string
          name: amenities
          required: false
          type: array
        - collectionFormat: csv
          description: "Return result only for rooms having at least one of the specified views. You can provide a comma seperated list of \r

            \            view codes."
          in: query
          items:
            type: string
          name: views
          required: false
          type: array
        - collectionFormat: csv
          description: "Return result only for rooms having at least one of the specified locations. You can provide a comma seperated list of \r

            \            location codes."
          in: query
          items:
            type: string
          name: locations
          required: false
          type: array
        - description: Amount of items to skip.
          format: int32
          in: query
          name: skip
          required: false
          type: integer
        - description: Amount of items to select.
          format: int32
          in: query
          name: top
          required: false
          type: integer
        - description: Return total number of items for a given filter criteria.
          enum:
            - None
            - AllPages
          in: query
          name: inlinecount
          required: false
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: A list of available rooms in the specified time period.
          schema:
            $ref: "#/definitions/RoomListResponse"
        "204":
          description: There are no available rooms found for the given criteria.
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI or the requested room could not be found.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Request available rooms using a given criteria.
      tags:
        - Rooms
  "/api/hotel/v0/hotels/{hotelId}/rooms/{roomNumber}":
    get:
      consumes: []
      deprecated: false
      description: With this call you can load the details about a specific room in the hotel. It will show you the current status of the room.
      operationId: Rooms_GetRoom
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the room belongs to.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: The room number you want to see details for.
          in: path
          name: roomNumber
          required: true
          type: string
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Room details for the given room and hotel.
          schema:
            $ref: "#/definitions/Room"
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI or the requested room could not be found.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Get all the details for a specific room in the hotel.
      tags:
        - Rooms
    patch:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "The hetras API is using this <a href=\"https://developer.hetras.com/docs/patch\" onfocus=\"this.blur()\" target=\"_blank\">Patch Specification</a>\r

        \            to partially update an existing resource. Currently this call only allows to modify condition and housekeeping occupancy status of the room.\r

        \            <br /><br />\r

        \            A request example:<br /><pre>\r

        \            [\r

        \              {\r

        \                \"op\": \"replace\", \"path\": \"/status/condition\", \"value\": \"CleanNotInspected\"\r

        \              }, {\r

        \                \"op\": \"replace\", \"path\": \"/status/housekeeping_occupancy\", \"value\": \"Vacant\"\r

        \              }\r

        \            ]\r

        \            </pre><br />\r

        \            For more details on how the API responds to errors please check our documentation on \r

        \            <a href=\"https://developer.hetras.com/docs/errors/\" onfocus=\"this.blur()\">Error Handling</a>.<br />"
      operationId: Rooms_PatchRoom
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: The hotel id the room belongs to.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: The room number of the room you would like to update.
          in: path
          name: roomNumber
          required: true
          type: string
        - description: A set of JSON Patch operations.
          in: body
          name: patchRequest
          required: true
          schema:
            $ref: "#/definitions/JsonPatchDocument[RoomPatchRequest]"
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: The update was successful
          schema:
            $ref: "#/definitions/Object"
        "400":
          description: Bad request. Request body erroneous.
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Partially updates a room.
      tags:
        - Rooms
  "/api/hotel/v0/hotels/{hotelId}/yieldable_rateplans/{rateplanCode}/$rates":
    put:
      consumes:
        - application/json
        - text/json
      deprecated: false
      description: "Saves Yieldable Rate Prices for existing Yieldable Rateplan. The rateplan has been created before and with this End Point we \r

        \            create or update the rate prices. If the Yieldable rateplan prices exist it updates them with the new price if not it creates new price entries.<br />\r

        \            For more details on how the API responds to errors please check our documentation on \r

        \            <a href=\"https://developer.hetras.com/docs/errors/\" onfocus=\"this.blur()\">Error Handling</a>."
      operationId: YieldableRates_SavePrices
      parameters:
        - description: Application identifier
          in: header
          name: App-Id
          required: true
          type: string
          x-data-threescale-name: app_ids
        - description: Application key.
          in: header
          name: App-Key
          required: true
          type: string
          x-data-threescale-name: app_keys
        - description: Specifies the hotelId which identifies Hotel for which the operation will be performed.
          format: int32
          in: path
          name: hotelId
          required: true
          type: integer
        - description: Specifies the rateplanCode for which the operation will be performed.
          in: path
          name: rateplanCode
          required: true
          type: string
        - description: Specifies the the Yieldable rateplan and prices details to be created or updated.
          in: body
          name: yieldableRatePrices
          required: true
          schema:
            items:
              $ref: "#/definitions/YieldableRateTimeSlice"
            type: array
      produces:
        - application/json
        - text/json
      responses:
        "200":
          description: Saving the Yieldable rateplan prices was successful. You will get back the confirmation.
          schema:
            $ref: "#/definitions/Object"
        "400":
          description: Bad request. Request body erroneous.
        "401":
          description: You provided wrong credentials, or you reached your API limit.
        "403":
          description: The application does not have access to the requested resource.
        "404":
          description: Not Found. The server has not found anything matching the Request-URI.
        "422":
          description: The request failed to validate.
        "500":
          description: We caught an unexpected error on our side. Please report with providing the Hetras-Tracking-Id from the response headers and we will check the logfiles.
        "503":
          description: The server is currently unavailable. Please try later.
      summary: Saves Yieldable Rate Prices for existing Yieldable Rateplan.
      tags:
        - YieldableRates
definitions:
  AccessControlInfo:
    properties:
      channel_codes:
        description: List of codes of distribution channels
        items:
          type: string
        type: array
      channel_group:
        description: Code of the distribution channel group
        type: string
    type: object
  CodeBaseEntry:
    properties:
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      code:
        description: "The code value. This value you will see in reservations as market code and in other\r

          \            resources like the revenue buckets in transactions"
        type: string
      default:
        description: "This attribute tells you if this code is the default code for the specific type or not.\r

          \            Not all the types of codes need to have a default code"
        type: boolean
      id:
        description: The id of the code
        type: string
      name:
        description: The name of the code that usually is more human readable
        type: string
      type:
        description: The type or category of the code
        enum:
          - GuestRequest
          - RequestDietary
          - VIPStatus
          - ReasonForRateChange
          - Regrets
          - MarketSegments
          - SourceOfBusiness
          - LoyaltyProgram
          - CancellationReason
          - AccountType
          - AccountRank
          - VIPLevel
          - Title
          - ContactFunction
          - Territory
          - CorrespondenceType
          - ExternalProgramType
          - RevenueBucket
          - AdditionalRevenueBucket
          - AdditionalStatisticsBuckets
          - MealPeriod
          - BillingCycle
          - ReminderCycle
          - MajorMarketSegments
          - DocumentType
          - ActivityType
          - ReservationLabels
        type: string
    type: object
  CodeFullEntry:
    properties:
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      code:
        description: "The code value. This value you will see in reservations as market code and in other\r

          \            resources like the revenue buckets in transactions"
        type: string
      comment:
        description: The comment for this code
        type: string
      default:
        description: "This attribute tells you if this code is the default code for the specific type or not.\r

          \            Not all the types of codes need to have a default code"
        type: boolean
      id:
        description: The id of the code
        type: string
      name:
        description: The name of the code that usually is more human readable
        type: string
      parent:
        $ref: "#/definitions/CodeBaseEntry"
        description: "Some codes can have a hierarchy and a child code always points to\r

          \            the parent"
      type:
        description: The type or category of the code
        enum:
          - GuestRequest
          - RequestDietary
          - VIPStatus
          - ReasonForRateChange
          - Regrets
          - MarketSegments
          - SourceOfBusiness
          - LoyaltyProgram
          - CancellationReason
          - AccountType
          - AccountRank
          - VIPLevel
          - Title
          - ContactFunction
          - Territory
          - CorrespondenceType
          - ExternalProgramType
          - RevenueBucket
          - AdditionalRevenueBucket
          - AdditionalStatisticsBuckets
          - MealPeriod
          - BillingCycle
          - ReminderCycle
          - MajorMarketSegments
          - DocumentType
          - ActivityType
          - ReservationLabels
        type: string
    type: object
  CodesListRequest:
    properties:
      code:
        description: "Return all results matching the specified code. A code is unique in combination with the type\r

          \            which means when you query for a code you could get multiple results each for a different type"
        type: string
      type:
        description: Return all codes for the specified type
        enum:
          - GuestRequest
          - RequestDietary
          - VIPStatus
          - ReasonForRateChange
          - Regrets
          - MarketSegments
          - SourceOfBusiness
          - LoyaltyProgram
          - CancellationReason
          - AccountType
          - AccountRank
          - VIPLevel
          - Title
          - ContactFunction
          - Territory
          - CorrespondenceType
          - ExternalProgramType
          - RevenueBucket
          - AdditionalRevenueBucket
          - AdditionalStatisticsBuckets
          - MealPeriod
          - BillingCycle
          - ReminderCycle
          - MajorMarketSegments
          - DocumentType
          - ActivityType
          - ReservationLabels
        type: string
    type: object
  CodesListResponse:
    properties:
      codes:
        description: The list of codes matching the defined filter criteria
        items:
          $ref: "#/definitions/CodeBaseEntry"
        type: array
    type: object
  DatePeriod:
    properties:
      from:
        description: Start Date for this time period
        format: date-time
        type: string
      to:
        description: End Date for this time period
        format: date-time
        type: string
    type: object
  Derivation:
    properties:
      adjustment:
        description: Mode for the calculation of the daily rates adjustment
        enum:
          - Amount
          - Percentage
        type: string
      base_rateplan:
        $ref: "#/definitions/RelatedRateplan"
        description: Details about the base rateplan
    type: object
  EmbeddedReservation:
    description: Basic data about a reservation
    properties:
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      arrival_date:
        description: The arrival date of the guests
        format: date-time
        type: string
      confirmation_id:
        description: "he confirmation id for the booking which the guest can use to check in on the kiosk, add the \r

          \            booking to the mobile app etc. It is used as identifier for all reservations done with the \r

          \            same booking request"
        type: string
      departure_date:
        description: The departure date of the guests
        format: date-time
        type: string
      reservation_number:
        description: The reservation number of the reservation
        format: int32
        type: integer
      reservation_status:
        description: The current status of this reservation
        enum:
          - Tentative
          - Waitlisted
          - OnRequest
          - NonGuaranteed
          - Guaranteed
          - InHouse
          - CheckedOut
          - NoShow
          - Denied
          - Cancelled
          - Released
          - Walked
          - Expired
          - WalkIn
          - Registered
        type: string
    required:
      - confirmation_id
      - reservation_number
      - reservation_status
      - arrival_date
      - departure_date
    type: object
  EmbeddedRoomType:
    description: "Basic data for a room type. To get the full details please follow the self link\r

      \            from the links collection"
    properties:
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      code:
        description: Code of the room type
        type: string
      description:
        description: Description of the room type
        type: string
      name:
        description: Name of the room type
        type: string
    type: object
  EmbeddedRoomTypeSimple:
    description: Contains only a basic information about a room type. No cross-links available as well.
    properties:
      code:
        description: Code of the room type
        type: string
      description:
        description: Description of the room type
        type: string
      name:
        description: Name of the room type
        type: string
    type: object
  EmbeddedRoomWithStatus:
    properties:
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      created:
        description: Timestamp the room was created
        format: date-time
        type: string
      description:
        description: Description of the room
        type: string
      name:
        description: Name of the room
        type: string
      number:
        description: Number of the room
        type: string
      room_type:
        $ref: "#/definitions/EmbeddedRoomType"
        description: Room type of the room. Contains only the basic properties of the room type
      status:
        $ref: "#/definitions/RoomStatus"
        description: Contains information about room status.
      updated:
        description: Timestamp of when the room was changed the last time
        format: date-time
        type: string
    type: object
  ExtendedRateplanEntry:
    properties:
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      access_control:
        description: List of distribution channel groups and channels the rateplan is sold through
        items:
          $ref: "#/definitions/AccessControlInfo"
        type: array
      active:
        description: Defines if the rateplan has been ended and is expired
        type: boolean
      active_periods:
        description: "List of active periods. Arrival and departure day for reservations based on this rateplan need to\r

          \            fit into one of these time periods"
        items:
          $ref: "#/definitions/DatePeriod"
        type: array
      booking_periods:
        description: List of booking periods. During these time periods the rateplan is sold
        items:
          $ref: "#/definitions/DatePeriod"
        type: array
      code:
        description: Code of the rateplan
        type: string
      commissionable:
        description: Defines if this rateplan is setup with a commission
        type: boolean
      created:
        description: Timestamp the rateplan was created
        format: date-time
        type: string
      day_use:
        description: Defines if this rateplan is used for day use reservations
        type: boolean
      derivation:
        $ref: "#/definitions/Derivation"
        description: "If this rateplan is derived from a base rateplan you will see some details about\r

          \            the base rateplan and the mode for the adjustment of the daily rates"
      derived_rateplans:
        description: Details about all the derived rateplans if any
        items:
          $ref: "#/definitions/RelatedRateplan"
        type: array
      description:
        description: Description of the rateplan
        type: string
      folio_name:
        description: "Text defining how the room charges for this rateplan are shown on the folio and\r

          \            invoice for the guest"
        type: string
      group:
        $ref: "#/definitions/RateplanGroup"
        description: Details about the rateplan group
      included_services:
        description: List of codes for the included services sold with this rateplan
        items:
          type: string
        type: array
      is_yieldable:
        description: Gives the information if this rateplan is Yieldable rateplan
        type: boolean
      market_code:
        description: The code of the market segment the rate plan is linked to
        type: string
      name:
        description: Name of the rateplan
        type: string
      noshow_policy:
        description: The code of the noshow policy for this rateplan
        type: string
      restrictions:
        $ref: "#/definitions/Restrictions"
        description: Generic rateplan restrictions valid on all booking periods
      room_types:
        description: List of all room types sold through this rateplan
        items:
          $ref: "#/definitions/EmbeddedRoomType"
        type: array
      suspended:
        description: "Defines if a rateplan is suspended and no new reservations can be created for this\r

          \            rateplan at the moment"
        type: boolean
      taxes_included:
        description: Defines if the daily rates include VAT or not
        type: boolean
      updated:
        description: Timestamp of when the rateplan was changed the last time
        format: date-time
        type: string
      visibility:
        description: Defines if this rateplan is visible to the public or only for specific customers
        enum:
          - Public
          - Negotiated
        type: string
    type: object
  GetAvailableRoomsRequest:
    properties:
      adults:
        description: Specifies number of adults the returned rooms will have to be able to house. The default value is 1.
        format: byte
        type: string
      amenities:
        description: "Return result only for rooms having all of the given amenities. You can provide a comma seperated list of \r

          \            amenity codes."
        items:
          type: string
        type: array
      from:
        description: "Rooms returned will not be assigned to a reservation or be under maintenance between this date\r

          \            and the specified to date. Still there could be departing reservations or ending maintenances\r

          \            for this date."
        format: date-time
        type: string
      includeOutOfService:
        description: "Should rooms that are set OutOfService in the defined time period be returned as available. By default\r

          \            they are not."
        type: boolean
      locations:
        description: "Return result only for rooms having at least one of the specified locations. You can provide a comma seperated list of \r

          \            location codes."
        items:
          type: string
        type: array
      roomTypes:
        description: Return result only for rooms for the given room types. Allows to pass a comma-separated list of room types.
        items:
          type: string
        type: array
      to:
        description: "Rooms returned will not be assigned to a reservation or be under maintenance between the specified\r

          \            from date and this date. Still there could be arriving reservations or beginning maintenances\r

          \            for this date."
        format: date-time
        type: string
      views:
        description: "Return result only for rooms having at least one of the specified views. You can provide a comma seperated list of \r

          \            view codes."
        items:
          type: string
        type: array
    required:
      - from
      - to
    type: object
  GetRatesRequest:
    properties:
      Expand:
        description: You can expand the supplements per room type on demand. By default they are not shown.
        enum:
          - RoomTypeSupplements
        type: string
      From:
        description: "Defines the last business day you would like to get rates for. The maximum time span between <i>from</i>´and <i>to</i>\r

          \            is limited to 365 days."
        format: date-time
        type: string
      To:
        description: Defines the first business day you would like to get rates for.
        format: date-time
        type: string
    required:
      - From
      - To
    type: object
  GetRoomListRequest:
    properties:
      amenities:
        description: "Return result only for rooms having all of the given amenities. You can provide a comma seperated list of \r

          \            amenity codes."
        items:
          type: string
        type: array
      conditions:
        description: Return results only for rooms that have the given room condition status.
        items:
          enum:
            - CleanNotInspected
            - Clean
            - Dirty
          type: string
        type: array
      locations:
        description: "Return result only for rooms having at least one of the specified locations. You can provide a comma seperated list of \r

          \            location codes."
        items:
          type: string
        type: array
      maintenances:
        description: Return results only for rooms that have the given maintenance status.
        items:
          enum:
            - NotSet
            - None
            - OutOfInventory
            - OutOfOrder
            - OutOfService
          type: string
        type: array
      occupancy:
        description: Return results only for rooms that have the given frontdesk ocuppancy status.
        enum:
          - Occupied
          - Vacant
        type: string
      roomTypes:
        description: Return result only for rooms for the given room types. Allows to pass a comma-separated list of room types.
        items:
          type: string
        type: array
      views:
        description: "Return result only for rooms having at least one of the specified views. You can provide a comma seperated list of \r

          \            view codes."
        items:
          type: string
        type: array
    type: object
  Hotel:
    properties:
      city:
        description: The city the hotel is located in
        type: string
      code:
        description: The code of the hotel
        type: string
      country:
        description: "The country the hotel is located. The country code is in ISO 3166-1 alpha-2 format\r

          \            (see: <a href=\"http://www.iso.org/iso/country_codes/iso_3166_code_lists/country_names_and_code_elements.htm\" onfocus=\"this.blur()\" target=\"_blank\">http://www.iso.org/iso/country_codes/iso_3166_code_lists/country_names_and_code_elements.htm</a>)"
        type: string
      created:
        description: Timestamp the hotel was created
        format: date-time
        type: string
      current_business_day:
        description: Return the current business day of the hotel in the ISO-8601 format "YYYY-MM-DD"
        format: date-time
        type: string
      desc:
        description: The descriptive text for the the hotel
        type: string
      email:
        description: The email address of the hotel
        type: string
      fax:
        description: The fax number of the hotel
        type: string
      hotel_id:
        description: The id of the hotel
        format: int32
        type: integer
      latitude:
        description: The latitude for the geolocation of the hotel. This allows you to show the hotel on a map
        format: double
        type: number
      longitude:
        description: The longitude for the geolocation of the hotel. This allows you to show the hotel on a map
        format: double
        type: number
      name:
        description: The name of the hotel
        type: string
      phone:
        description: The main phone number to call the hotel
        type: string
      postal_code:
        description: The postal code of the hotel
        type: string
      state:
        description: The state the hotel is located in
        type: string
      street:
        description: The street address of the hotel
        type: string
      updated:
        description: Timestamp of when the hotel was changed the last time
        format: date-time
        type: string
      url:
        description: The homepage URL of the hotel
        type: string
      utc_offset:
        description: "The current time offset of the hotel to UTC. This is taking into account daylight saving times and shows the offset for the time the request is handled. The response\r

          \            will be in the format of \"UTC±hh:mm\". If there is no offset to UTC it will be shown as \"UTC+00:00\""
        type: string
    type: object
  "JsonPatchDocument[RatePatchRequest]":
    items:
      $ref: "#/definitions/Operation[RatePatchRequest]"
    properties: {}
    type: array
  "JsonPatchDocument[RoomPatchRequest]":
    items:
      $ref: "#/definitions/Operation[RoomPatchRequest]"
    properties: {}
    type: array
  LinkObject:
    description: A Link Object represents a hyperlink from the containing resource to a URI.
    properties:
      deprecation:
        description: "<para>The \"deprecation\" property is OPTIONAL.</para>\r

          <para> </para>\r

          <para>Its presence indicates that the link is to be deprecated (i.e.\r

          \            removed) at a future date.  Its value is a URL that SHOULD provide\r

          \            further information about the deprecation.\r

          \            A client SHOULD provide some notification (for example, by logging a\r

          \            warning message) whenever it traverses over a link that has this\r

          \            property.  The notification SHOULD include the deprecation property's\r

          \            value so that a client maintainer can easily find information about\r

          \            the deprecation.</para>"
        type: string
      href:
        description: "<para>The \"href\" property is REQUIRED.</para>\r

          <para> </para>\r

          <para>Its value is either a URI [RFC3986] or a URI Template [RFC6570].\r

          \            If the value is a URI Template then the Link Object SHOULD have a\r

          \            \"templated\" attribute whose value is true.</para>"
        type: string
      hreflang:
        description: "<para>The \"hreflang\" property is OPTIONAL.</para>\r

          <para> </para>\r

          <para>Its value is a string and is intended for indicating the language of\r

          \            the target resource (as defined by [RFC5988]).</para>"
        type: string
      name:
        description: "<para>The \"name\" property is OPTIONAL.</para>\r

          <para> </para>\r

          <para>Its value MAY be used as a secondary key for selecting Link Objects\r

          \            which share the same relation type.</para>"
        type: string
      profile:
        description: "<para>The \"profile\" property is OPTIONAL.</para>\r

          <para> </para>\r

          <para>Its value is a string which is a URI that hints about the profile.</para>"
        type: string
      templated:
        description: "<para>The \"templated\" property is OPTIONAL.</para>\r

          <para> </para>\r

          <para>Its value is boolean and SHOULD be true when the Link Object's \"href\"\r

          \            property is a URI Template.\r

          \            Its value SHOULD be considered false if it is undefined or any other\r

          \            value than true.</para>"
        type: boolean
      title:
        description: "<para>The \"title\" property is OPTIONAL.</para>\r

          <para> </para>\r

          <para>Its value is a string and is intended for labelling the link with a\r

          \            human-readable identifier (as defined by [RFC5988]).</para>"
        type: string
      type:
        description: "<para>The \"type\" property is OPTIONAL.</para>\r

          <para> </para>\r

          <para>Its value is a string used as a hint to indicate the media type\r

          \            expected when dereferencing the target resource.</para>"
        type: string
    required:
      - href
    type: object
  ListRateplanEntry:
    properties:
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      access_control:
        description: List of distribution channel groups and channels the rateplan is sold through
        items:
          $ref: "#/definitions/AccessControlInfo"
        type: array
      active:
        description: Defines if the rateplan has been ended and is expired
        type: boolean
      active_periods:
        description: "List of active periods. Arrival and departure day for reservations based on this rateplan need to\r

          \            fit into one of these time periods"
        items:
          $ref: "#/definitions/DatePeriod"
        type: array
      base_rateplan:
        description: Code of the base rateplan if this rateplan is derived
        type: string
      booking_periods:
        description: List of booking periods. During these time periods the rateplan is sold
        items:
          $ref: "#/definitions/DatePeriod"
        type: array
      code:
        description: Code of the rateplan
        type: string
      commissionable:
        description: Defines if this rateplan is setup with a commission
        type: boolean
      created:
        description: Timestamp the rateplan was created
        format: date-time
        type: string
      day_use:
        description: Defines if this rateplan is used for day use reservations
        type: boolean
      derived_rateplans:
        description: List of codes for all derived rateplans if any
        items:
          type: string
        type: array
      description:
        description: Description of the rateplan
        type: string
      group:
        description: Code of the rateplan group
        type: string
      included_services:
        description: List of codes for the included services sold with this rateplan
        items:
          type: string
        type: array
      is_yieldable:
        description: Gives the information if this rateplan is Yieldable rateplan
        type: boolean
      market_code:
        description: The code of the market segment the rate plan is linked to
        type: string
      name:
        description: Name of the rateplan
        type: string
      room_types:
        description: List of all room types sold through this rateplan
        items:
          $ref: "#/definitions/EmbeddedRoomTypeSimple"
        type: array
      suspended:
        description: "Defines if a rateplan is suspended and no new reservations can be created for this\r

          \            rateplan at the moment"
        type: boolean
      updated:
        description: Timestamp of when the rateplan was changed the last time
        format: date-time
        type: string
      visibility:
        description: Defines if this rateplan is visible to the public or only for specific customers
        enum:
          - Public
          - Negotiated
        type: string
    type: object
  Object:
    properties: {}
    type: object
  "Operation[RatePatchRequest]":
    properties:
      from:
        type: string
      op:
        type: string
      path:
        type: string
      value:
        $ref: "#/definitions/Object"
    type: object
  "Operation[RoomPatchRequest]":
    properties:
      from:
        type: string
      op:
        type: string
      path:
        type: string
      value:
        $ref: "#/definitions/Object"
    type: object
  PagedDataRequest:
    properties:
      inlinecount:
        description: Return total number of items for a given filter criteria.
        enum:
          - None
          - AllPages
        type: string
      skip:
        description: Amount of items to skip.
        format: int32
        type: integer
      top:
        description: Amount of items to select.
        format: int32
        type: integer
    type: object
  Policy:
    properties:
      description:
        description: The description of the policy
        type: string
      name:
        description: The name of the policy
        type: string
    type: object
  PriceDerivation:
    properties:
      adjustment:
        description: Mode for the calculation of the daily rates adjustment
        enum:
          - Amount
          - Percentage
        type: string
      value:
        description: The value the rate of the base rateplan is adjusted by based on the calculation mode
        format: double
        type: number
    type: object
  RateResponse:
    properties:
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      base_price:
        description: "The price for this business day for the default room type and occupancy of one adult. The price is\r

          \            only available for base rateplans. Please be aware that it might be the case that the default room\r

          \            type is not sold by the rateplan. Nevertheless the supplements will always be added to the price for \r

          \            the default room type and one adult"
        format: double
        type: number
      business_day:
        description: The business day
        format: date-time
        type: string
      cancellation_policy:
        $ref: "#/definitions/Policy"
        description: The cancellation policy
      derivation:
        $ref: "#/definitions/PriceDerivation"
        description: Information on how the rate is derived from its base rateplan
      minimum_guarantee_type:
        description: The minimum guarantee
        enum:
          - PM4Hold
          - PM6Hold
          - GuaranteeToCreditCard
          - GuaranteeToGuestAccount
          - GuaranteeByTravelAgent
          - GuaranteeByCompany
          - Deposit
          - Voucher
          - Prepayment
          - NonGuaranteed
          - Tentative
          - Waitlist
        type: string
      per_person_surcharge:
        description: The surcharge per additional adult staying in the room. It is only available on base rateplans
        format: double
        type: number
      room_type_supplements:
        description: List of supplements added to the price per room type
        items:
          $ref: "#/definitions/RoomTypeSupplement"
        type: array
    type: object
  RateplanGroup:
    properties:
      code:
        description: Code of the rateplan group
        type: string
      name:
        description: Name of the rateplan group
        type: string
    type: object
  RateplansListRequest:
    properties:
      baseRateplan:
        description: Return all rateplans having the specified rateplan as base rateplan
        type: string
      channelCode:
        description: Return all rateplans sold through the specified channel
        type: string
      channelGroup:
        description: Return all rateplans that are sold through at least one channel out of the specified channel group
        type: string
      commissionable:
        description: Return all rateplans having commisionable status
        type: boolean
      group:
        description: Return all rateplans belonging to the specified rateplan group
        type: string
      includedServices:
        description: Return all rateplans having at least one of the specified services included
        items:
          type: string
        type: array
      marketCodes:
        description: Return all rateplans having one of the specified values as a market code
        items:
          type: string
        type: array
      roomTypes:
        description: Return all rateplans by which at least one of the specified room types are sold
        items:
          type: string
        type: array
      sellingStatus:
        description: "Specify which rateplans to return. If you do not specify a value you will by default get active\r

          \            rateplans."
        enum:
          - Active
          - Inactive
          - All
        type: string
    type: object
  RateplansListResponse:
    properties:
      _count:
        description: The number of items matching your request in total for all pages.
        format: int32
        type: integer
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      rateplans:
        description: List of rateplans
        items:
          $ref: "#/definitions/ListRateplanEntry"
        type: array
    type: object
  RatesBatchUpdateRequestItem:
    description: A rateplan update entry, for a given range and a given price.
    properties:
      base_price:
        description: The price of the rateplan for the default room type and single occupancy.
        format: double
        type: number
      from:
        description: "Defines the first business day you would like to update rates. The maximum time span between <i>from</i>´and <i>to</i>\r

          \            is limited to 365 days."
        format: date-time
        type: string
      rateplan:
        description: "The rateplan code to be updated. NOTE: this must be a base rateplan and not a derived one."
        type: string
      to:
        description: Defines the last business day you would like to update rates. This can be same as {Hetras.PublicApi.Models.Hotels.Rateplans.Rates.RatesBatchUpdateRequestItem.To} if the update is for a single date.
        format: date-time
        type: string
    required:
      - base_price
      - rateplan
      - from
      - to
    type: object
  RatesRequest:
    properties:
      From:
        description: "Defines the last business day you would like to get rates for. The maximum time span between <i>from</i>´and <i>to</i>\r

          \            is limited to 365 days."
        format: date-time
        type: string
      To:
        description: Defines the first business day you would like to get rates for.
        format: date-time
        type: string
    required:
      - From
      - To
    type: object
  RatesResponse:
    properties:
      _count:
        description: The number of items matching your request in total for all pages.
        format: int32
        type: integer
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      rates:
        description: The list of rates, cancellation policy and minimum guarantee per business day.
        items:
          $ref: "#/definitions/RateResponse"
        type: array
    type: object
  RelatedRateplan:
    properties:
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      code:
        description: Code of the rateplan
        type: string
      name:
        description: Name of the rateplan
        type: string
    type: object
  Restrictions:
    properties:
      leadtime_to_book:
        description: "Days this rateplan needs to be booked in advance. This value is mutual exclusive to the\r

          \            <i>max_advance_booking</i> and if no limit is set it is omitted"
        format: int32
        type: integer
      max_advance_booking:
        description: "Days this rateplan can be booked in advance. This value is mutual exclusive to the\r

          \            <i>leadtime_to_book</i> and if no limit is set it is omitted"
        format: int32
        type: integer
    type: object
  Room:
    description: Represents a room for a property.
    properties:
      amenities:
        description: List of amenities for the room
        items:
          $ref: "#/definitions/SimpleAttribute"
        type: array
      beddings:
        description: Provides information about available beds in the room
        items:
          $ref: "#/definitions/RoomBedding"
        type: array
      created:
        description: Timestamp the room was created
        format: date-time
        type: string
      description:
        description: Description of the room
        type: string
      expected_occupancy:
        description: The common amount of persons for the room
        format: int32
        type: integer
      extra_bed_allowed:
        description: Is there an extra bed allowed in the room
        type: boolean
      floor:
        description: Floor of the room
        format: int32
        type: integer
      locations:
        description: List of locations for the room
        items:
          $ref: "#/definitions/SimpleAttribute"
        type: array
      max_persons:
        description: Maximum number of allowed persons in the room
        format: int32
        type: integer
      min_persons:
        description: Minimum number of allowed persons in the room
        format: int32
        type: integer
      name:
        description: Name of the room
        type: string
      number:
        description: Number of the room
        type: string
      reservations:
        description: "Current reservation(s) for the room. It shows reservations due to arrive today and the one still inhouse.\r

          \            If there is a day-use reservation assigned for today it can show you up to 3 reservations. One that will\r

          \            depart today, the day-use reservqation for today and the one due to arrive"
        items:
          $ref: "#/definitions/EmbeddedReservation"
        type: array
      room_type:
        $ref: "#/definitions/EmbeddedRoomType"
        description: Room type of the room. Contains only the basic properties of the room type
      status:
        $ref: "#/definitions/RoomStatus"
        description: Contains information about room status
      updated:
        description: Timestamp of when the room was changed the last time
        format: date-time
        type: string
      views:
        description: List of views for the room
        items:
          $ref: "#/definitions/SimpleAttribute"
        type: array
    required:
      - number
      - room_type
      - status
      - min_persons
      - max_persons
      - expected_occupancy
      - floor
    type: object
  RoomBedding:
    description: Information about room bedding
    properties:
      count:
        description: Number of available beds of the specified type
        format: int32
        type: integer
      type:
        description: The type of bed
        enum:
          - NotDefined
          - Double
          - Futon
          - King
          - MurphyBed
          - Queen
          - SofaBed
          - TatamiMats
          - Twin
          - Single
        type: string
    type: object
  RoomListResponse:
    properties:
      _count:
        description: The number of items matching your request in total for all pages.
        format: int32
        type: integer
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      rooms:
        description: List of rooms
        items:
          $ref: "#/definitions/EmbeddedRoomWithStatus"
        type: array
    type: object
  RoomMaintenance:
    properties:
      from:
        description: Start date of the current maintenance work
        type: string
      reason:
        description: A description about the reason for the ongoing maintenance work
        type: string
      to:
        description: End date of the current maintenance work
        type: string
      value:
        description: Maintenance Status
        enum:
          - NotSet
          - None
          - OutOfInventory
          - OutOfOrder
          - OutOfService
        type: string
    type: object
  RoomStatus:
    description: Represents current room status data.
    properties:
      condition:
        description: Room Condition status
        enum:
          - CleanNotInspected
          - Clean
          - Dirty
        type: string
      frontdesk_occupancy:
        description: "The frontdesk occupancy is set by reservation checkin and checkout. It can differ from the\r

          \            housekeeping occupancy"
        enum:
          - Occupied
          - Vacant
        type: string
      housekeeping_occupancy:
        description: "The housekeeping occupancy status is defined by the housekeeping staff. Usually it matches the\r

          \            frontdesk occupancy, but sometimes the reservation is still inhouse, but it looks like there is no\r

          \            guest in the room anymore. Then the statuses can differ."
        enum:
          - Occupied
          - Vacant
        type: string
      maintenance:
        $ref: "#/definitions/RoomMaintenance"
        description: Information about current ongoing room maintenance
    type: object
  RoomType:
    description: Represent a room type for a property
    properties:
      amenities:
        description: List of amenities for the room type
        items:
          $ref: "#/definitions/SimpleAttribute"
        type: array
      bedding_type:
        description: The type of bed for the room type
        enum:
          - NotDefined
          - Double
          - Futon
          - King
          - MurphyBed
          - Queen
          - SofaBed
          - TatamiMats
          - Twin
          - Single
        type: string
      code:
        description: Code of the room type
        type: string
      created:
        description: Timestamp the room type was created
        format: date-time
        type: string
      default:
        description: Specifies if the room type is the default room type of the hotel
        type: boolean
      description:
        description: Description of the room type
        type: string
      expected_occupancy:
        description: The common amount of persons for the room
        format: int32
        type: integer
      facilities:
        description: List of facilities for the room type
        items:
          $ref: "#/definitions/SimpleAttribute"
        type: array
      max_persons:
        description: Maximum number of allowed persons for that room type
        format: int32
        type: integer
      min_persons:
        description: Minimum number of allowed persons for that room type
        format: int32
        type: integer
      name:
        description: Name of the room type
        type: string
      updated:
        description: Timestamp of when the room type was changed the last time
        format: date-time
        type: string
      views:
        description: List of views for the room type
        items:
          $ref: "#/definitions/SimpleAttribute"
        type: array
    type: object
  RoomTypeSupplement:
    properties:
      _links:
        additionalProperties:
          $ref: "#/definitions/LinkObject"
        description: Collection of links to related resources
        type: object
      code:
        description: The code of the room type
        type: string
      default:
        description: Specifies if the room type is the default room type of the hotel
        type: boolean
      supplements:
        description: The supplements per adults in the room. The per person surcharge will be added on top
        items:
          $ref: "#/definitions/Supplement"
        type: array
    type: object
  SimpleAttribute:
    description: Represents a simple attribute
    properties:
      code:
        description: The code of the attribute
        type: string
      name:
        description: The name of the attribute
        type: string
    type: object
  Supplement:
    properties:
      adjustment:
        description: Mode for the calculation of the supplement value
        enum:
          - Amount
          - Percentage
        type: string
      adults:
        description: The number of adults per room
        format: int32
        type: integer
      supplement:
        description: The amount or percentage that will be added for this room type and number of adults per room
        format: double
        type: number
    type: object
  TotalCountResponse:
    properties:
      _count:
        description: Returns the total count for all items matching the query parameters. If none is matching it will return 0.
        format: int64
        type: integer
    required:
      - _count
    type: object
  YieldableRateTimeSlice:
    properties:
      date:
        format: date-time
        type: string
      number_of_persons:
        description: Number of persons for which the rate price is saved
        format: int32
        type: integer
      rate_value:
        description: Rate value amount, which should be unique for the combination of rateplan, date, room type and numer of persons
        format: double
        type: number
      room_type:
        description: Room Type code for which the rate price is saved
        type: string
    required:
      - room_type
      - number_of_persons
      - rate_value
    type: object
