Search Requests

Search can be used in two ways: as a standard availability search, and as an individual property request.

Request

Parameters

Name Type Description
LoginDetails object Required. See the Login section for details.
SearchDetails object Required.
PropertyID integer Required. You must provide either a single PropertyID, or a list of PropertyID tags. Find list of ID's on the interactive portal
Properties object
   PropertyID integer
ArrivalDate date string Required.
RoomRequests object Required.
   RoomRequest object Required.
      Adults integer

Required. At least one Adult or Child must be specified.

Children are aged 0-17.

Infants are deprecated.

      Children integer
      Infants integer
      ChildAges object Required if at least one child.
         ChildAge integer Required. Must be specified for each child (not infants)
            Age integer Required.
MealBasisID integer Optional.
MinStarRating integer Optional. Filters properties by star rating.
MinimumPrice integer Optional. Filters results by price.
MaximumPrice integer Optional. Filters results by price.

 

<?xml version="1.0" encoding="UTF-8"?>
<SearchRequest>
  <LoginDetails>
    <Login>xmltest</Login>
    <Password>xmltest</Password>
    <Version>6.0</Version>
  </LoginDetails>
  <SearchDetails>
    <ArrivalDate>2022-08-01</ArrivalDate>
    <Duration>5</Duration>
    <PropertyID>17</PropertyID>
    <MealBasisID>0</MealBasisID>
    <MinStarRating>0</MinStarRating>
    <MinimumPrice>0</MinimumPrice>
    <MaximumPrice>0</MaximumPrice>
    <RoomRequests>
      <RoomRequest>
        <Adults>2</Adults>
        <Children>3</Children>
        <ChildAges>
          <ChildAge>
            <Age>4</Age>
          </ChildAge>
          <ChildAge>
            <Age>8</Age>
          </ChildAge>
          <ChildAge>
            <Age>0</Age>
          </ChildAge>
        </ChildAges>
      </RoomRequest>
      <RoomRequest>
        <Adults>2</Adults>
        <Children>0</Children>
        <Infants>0</Infants>
      </RoomRequest>
    </RoomRequests>
  </SearchDetails>
</SearchRequest>

Response

Note that the Child of age ‘0’ has been converted to an Infant due to the contract specifications.

** fields are sometimes not returned. This may be a self-closing element or not present.

Name Type Description
RequestInfo RequestInfo See the Request section above.
ReturnStatus ReturnStatus  
PropertyResults object Not present on Exception.
   TotalProperties integer The total number of PropertyResult elements.
   PropertyResult object  
      PropertyID integer  
      PropertyName string  
      Supplier    
         SupplierID integer  
         SupplierName string Informational only. Please rely on SupplierID
      GIATAID integer Hotel’s GIATA ID if available. Self-closing if not present.
      Currency string Currency of the result. This will be USD unless by prior arrangement.
      Rating decimal Star-rating. Half stars are represented as a .5
      Errata object Sometimes not returned. This may be a self-closing element or not present.
         Erratum object  
            StartDate date string Starting date the Erratum applies.
            EndDate date string Starting date the Erratum applies.
            Description string Description of the Erratum.
      GeographyLevel1ID integer  
      GeographyLevel2ID integer  
      GeographyLevel3ID integer  
      Country string  
      Area string  
      Region string  
      Strapline string  
      Description string  
      CMSBaseUR string Sometimes not returned. Used to get images below. Note that this and MainImage elements may be missing if no images are available.
      MainImage string Sometimes not returned. Filename of the main image.
      MainImageThumbnail string Sometimes not returned. Filename of the main image thumbnail.
      Images object Sometimes not returned.  
         Image object  
            FullSize string Filename of the full size image.
            Thumbnail string Filename of the thumbnail image.
      RoomTypes object  
         RoomType object  
            RoomID integer Used for making a booking. Integer is 64bit unsigned.
            RateCode string Returned for some properties. Informational only.
            PropertyRoomID integer Sometimes not returned. Used to identify the physical room and tie it to its Name. Only enabled by request.
            MealBasisID integer  
            Name string Name of the room.
            View string

Sometimes not returned. This may be a self-closing element or not present.

