Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 2 Next »

2.1.1. SEARCH BY LOCATIONS

GP Travel HUB offers several alternatives of searching excursions by location:

Search by

Description

Search example

1

City code from supplier context (one supplier)

Allows to specify city code of certain supplier and get excursion offers only from this supplier. You can use this case if you know exact location codes from suppliers and would like to get offers only from some supplier.

<Criterion>
   <ExcursionRef ExcursionCityCode="1005" ExcursionCodeContext="supplierCode"/>
</Criterion>

2

City code from GEO context (one supplier)

When the ExcursionCodeContext is "GEO.<supplier>" then the ExcursionCityCode must be specified in GEO context, and then the search request goes only to the supplier specified. So, you can send a request to the particular supplier, even if you don’t know supplier-specific City Code (as described in p.1 above).

<Criterion>
   <ExcursionRef ExcursionCityCode="12175" ExcursionCodeContext="GEO.supplierCode"/>
</Criterion>

3

City code from customer context

If it is agreed to support customer context, GP Travel HUB can do search by customer-specific city codes. In this case your application can provide your own city code, GP Travel HUB will resolve it via GEO-tree and send requests to supplier.

<Criterion>
   <ExcursionRef ExcursionCityCode="1005" ExcursionCodeContext="ABC.supplierCode"/>
</Criterion>
  • In this example "ABC" is a customer identifier. Ask about your specific identifier during integration.

4

Country code from supplier context

Allows to specify country code and get excursion offers from supplier.

Note: This functionality supported for limited suppliers. Please check with GP Travel HUB development if you are interested in specific supplier.

<Criterion>
  <ExcursionRef ExcursionCodeContext="supplierCode" ExcursionCountryCode="1003"/>
</Criterion>

5

Country code from GEO context (one supplier)

When the ExcursionCodeContext is "GEO.<supplier>" then the ExcursionCountryCode must be specified in GEO context, and then the search request goes only to the supplier specified. So, you can send a request to the particular supplier, even if you don’t know supplier-specific Country Code (as described in p.4 above).

<Criterion>
   <ExcursionRef ExcursionCountryCode="UK" ExcursionCodeContext="GEO.supplierCode"/>
</Criterion>

6

Country code from customer context

If it is agreed to support customer context, GP Travel HUB can do search by customer-specific city codes. In this case your application can provide your own city code, GP Travel HUB will resolve it via GEO-tree and send requests to supplier.

<Criterion>
   <ExcursionRef ExcursionCountryCode="1003" ExcursionCodeContext="ABC.supplierCode"/>
</Criterion>

7

ExcursionCategoryCode

Allows to specify particular excursion category user is interested in.

Note: ExcursionCategoryCode works for Search by country code and for Search by city code.

<Criterion>
   <ExcursionRef ExcursionCategoryCode="SHOW" ExcursionCityCode="1005" ExcursionCodeContext="supplierCode"/>
</Criterion>

8

Pagination search

Allows to receive results in parts. To start a pagination search AllowPartialAvail attribute should be true in Availability request. HUB returns available offers until MoreIndicator is true on Availability response. Pagination search can be interrupted after each Availability request. If part of received offers is enough no need to send other Availability requests despite the fact that the MoreIndicator is true on Availability response. Check diagram below for case when you should receive all available offers.

Note: AllowPartialAvail=”true” works for Search by country code and for Search by city code.

You can see pagination search example after diagram below.

Diagram 2.1.1.1. Pagination search process.

Pagination search can be interrupted after each Availability request. If part of received offers is enough no need to send other Availability requests despite the fact that the MoreIndicator is true on Availability response.

 Paginationn Search Sample XML

First Availability request with AllowPartialAvail="true":

