SiteMinder APIs
Help CentrePartner ContactsTest Extranet LoginBecome a SiteMinder Partner
  • Hub
  • Quickstart
  • Integration Process
  • CHANNELS
    • Introduction
      • SiteConnect
        • Getting Started
        • Developer Guide
          • Integration Requirements
          • Message Structure
          • Error Handling
        • API Reference
          • Rooms and Rates
          • Availability and Restrictions
          • Rates
          • Reservations
            • Reservation XML Sample
        • Testing and Certification
        • Changelog
        • FAQ
      • Channels Plus
        • Getting Started
        • Developer Guide
          • Partner Portal
          • Deals
          • Invoicing: Gross vs. Net
        • API Reference
          • Properties
          • Property
          • Lock Reservation
          • Confirm Reservation
          • Modify Reservation
          • Cancel Reservation
        • Testing and Certification
        • Swagger
        • Changelog
        • FAQ
  • PMS / RMS
    • Introduction
      • pmsXchange
        • Getting Started
        • Developer Guide
          • Integration Requirements
          • Message Structure
          • Error Handling
        • API Reference
          • Rooms and Rates
          • Availability and Restrictions
          • Rates
          • Reservations
            • Reservations PULL
            • Reservations Import
            • Reservations Upload
              • Reservation Types
            • Payment Transaction Record
            • Credit Card Tokenization
            • Reservations XML Samples
              • Reservations PULL Samples
              • Reservations Upload Samples
        • Testing and Certification
        • Changelog
        • FAQ
  • APPS
    • Introduction
      • SiteMinder Exchange
        • Getting Started
        • Developer Guide
          • Integration Requirements
          • Message Structure
          • Error Handling
        • API Reference
          • Availability and Rates
            • Publishers
            • Hotels
            • RoomTypes
            • RatePlans
            • Availability
            • Rates
            • Models
            • Response Samples
              • Publishers Sample
              • Hotels Sample
              • RoomTypes Samples
              • RatePlans Samples
              • Availability Samples
              • Rates Sample
            • ARI 1-Way Guidelines
          • Reservations
            • Maximum Content Sample
            • Minimum Content Sample
        • Testing and Certification
        • Activation & Deactivation Process for Hotels
          • Activation Process for Hotels
          • Activation Form Parameterisation
          • Deactivation Process for Hotels
        • Changelog
          • Reservations API Changelog
          • ARI API Changelog
        • FAQ
  • Additional Resources
    • Reference Tables
      • Booking Agent Codes
      • Document Type Code (DOC)
      • Error Codes (ERR)
      • Error Warning Types (EWT)
      • Fee Tax Type (FTT)
      • Handling HTTP 500
      • Meal Plan Type (MPT)
      • OpenTravel Codes List
      • Payment Card Provider Codes
      • Service and Extra Charge
      • Strong Customer Authentication Codes
      • Test Credit Cards
    • Glossary
    • FAQ
Powered by GitBook
On this page
  • Request
  • Example
  • Specification
  • Response
  • Examples
  • Additional Details
  • Specification
  • Help Centre

Was this helpful?

  1. CHANNELS
  2. Introduction
  3. SiteConnect
  4. API Reference

Rooms and Rates

Message Exchange Workflow

  • OTA_HotelAvailRQ - request made by SiteMinder to the Booking Channel endpoint.

  • OTA_HotelAvailRS - response sent by the Booking Channel.

Request

Example

<OTA_HotelAvailRQ
	xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0" AvailRatesOnly="true">
	<AvailRequestSegments>
		<AvailRequestSegment AvailReqType="Room">
			<HotelSearchCriteria>
				<Criterion>
					<HotelRef HotelCode="HOTELCODE"/>
				</Criterion>
			</HotelSearchCriteria>
		</AvailRequestSegment>
	</AvailRequestSegments>
</OTA_HotelAvailRQ>

Specification

Element / @Attribute
Type
M
Description

OTA_HotelAvailRQ

Element

1

Root element for the request.

@xmlns

String

1

Defines the XML namespace for the request. Will be set to http://www.opentravel.org/OTA/2003/05