View of the room. E.g. Ocean View. See Developer Information section.

            Adults integer Maximum number of adults.
            Children integer Maximum number of children.
            Infants integer Maximum number of infants.
            OnRequest boolean If "true", this room cannot be booked via XML and can only be done manually via phone
            SubTotal decimal Amount before any Supplements, Special Offers or Taxes
            Total decimal Amount after all Supplements, Special Offers or Taxes
            RoomsAppliesTo object  
               RoomRequest integer RoomRequest that the response is relevant to.
            Supplements object Sometimes not returned. This may be a self-closing element or not present.
               Supplement object  
                  Name string  
                  Desc string Sometimes not returned.
                  Duration string enum
  • Per Supplement
  • Per Holiday
  • Per Night
                  Multiplier string enum
  • Per Room
  • Per Person
                  PaxType string enum

Sometimes not returned. Only when Multiplier = "Per Person"

  • All
  • Adult/Child
  • Adult Only
                  Total decimal Total cost of supplement.
            SpecialOffers object Sometimes not returned. This may be a self-closing element or not present. 
               SpecialOffer object  
                  Name string  
                  Type string enum
  • Discount Value
  • Discount Percentage
  • Free Kids
  • Free Nights
  • Value Added
                  PaxType string enum

Sometimes not returned. Only set when Type = "Discount Percentage"
One of:

  • All
  • Adult Only
                  Value decimal

Sometimes not returned. When:

  • Type = "Free Kids"; Value = # free kids
  • Type = "Free Nights"; Value = # free nights
  • Type = "Discount Percentage"; the highest value applicable to any person on any day of the stay. In effect this value is “discount up to n%”.

Please note that this field is for reference only.

The total amount taken off the booking is in SpecialOffer/Total

                  Desc ** string

Sometimes not returned. May be set when Type = "Value Added"

                  Total ** decimal

Sometimes not returned. Total discount of Special Offer. Not set when Type = "Value Added".

            Taxes object

Sometimes not returned. This may be a self-closing element or not present.

               Tax object  
                  TaxName string  
                  Inclusive boolean

When "true", tax is included in original room price {Subtotal}.

When "false", tax is added on {included in Total figure}

                  Total decimal

Total cost of the tax

            CancellationPolicies object

Sometimes not returned. This may be a self-closing element or not present.

               CancellationPolicy object  
                  CancelBy date

Format: yyyy-mm-dd

This is the date the cancellation policy starts. Eg) if CancelBy date is 2000-6-1, a cancellation on 2000-5-31 has no penalty however a cancellation on or after 2000-6-1 would have the penalty applied.

When there are multiple CancellationPolicies returned the one with the latest applicable date is used.

                  Penalty decimal  

 