<GP_ExcursionAvailRQ xmlns="http://www.opentravel.org/OTA/2003/05" AllowPartialAvail="true" AvailRatesOnly="false" EchoToken="EchoToken" PrimaryLangID="en" RequestedCurrency="EUR" Version="2">
  <POS>
    <Source>
      <RequestorID ID="client" MessagePassword="pwd" Type="22"/>
      <BookingChannel PriceDomain="1" Type="7"/>
    </Source>
  </POS>
  <AvailRequestSegments>
    <AvailRequestSegment>
      <ExcursionStartDateRange End="2021-09-16" Start="2020-07-14"/>
      <ExcursionCandidates>
        <ExcursionCandidate RPH="1">
          <GuestCounts>
            <GuestCount AgeQualifyingCode="10" Count="1"/>
          </GuestCounts>
        </ExcursionCandidate>
      </ExcursionCandidates>
      <ExcursionSearchCriteria>
        <Criterion>
          <ExcursionRef ExcursionCityCode="1005" ExcursionCodeContext="supplierCode"/>
        </Criterion>
      </ExcursionSearchCriteria>
    </AvailRequestSegment>
  </AvailRequestSegments>
</GP_ExcursionAvailRQ>

First Availability response with MoreDataEchoToken and MoreIndicator="true":

<GP_ExcursionAvailRS EchoToken="EchoToken" Version="2.0" xmlns="http://www.opentravel.org/OTA/2003/05">
   <Success/>
   <Excursions MoreDataEchoToken="200615162807.710491" MoreIndicator="true">
      <Excursion>
         <ExcursionRates>
            <ExcursionRate AvailabilityStatus="OnRequest" BookingCode="529694775" Language="Unescorted" NonRefundable="true" NumberOfUnits="8" RateCode="366484" RateName="Day Race - General Admission">
               <Rates>
                  <Rate AgeQualifyingCode="10" RateSource="Calculated">
                     <Total AmountAfterTax="115.00" CurrencyCode="EUR"/>
                  </Rate>
               </Rates>
               <Total AmountAfterTax="115.00" CurrencyCode="EUR"/>
               <Services>
                  <Service Inclusive="false" RequiredInd="true" ServiceRPH="1"/>
               </Services>
               <ExcursionDate End="2020-08-30" Start="2020-08-30"/>
            </ExcursionRate>
            <ExcursionRate AvailabilityStatus="OnRequest" BookingCode="529694375" Language="Unescorted" NonRefundable="true" NumberOfUnits="8" RateCode="366485" RateName="Day Race | Abbey Grandstand">
               <Rates>
                  <Rate AgeQualifyingCode="10" RateSource="Calculated">
                     <Total AmountAfterTax="138.00" CurrencyCode="EUR"/>
                  </Rate>
               </Rates>
               <Total AmountAfterTax="138.00" CurrencyCode="EUR"/>
               <Services>
                  <Service Inclusive="false" RequiredInd="true" ServiceRPH="1"/>
               </Services>
               <ExcursionDate End="2020-08-30" Start="2020-08-30"/>
            </ExcursionRate>
         </ExcursionRates>
         <Services>
            <Service ServiceRPH="1" SpecialServiceType="DeliveryToAddress">
               <Price>
                  <Base AmountAfterTax="22.00" CurrencyCode="EUR"/>
               </Price>
               <ServiceDetails ShortName="Home Delivery (might change to collection at the event city)">...</ServiceDetails>
            </Service>
         </Services>
         <BasicExcursionInfo ExcursionCityCode="1005" ExcursionCode="290131" ExcursionCodeContext="supplierCode" ExcursionCountryCode="1003" ExcursionName="British Grand Prix: Race (Weekend) (MotoGP)">
            <Tournament Code="33" Name="MotoGP (Motorbike Racing)"/>
            <Categories>
               <Category Code="SPORT">...</Category>
            </Categories>
            <Departures>
               <Departure RPH="1">
                  <DeparturePoint Type="MeetingPoint">Silverstone Circuit</DeparturePoint>
                  <DeparturePoint Type="Image">https://www.sportsevents365.com/images/venues/thumbs/silverstonemotogp.png</DeparturePoint>
                  <StartTimes>
                     <StartTime>08:30:00</StartTime>
                  </StartTimes>
                  <Address>...</Address>
                  <Position Latitude="52.0786" Longitude="-1.01694"/>
               </Departure>
            </Departures>
            <MultimediaDescriptions>...</MultimediaDescriptions>
         </BasicExcursionInfo>
      </Excursion>
      ...
   </Excursions>