@EchoToken

String

1

Unique identifier for the request, used to match requests and responses.

@TimeStamp

DateTime

1

Time when the request was generated.

@Version

String

1

Specifies the API version. Will be set to 1.0.

@AvailRatesOnly

Boolean

1

Indicates that only availability rates should be returned. Will be set to true.

AvailRequestSegments

Element

1

Container for availability request segments.

AvailRequestSegment

Element

1

Single availability request segment.

@AvailReqType

String

1

Specifies the type of availability request. Will be set to Room.

HotelSearchCriteria

Element

1

Container for the hotel search criteria.

Criterion

Element

1

Single search criterion.

HotelRef

Element

1

Reference to a specific hotel.

@HotelCode

String

1

Identifier for the hotel.

Response

Examples

<OTA_HotelAvailRS
	xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0">
	<Success/>
	<RoomStays>
		<RoomStay>
			<RoomTypes>
				<RoomType RoomTypeCode="SGL">
					<RoomDescription Name="Single Room">
						<Text>Single bed for single occupancy.</Text>
					</RoomDescription>
				</RoomType>
			</RoomTypes>
			<RatePlans>
				<RatePlan RatePlanCode="BAR">
					<RatePlanDescription Name="Best Available Rate">
						<Text>Best Available Rate.</Text>
					</RatePlanDescription>
				</RatePlan>
			</RatePlans>
		</RoomStay>
		<!-- Additional RoomStay elements -->
	</RoomStays>
</OTA_HotelAvailRS>
<OTA_HotelAvailRS
	xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0">
	<Success/>
	<RoomStays>
		<RoomStay>
			<RoomTypes>
				<RoomType RoomTypeCode="SGL">
					<RoomDescription Name="Single Room">
						<Text>Single bed for single occupancy.</Text>
					</RoomDescription>
					<Occupancy AgeQualifyingCode="10" MaxOccupancy="2"/>
				</RoomType>
			</RoomTypes>
			<RatePlans>
				<RatePlan RatePlanCode="BAR">
					<RatePlanDescription Name="Best Available Rate">
						<Text>Best Available Rate.</Text>
					</RatePlanDescription>
				</RatePlan>
			</RatePlans>
		</RoomStay>
		<!-- Additional RoomStay elements -->
	</RoomStays>
</OTA_HotelAvailRS>
<OTA_HotelAvailRS
	xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0">
	<Errors>
		<Error Type="6" Code="392">Hotel not found for HotelCode=XXXXXX</Error>
	</Errors>
</OTA_HotelAvailRS>

This is an invalid response. Each <RoomType> and <RatePlan> combination must be in its own RoomStay. Multiple <RatePlans> cannot be sent under the same RoomStay.

<OTA_HotelAvailRS
	xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0">
	<Success/>
	<RoomStays>
		<RoomStay>
			<RoomTypes>
				<RoomType RoomTypeCode="SGL">
					<RoomDescription Name="Single Room">
						<Text>Single bed for single occupancy.</Text>
					</RoomDescription>
				</RoomType>
			</RoomTypes>
			<RatePlans>
				<RatePlan RatePlanCode="BAR">
					<RatePlanDescription Name="Best Available Rate">
						<Text>Best Available Rate.</Text>
					</RatePlanDescription>
				</RatePlan>
			</RatePlans>
			<RatePlans>
				<RatePlan RatePlanCode="NR">
					<RatePlanDescription Name="Non Refundable Rate">
						<Text>Non Refundable Rate.</Text>
					</RatePlanDescription>
				</RatePlan>
			</RatePlans>
		</RoomStay>
		<!-- Additional RoomStay elements -->
	</RoomStays>
</OTA_HotelAvailRS>

This is an invalid response. RoomDescription @Name and RatePlanDescription @Name fields must be unique for each room rate combination otherwise SiteMinder will consider as duplicate mappings.