<?xml version="1.0" encoding="UTF-8"?>
<SearchResponse xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance">
    <ReturnStatus>
    <Success>True</Success>
    <Exception />
  </ReturnStatus>
  <PropertyResults>
    <TotalProperties>1</TotalProperties>
    <PropertyResult>
      <PropertyID>99</PropertyID>
        <RoomTypes>
          <RoomType>
            <RoomID>999</RoomID>
            <PropertyRoomTypeID>1</PropertyRoomTypeID>
            <MealBasisID>1</MealBasisID>
            <Name>Example Villa</Name>
            <Supplier>
              <SupplierID>6</SupplierID>
              <SupplierName>RMI</SupplierName>
            </Supplier>
            <View>Sea View</View>
            <Adults>2</Adults>
            <Children>2</Children>
            <Infants>1</Infants>
            <OnRequest>True</OnRequest>
            <SubTotal>5896.80</SubTotal>
            <Total>6565.35</Total>
            <RoomsAppliesTo>
              <RoomRequest>1</RoomRequest>
            </RoomsAppliesTo>
            <Supplements>
              <Supplement>
                <Name>test supplement</Name>
                <Duration>Per Night</Duration>
                <Multiplier>Per Person</Multiplier>
                <PaxType>Adult Only</PaxType>
                <Total>220</Total>
              </Supplement>
            </Supplements>
            <SpecialOffers>
              <SpecialOffer>
                <Name>Example special offer</Name>
                <Type>Value Added</Type>
                <PaxType />
                <Value />
                <Desc>test desc</Desc>
                <Total />
              </SpecialOffer>
              <SpecialOffer>
                <Name>Example special offer 2</Name>
                  <Type>Free Kids</Type>
                  <PaxType />
                  <Value>1</Value>
                  <Desc>test desc</Desc>
                  <Total>1000</Total>
              </SpecialOffer>
            </SpecialOffers>
            <Taxes>
              <Tax>
              <TaxName>test %</TaxName>
              <Inclusive>False</Inclusive>
              <Total>1148.55</Total>
            </Tax>
            <Tax>
              <TaxName>Government Tax</TaxName>
              <Inclusive>True</Inclusive>
              <Total>423.15</Total>
            </Tax>
            <Tax>
              <TaxName>Service Charge</TaxName>
              <Inclusive>True</Inclusive>
              <Total>604.5</Total>
            </Tax>
            <Tax>
              <TaxName>test</TaxName>
              <Inclusive>False</Inclusive>
              <Total>300</Total>
            </Tax>
          </Taxes>
        <CancellationPolicies>
        <CancellationPolicy>
          <CancelBy>2020-07-11</CancelBy>
          <Penalty>574.28</Penalty>
        </CancellationPolicy>
        <CancellationPolicy>
          <CancelBy>2020-07-18</CancelBy>
          <Penalty>1148.55</Penalty>
        </CancellationPolicy>
      </CancellationPolicies>
    </RoomType>
    <RoomType>
      <RoomID>998</RoomID>
      <MealBasisID>1</MealBasisID>
      <Name>Example Villa</Name>
      <View>Sea View</View>
      <Adults>2</Adults>
      <Children>0</Children>
      <Infants>0</Infants>
      <OnRequest>True</OnRequest>
      <SubTotal>3960</SubTotal>
      <Total>4400</Total>
      <RoomsAppliesTo>
        <RoomRequest>2</RoomRequest>
      </RoomsAppliesTo>
      <Supplements/>
        <SpecialOffers>
          <SpecialOffer>
            <Name>Early Bird Booking</Name>
            <Type>Adult Only</Type>
            <PaxType>All</PaxType>
            <Value>10</Value>
            <Desc/>
            <Total>440</Total>
          </SpecialOffer>
        </SpecialOffers>
        <Taxes>
          <Tax>
            <TaxName>Government Tax</TaxName>
            <Inclusive>True</Inclusive>
            <Total>423.15</Total>
          </Tax>
        </Taxes>
        <CancellationPolicies>
          <CancellationPolicy>
            <CancelBy>2020-07-18</CancelBy>
            <Penalty>440</Penalty>
            </CancellationPolicy>
          </CancellationPolicies>
        </RoomType>
      </RoomTypes>
      <PropertyName>Example Island</PropertyName>
      <Supplier>
        <SupplierID>6</SupplierID>
        <SupplierName>RMI</SupplierName>
      </Supplier>
      <GIATAID>99999</GIATAID>
      <Currency>USD</Currency>
      <Rating>4.5</Rating>
      <Errata>
        <Erratum>
          <StartDate>2022-08-04</StartDate>
          <EndDate>2022-08-11</EndDate>
          <Description>Small pool will be closed for maintenance</Description>
        </Erratum>
      <Errata>
      <GeographyLevel1ID>6</GeographyLevel1ID>
      <GeographyLevel2ID>10</GeographyLevel2ID>
      <GeographyLevel3ID>22</GeographyLevel3ID>
      <Country>West Indies</Country>
      <Area>St Vincent &amp; Grenadines</Area>
      <Region>Example Island</Region>
      <Strapline>Intimate, exotic and all-inclusive</Strapline>
      <Description>Example Island, a high-end luxury resort</Description>
      <CMSBaseURL>https://xmlhost/custom/content/</CMSBaseURL>
      <MainImage>CMSImage_999.jpg</MainImage>
      <MainImageThumbnail>CMSImageThumb_999.jpg</MainImageThumbnail>
      <Images>
        <Image>
          <FullSize>CMSImage_1000.jpg</FullSize>
          <Thumbnail>CMSImageThumb_1000.jpg</Thumbnail>
        </Image>
        <Image>
          <FullSize>CMSImage_1001.jpg</FullSize>
          <Thumbnail>CMSImageThumb_1001.jpg</Thumbnail>
        </Image>
      </Images>
    </PropertyResult>
  </PropertyResults>
</SearchResponse>