</GP_ExcursionAvailRS>

Second Availability request with AllowPartialAvail=true and MoreDataEchoToken from previous Availability response:

<GP_ExcursionAvailRQ xmlns="http://www.opentravel.org/OTA/2003/05" AllowPartialAvail="true" AvailRatesOnly="false" EchoToken="EchoToken" PrimaryLangID="en" RequestedCurrency="EUR" Version="2">
  <POS>
    <Source>
      <RequestorID ID="client" MessagePassword="pwd" Type="22"/>
      <BookingChannel PriceDomain="1" Type="7"/>
    </Source>
  </POS>
  <AvailRequestSegments>
    <AvailRequestSegment MoreDataEchoToken="200615162807.710491">
      <ExcursionStartDateRange End="2021-09-16" Start="2020-07-14"/>
      <ExcursionCandidates>
        <ExcursionCandidate RPH="1">
          <GuestCounts>
            <GuestCount AgeQualifyingCode="10" Count="1"/>
          </GuestCounts>
        </ExcursionCandidate>
      </ExcursionCandidates>
      <ExcursionSearchCriteria>
        <Criterion>
          <ExcursionRef ExcursionCityCode="1005" ExcursionCodeContext="supplierCode"/>
        </Criterion>
      </ExcursionSearchCriteria>
    </AvailRequestSegment>
  </AvailRequestSegments>
</GP_ExcursionAvailRQ>

Second Availability response with MoreDataEchoToken and MoreIndicator="false":

<GP_ExcursionAvailRS EchoToken="EchoToken" Version="2.0" xmlns="http://www.opentravel.org/OTA/2003/05">
   <Success/>
   <Excursions MoreDataEchoToken="200615162807.710491" MoreIndicator="false">
      <Excursion>
         <ExcursionRates>
            <ExcursionRate AvailabilityStatus="OnRequest" BookingCode="52aefe775" Language="Unescorted" NonRefundable="true" NumberOfUnits="6" RateCode="365431" RateName="Block A1 - Hospitality Seats | Exclusive access to the American Express Hospitality Lounge, which is located right behind the seats on the lower tier
Fine dining to be booked directly in the lounge (not available to book in advance)
Wide variety of drinks and cocktails to be served in the lounge (cash base)
Live entertainment in the lounge before and after the event
Exclusive drop-off point for taxi or private car
With Fast-Track entry you will skip all the queues">
               <Rates>
                  <Rate AgeQualifyingCode="10" RateSource="Calculated">
                     <Total AmountAfterTax="655.00" CurrencyCode="EUR"/>
                  </Rate>
               </Rates>
               <Total AmountAfterTax="655.00" CurrencyCode="EUR"/>
               <Services>
                  <Service Inclusive="false" RequiredInd="true" ServiceRPH="1"/>
               </Services>
               <ExcursionDate End="2020-10-16" Start="2020-10-16"/>
            </ExcursionRate>
         </ExcursionRates>
         <Services>
            <Service ServiceRPH="1" SpecialServiceType="SelfPickUp">
               <Price>
                  <Base AmountAfterTax="12.00" CurrencyCode="EUR"/>
               </Price>
               <ServiceDetails ShortName="Hotel Delivery (might change to E-Ticket / Collection point)">...</ServiceDetails>
            </Service>
         </Services>
         <BasicExcursionInfo ExcursionCityCode="1005" ExcursionCode="290169" ExcursionCodeContext="supplierCode" ExcursionName="Andrea Bocelli-London, England">
            <Competitors>
               <Competitor Code="5537" Name="Andrea Bocelli"/>
            </Competitors>
            <Tournament Code="179" Name="Concerts (Entertainment)"/>
            <Categories>...</Categories>
            <Departures>
               <Departure RPH="1">
                  <DeparturePoint Type="MeetingPoint">The O2</DeparturePoint>
                  <DeparturePoint Type="Image">https://www.sportsevents365.com/images/venues/thumbs/o2londonseating.png</DeparturePoint>
                  <StartTimes>
                     <StartTime>20:00:00</StartTime>
                  </StartTimes>
                  <Address>...</Address>
                  <Position Latitude="51.5028" Longitude="0.003117"/>
               </Departure>
            </Departures>
            <VendorMessages>...</VendorMessages>
         </BasicExcursionInfo>
      </Excursion>
      ...
   </Excursions>