<OTA_HotelAvailRS
	xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0">
	<Success/>
	<RoomStays>
		<RoomStay>
			<RoomTypes>
				<RoomType RoomTypeCode="SGL">
					<RoomDescription Name="Single Room">
						<Text>Single bed for single occupancy.</Text>
					</RoomDescription>
				</RoomType>
			</RoomTypes>
			<RatePlans>
				<RatePlan RatePlanCode="BAR">
					<RatePlanDescription Name="Standard Rate">
						<Text>Standard Rate</Text>
					</RatePlanDescription>
				</RatePlan>
			</RatePlans>
		</RoomStay>
		<RoomStay>
			<RoomTypes>
				<RoomType RoomTypeCode="SGL">
					<RoomDescription Name="Single Room">
						<Text>Single bed for single occupancy.</Text>
					</RoomDescription>
				</RoomType>
			</RoomTypes>
			<RatePlans>
				<RatePlan RatePlanCode="NR">
					<RatePlanDescription Name="Standard Rate">
						<Text>Standard Rate</Text>
					</RatePlanDescription>
				</RatePlan>
			</RatePlans>
		</RoomStay>
		<!-- Additional RoomStay elements -->
	</RoomStays>
</OTA_HotelAvailRS>

Additional Details

<OTA_HotelAvailRS
	xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0">
	<Success/>
	<RoomStays>
		<RoomStay>
			<RoomTypes>
				<RoomType RoomTypeCode="SGL">
					<RoomDescription Name="Single Room">
						<Text>Single bed for single occupancy.</Text>
					</RoomDescription>
					<Occupancy AgeQualifyingCode="10" MaxOccupancy="2"/>
				</RoomType>
			</RoomTypes>
			<RatePlans>
				<RatePlan RatePlanCode="BAR">
					<RatePlanDescription Name="Best Available Rate">
						<Text>Best Available Rate.</Text>
					</RatePlanDescription>
					<AdditionalDetails>
						<AdditionalDetail Code="NO_RATES"/>
					</AdditionalDetails>
				</RatePlan>
			</RatePlans>
		</RoomStay>
		<!-- Additional RoomStay elements -->
	</RoomStays>
</OTA_HotelAvailRS>
<OTA_HotelAvailRS
	xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0">
	<Success/>
	<RoomStays>
		<RoomStay>
			<RoomTypes>
				<RoomType RoomTypeCode="SGL">
					<RoomDescription Name="Single Room">
						<Text>Single bed for single occupancy.</Text>
					</RoomDescription>
					<Occupancy AgeQualifyingCode="10" MaxOccupancy="2"/>
				</RoomType>
			</RoomTypes>
			<RatePlans>
				<RatePlan RatePlanCode="BAR">
					<RatePlanDescription Name="Best Available Rate">
						<Text>Best Available Rate.</Text>
					</RatePlanDescription>
					<AdditionalDetails>
						<AdditionalDetail Code="NO_AVAILABILITY"/>
					</AdditionalDetails>
				</RatePlan>
			</RatePlans>
		</RoomStay>
		<!-- Additional RoomStay elements -->
	</RoomStays>
</OTA_HotelAvailRS>
<OTA_HotelAvailRS
	xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0">
	<Success/>
	<RoomStays>
		<RoomStay>
			<RoomTypes>
				<RoomType RoomTypeCode="SGL">
					<RoomDescription Name="Single Room">
						<Text>Single bed for single occupancy.</Text>
					</RoomDescription>
					<Occupancy AgeQualifyingCode="10" MaxOccupancy="2"/>
				</RoomType>
			</RoomTypes>
			<RatePlans>
				<RatePlan RatePlanCode="BAR">
					<RatePlanDescription Name="Best Available Rate">
						<Text>Best Available Rate.</Text>
					</RatePlanDescription>
					<AdditionalDetails>
						<AdditionalDetail Code="NO_UPDATES"/>
					</AdditionalDetails>
				</RatePlan>
			</RatePlans>
		</RoomStay>
		<!-- Additional RoomStay elements -->
	</RoomStays>