</GP_ExcursionAvailRS>

2.1.2. SEARCH BY EXCURSION CODE

Search by ExcursionCode works only within ExcursionCityCode:

<Criterion>
   <ExcursionRef ExcursionCityCode="1005" ExcursionCode="HAMPTON" ExcursionCodeContext="supplierCode"/>
</Criterion>

Search by ExcursionCode works only within ExcursionCityCode and ExcursionCodeContext in GEO context:

<Criterion>
   <ExcursionRef ExcursionCityCode="12175" ExcursionCode="HAMPTON" ExcursionCodeContext="GEO.supplierCode"/>
</Criterion>

2.1.3. SEARCH BY TOURNAMENT

Search by

Description

Search example

1

Tournament code from supplier context

Allows to search excursions (event or sport match) by tournament code. E.g. by supplier code for Champions League, you’ll get all possible events for a specified date range. Can be only in supplier context!

<Criterion>
 <ExcursionRef ExcursionCodeContext="supplierCode" TournamentCode="335"/>
</Criterion>

2

Pagination search

Allows to receive results in parts. To start a pagination search AllowPartialAvail attribute should be true in Availability request. HUB returns available offers until MoreIndicator is true on Availability response. Pagination search can be interrupted after each Availability request. If part of received offers is enough no need to send other Availability requests despite the fact that the MoreIndicator is true on Availability response. Check diagram above for case when you should receive all available offers.

Note: AllowPartialAvail=”true” works for Search by country code and for Search by city code.

You can see pagination search example after diagram above.

3

Country code (or city code) + Tournament code

Allows to search excursions by country or city code and tournament code.

<Criterion>
  <ExcursionRef ExcursionCodeContext="supplierCode" ExcursionCountryCode="1003" TournamentCode="432"/>
</Criterion>

2.1.4. SEARCH BY COMPETITOR CODE

Search by

Description

Search example

1

Competitor code from supplier context

Allows to specify particular competitor (code of sports teams or musical bands or individual performers), user is interested in. Can be only in supplier context!

<Criterion>
  <ExcursionRef CompetitorCode="3729" ExcursionCodeContext="supplierCode"/>
</Criterion>

2

Pagination search

Allows to receive results in parts. To start a pagination search AllowPartialAvail attribute should be true in Availability request. HUB returns available offers until MoreIndicator is true on Availability response. Pagination search can be interrupted after each Availability request. If part of received offers is enough no need to send other Availability requests despite the fact that the MoreIndicator is true on Availability response. Check diagram above for case when you should receive all available offers.

Note: AllowPartialAvail=”true” works for Search by country code and for Search by city code.

You can see pagination search example after diagram above.

3

Country code(or city code) + Competitor code

Allows to search excursions by country or city code and competitor code.

<Criterion>
  <ExcursionRef ExcursionCodeContext="supplierCode" ExcursionCountryCode="1003" CompetitorCode="3580"/>
</Criterion>

  • No labels