</OTA_HotelAvailRS>
<OTA_HotelAvailRS
	xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="ed8835ff-6198-4f38-b589-3058397f677c" TimeStamp="2024-07-06T15:27:41+00:00" Version="1.0">
	<Success/>
	<RoomStays>
		<RoomStay>
			<RoomTypes>
				<RoomType RoomTypeCode="SGL">
					<RoomDescription Name="Single Room">
						<Text>Single bed for single occupancy.</Text>
					</RoomDescription>
					<Occupancy AgeQualifyingCode="10" MaxOccupancy="2"/>
				</RoomType>
			</RoomTypes>
			<RatePlans>
				<RatePlan RatePlanCode="BAR">
					<RatePlanDescription Name="Best Available Rate">
						<Text>Best Available Rate.</Text>
					</RatePlanDescription>
					<AdditionalDetails>
						<AdditionalDetail Code="NO_RATES"/>
						<AdditionalDetail Code="NO_AVAILABILITY"/>
					</AdditionalDetails>
				</RatePlan>
			</RatePlans>
		</RoomStay>
		<RoomStay>
			<RoomTypes>
				<RoomType RoomTypeCode="SGL">
					<RoomDescription Name="Single Room">
						<Text>Single bed for single occupancy.</Text>
					</RoomDescription>
					<Occupancy AgeQualifyingCode="10" MaxOccupancy="2"/>
				</RoomType>
			</RoomTypes>
			<RatePlans>
				<RatePlan RatePlanCode="NR">
					<RatePlanDescription Name="Non-Refundable">
						<Text>Non-Refundable.</Text>
					</RatePlanDescription>
					<AdditionalDetails>
						<AdditionalDetail Code="NO_UPDATES"/>
					</AdditionalDetails>
				</RatePlan>
			</RatePlans>
		</RoomStay>
		<!-- Additional RoomStay elements -->
	</RoomStays>
</OTA_HotelAvailRS>

Specification

Element / @Attribute
Type
M
Description

OTA_HotelAvailRS

Element

1

Root element for the response.

@xmlns

String

1

Defines the XML namespace for the response. Must be set to http://www.opentravel.org/OTA/2003/05

@EchoToken

String

1

Unique identifier matching the request EchoToken.

@TimeStamp

DateTime

1

Time when the response was generated.

@Version

String

1

Specifies the API version. Must be set to 1.0.

Success

Element

0..1

Indicates successful processing of the request.

RoomStays

Element

0..1

Container for room stay information.

RoomStay

Element

1..n

Single room stay information.

RoomTypes

Element

1

Container for room types.

RoomType

Element

1

Single room type information.

@RoomTypeCode

String

1

Code for the room type.

RoomDescription

Element

1

Description of the room.

@Name

String

1

Name of the room.

Text

String

0..1

Description text for the room.

Occupancy

Element

0..1

Occupancy details for the room. Only for OBP.

@AgeQualifyingCode

Integer

1

Age qualification code for the occupancy:

10 Adult

Only for OBP.

@MaxOccupancy

Integer

1

Maximum occupancy for the room.

Min 1 - Max 50

Only for OBP.

RatePlans

Element

0..1

Container for rate plans.

RatePlan

Element

1

Single rate plan information.

@RatePlanCode

String

1

Code for the rate plan.

RatePlanDescription

Element

1

Description of the rate plan.

@Name

String

1

Name of the rate plan.

Text

String

0..1

Description text for the rate plan.

AdditionalDetails

Element

0..1

Additional details about the rate plan.

AdditionalDetail

Element

1..2

Single additional detail.

@Code

String

1

Codes:

NO_RATES

NO_AVAILABILITY

NO_UPDATES

Errors

Element

0..1

Indicates an error occurred during the processing of the request.

Error

Element

1..n

Single error information containing free text.

@Type

Integer

1

@Code

Integer

0..1

Help Centre

Last updated 1 month ago

Was this helpful?

Type of error. Refer to .

Code representing the error. Refer to .

Map your room rates to a channel
Multi-map your channel room rates
How to fix incorrect mapping or mismatched rate configuration
Testing and Certification
Error Handling
Glossary
Error Warning Types (EWT)
Error Codes (ERR)