5. Rental Locations
5.1. Location Search
Returns a list of rental locations available according to the requested parameters.
All the information given here is specified in OTA2007A as the Vehicle location search Request/Response.
VehLocationSearchRQ
VehLocationSearchRS
5.1.1. Request
- URL:
https://api.carhire-solutions.com/service.asmx
- Http-Method:
POST
Header
- SOAPAction:
http://www.opentravel.org/OTA/2003/05/getVehLocationSearch
- Content-Type:
text/xml;charset=UTF-8
5.1.1.1. Overview
It is possible to query the rental locations based on the following geographical filters.
Recommended
- City:
Using the ID obtained from using the GEO destinations.
- Airport:
Using the IATA code or the ID obtained from using the GEO destinations.
- Geocode:
Using a specific geo coordinate.
Not Recommended
- City:
Using the Name or IATA code.
- Airport:
Using the Name.
Request structure
The VehLocationSearch request has three main nodes.
- POS:
Same Node as used on VehAvailRateRQ or VehRateRuleRQ. see Raterule section.
- VehLocSearchCriterion:
This node allows to put the different paramenters to obtain a list of locations.
- Vendor:
This node limits the results to a single supplier by using the Supplier_GDSCode. See supplier section on appendix. Remove the node or leave it empty to return all suppliers.
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocationSearchRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID ID_Context="password" Type="username"/>
</Source>
<Source ISOCountry="GB"/>
</POS>
<VehLocSearchCriterion Ranking="200">
<RefPoint RefPointType="8"/>
<Position Latitude="42.39646648" Longitude="-74.86290669"/>
<Radius DistanceMax="50" DistanceMeasure="km"/>
</VehLocSearchCriterion>
<Vendor>ZE</Vendor>
</VehLocationSearchRQ>
</soap:Body>
</soap:Envelope>
VehLocSearchCriterion
Attribute |
Type |
Required |
Description |
---|---|---|---|
Ranking |
Integer |
Yes |
Maximum number of locations to retrieve. |
VehLocSearchCriterion
Child nodes |
Required |
Description |
---|---|---|
RefPoint |
Yes |
This node determines the type of location search. |
Position |
Not always |
This node is used depending on the type of location search. |
Radius |
Not always |
This node is used depending on the type of location search. |
Depending on the type of search we want to do, for example city name or geocode, it requires some changes on the attributes and child nodes. Below there is a description for each scenario.
Each type of scenarion is selected by the attribute RefPointType on the RefPoint node.
<VehLocSearchCriterion Ranking="5">
<RefPoint RefPointType="8"/>
</VehLocSearchCriterion>
RefPointType allows the following values.
Value |
Type of location search |
---|---|
1 |
Search by city ID. |
2 |
Search by city IATA code. |
3 |
Search by city name. |
4 |
Search by Airport Id. |
5 |
Search by airport IATA code. |
6 |
Not supported. |
7 |
Not supported. |
8 |
Search by geo coordinate. |
5.1.1.2. Search by city ID
Using the following attributes on the RefPoint node will return a list of locations connected to a city ID.
Attribute |
Type |
Value |
Description |
---|---|---|---|
RefPointType |
Integer |
1 |
Type of location search. |
CityName |
Integer |
City Id |
Can be obtained from GEO destinations. |
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocationSearchRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID ID_Context="password" Type="username"/>
</Source>
<Source ISOCountry="GB"/>
</POS>
<VehLocSearchCriterion Ranking="100">
<RefPoint CityName="47" RefPointType="1"/>
</VehLocSearchCriterion>
</VehLocationSearchRQ>
</soap:Body>
</soap:Envelope>
5.1.1.3. Search by city IATA code
If a city is big enough to have an IATA code, it is possible to get the locations connected to that city using the following attributes.
Attribute |
Type |
Value |
Description |
---|---|---|---|
RefPointType |
Integer |
2 |
Type of location search. |
CityName |
String |
City IATA code |
Can be obtained from GEO destinations. |
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocationSearchRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID ID_Context="password" Type="username"/>
</Source>
<Source ISOCountry="GB"/>
</POS>
<VehLocSearchCriterion Ranking="100">
<RefPoint CityName="BCN" RefPointType="2"/>
</VehLocSearchCriterion>
</VehLocationSearchRQ>
</soap:Body>
</soap:Envelope>
5.1.1.4. Search by city name
It is possible to get the locations using the city name, but this option is language dependent. It will only return locations if the city name provided matches the name in that language.
Note
A search in english for city name Hamburg will return results, for example. However, if it is requested in Spanish (<Source ISOCountry="ES" />
) no locations will be returned unless the city name provided is as Hamburgo. For this reason it is not recommended to use this approach.
Attribute |
Type |
Value |
Description |
---|---|---|---|
RefPointType |
Integer |
3 |
Type of location search. |
CityName |
String |
City name |
Can be obtained from GEO destinations. |
SateProv |
Integer |
Region Id |
Region Id associated to this city, can be obtained from GEO destinations. |
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocationSearchRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID ID_Context="password" Type="username"/>
</Source>
<Source ISOCountry="GB"/>
</POS>
<VehLocSearchCriterion Ranking="3">
<RefPoint CityName="Hamburg" RefPointType="3" StateProv="1"/>
</VehLocSearchCriterion>
</VehLocationSearchRQ>
</soap:Body>
</soap:Envelope>
5.1.1.5. Search by Airport Id
Using the following attributes on the RefPoint node it will return a list of locations connected to an Airport Id.
Attribute |
Type |
Value |
Description |
---|---|---|---|
RefPointType |
Integer |
4 |
Type of location search. |
CityName |
Integer |
Airport Id |
Can be obtained from GEO destinations. |
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocationSearchRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID ID_Context="password" Type="username"/>
</Source>
<Source ISOCountry="GB"/>
</POS>
<VehLocSearchCriterion Ranking="50">
<RefPoint CityName="3602" RefPointType="4"/>
</VehLocSearchCriterion>
</VehLocationSearchRQ>
</soap:Body>
</soap:Envelope>
5.1.1.6. Search by Airport IATA code
The majority of commercial airports have a three letter unique identifier called IATA code. It is possible to retrieve locations for an airport using this code.
Attribute |
Type |
Value |
Description |
---|---|---|---|
RefPointType |
Integer |
5 |
Type of location search. |
CityName |
String |
Airport IATA code |
Can be obtained from GEO destinations. |
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocationSearchRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID ID_Context="password" Type="username"/>
</Source>
<Source ISOCountry="GB"/>
</POS>
<VehLocSearchCriterion Ranking="50">
<RefPoint CityName="HAM" RefPointType="5"/>
</VehLocSearchCriterion>
</VehLocationSearchRQ>
</soap:Body>
</soap:Envelope>
5.1.1.7. Search by geo coordinate (latitude/longitude)
For a geo coordinate search the request has to contain the three child nodes of VehLocSearchCriterion. Which are RefPoint, Position and Radius.
RefPoint
Attribute |
Type |
Required |
Value |
Description |
---|---|---|---|---|
RefPointType |
Integer |
Yes |
8 |
Type of location search. |
CountryCode |
String |
Optional |
Two letter ISO code |
Can be obtained from GEO destinations. |
StateProv |
Integer |
Optional |
Region Id |
Can be obtained from GEO destinations. |
If an ISO code is sent, system will return locations that are in that country, locations that are in another country will be filtered. Example case: A search without country, done in a position close to a border, will return locations in both countries.
If a Region Id is sent, system will return locations that are on that region, locations that are in another region will be filtered. Example case: A search without region, done in an island, could return location that are in another island.
Position
Attribute |
Type |
Required |
Value |
Description |
---|---|---|---|---|
Latitude |
Float |
Yes |
-90 to 90 |
Latitude of the requested point. |
Longitude |
Float |
Yes |
-180 to 180 |
Longitude of the requested point. |
Radius
Attribute |
Type |
Required |
Value |
Description |
---|---|---|---|---|
DistanceMax |
Float |
Yes |
0 to 100 |
Radius of the circle with |
DistanceMeasure |
String |
Yes |
km or mi |
Unit of the distance, km for kilometers and mi for miles. |
Note
A DistanceMax of 0 will not return any locations.
Use case for CountryCode
This request will give a response that contains locations in Luxembourg, France, Belgium and Germany.
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocationSearchRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID ID_Context="password" Type="username"/>
</Source>
<Source ISOCountry="EN"/>
</POS>
<VehLocSearchCriterion Ranking="50">
<RefPoint RefPointType="8"/>
<Position Latitude="49.60376669" Longitude="6.13317772"/>
<Radius DistanceMax="100" DistanceMeasure="mi"/>
</VehLocSearchCriterion>
</VehLocationSearchRQ>
</soap:Body>
</soap:Envelope>
In case the intention is only extract Luxemburg locations, the request will contain the CountryCode of Luxembourg.
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocationSearchRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID ID_Context="password" Type="username"/>
</Source>
<Source ISOCountry="EN"/>
</POS>
<VehLocSearchCriterion Ranking="50">
<RefPoint CountryCode="LU" RefPointType="8"/>
<Position Latitude="49.60376669" Longitude="6.13317772"/>
<Radius DistanceMax="100" DistanceMeasure="mi"/>
</VehLocSearchCriterion>
</VehLocationSearchRQ>
</soap:Body>
</soap:Envelope>
This sample will return locations only in Luxembourg.
Use case for StateProv
This request will give a response that contains locations in Mallorca (Island) and at the same time locations in Ibiza (Another island) and in mainland.
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocationSearchRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID ID_Context="password" Type="username"/>
</Source>
<Source ISOCountry="EN"/>
</POS>
<VehLocSearchCriterion Ranking="200">
<RefPoint RefPointType="8"/>
<Position Latitude="39.572104" Longitude="2.441236"/>
<Radius DistanceMax="100" DistanceMeasure="mi"/>
</VehLocSearchCriterion>
</VehLocationSearchRQ>
</soap:Body>
</soap:Envelope>
In case the intention is to extract only locations in Mallorca, the request will contain the Region Id of Mallorca.
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocationSearchRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID ID_Context="password" Type="username"/>
</Source>
<Source ISOCountry="EN"/>
</POS>
<VehLocSearchCriterion Ranking="200">
<RefPoint RefPointType="8" StateProv="3"/>
<Position Latitude="39.572104" Longitude="2.441236"/>
<Radius DistanceMax="100" DistanceMeasure="mi"/>
</VehLocSearchCriterion>
</VehLocationSearchRQ>
</soap:Body>
</soap:Envelope>
Note
Filtering by <Vendor>
currently is not implemented for geo coordinate searches.
5.1.2. Response
Independentely of the type of request (City ID, airpot IATA, etc…). The response is the same.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<informationHeader xmlns="http://www.opentravel.org/OTA/2003/05">
<Successfully>true</Successfully>
<ProcessingTime>0,734393 sec</ProcessingTime>
</informationHeader>
</soap:Header>
<soap:Body>
<VehLocationSearchRS TimeStamp="2018-09-19T11:33:36" Target="Test" Version="3"
xmlns="http://www.opentravel.org/OTA/2003/05">
<VehMatchedLocs>
<VehMatchedLoc>
<LocationDetail AtAirport="true" Code="HAMT167" Name="Hamburg Airport"
CodeContext="K5" ExtendedLocationCode="3602-DGK5" AssocAirportLocList="HAM">
<Address Type="3">
<StreetNmbr>In-Terminal 2, Arrival</StreetNmbr>
<AddressLine>Flughafenstr 1-3</AddressLine>
<CityName>HAMBURG</CityName>
<PostalCode>22335</PostalCode>
<CountryName Code="DE">Germany</CountryName>
</Address>
<Telephone PhoneTechType="1" PhoneNumber="+49 40 357044961" />
<Telephone PhoneTechType="2" PhoneNumber="+49 40 357044969" />
<AdditionalInfo>
<ParkLocation Location="Please find the Buchbinder / Global Rent a Car counter in Terminal 2, Arrival (Car Rental Area)" />
<CounterLocation>14</CounterLocation>
<OperationSchedules>
<OperationSchedule>
<OperationTimes>
<OperationTime Mon="true" Start="06:00" End="23:00" />
<OperationTime Tue="true" Start="06:00" End="23:00" />
<OperationTime Weds="true" Start="06:00" End="23:00" />
<OperationTime Thur="true" Start="06:00" End="23:00" />
<OperationTime Fri="true" Start="06:00" End="23:00" />
<OperationTime Sat="true" Start="06:00" End="23:00" />
<OperationTime Sun="true" Start="06:00" End="23:00" />
</OperationTimes>
</OperationSchedule>
</OperationSchedules>
<TPA_Extensions>
<Position Latitude="53.630389" Longitude="9.988228" />
<CityId>47</CityId>
<AirportId>99</AirportId>
<Vendor TravelSector="Car Rental" Code="DG" CodeContext="51">Global Rent a Car</Vendor>
</TPA_Extensions>
</AdditionalInfo>
</LocationDetail>
<VehLocSearchCriterion>
<Position Latitude="53.630389" Longitude="9.988228" />
</VehLocSearchCriterion>
</VehMatchedLoc>
</VehMatchedLocs>
</VehLocationSearchRS>
</soap:Body>
</soap:Envelope>
VehMatchedLocs contains a list of VehMatchedLoc, each VehMatchedLoc contains the information of one particular location.
Sample with more than one location
<VehLocationSearchRS TimeStamp="2018-09-19T17:40:45" Target="Test" Version="3"
xmlns="http://www.opentravel.org/OTA/2003/05">
<VehMatchedLocs>
<VehMatchedLoc>
<LocationDetail AtAirport="true" Code="HAMT167" Name="Aeropuerto de Hamburgo"
CodeContext="K5" ExtendedLocationCode="3602-DGK5" AssocAirportLocList="HAM">
<Address Type="3">
<StreetNmbr>In-Terminal 2, Arrival</StreetNmbr>
<AddressLine>Flughafenstr 1-3</AddressLine>
<CityName>HAMBURG</CityName>
<StateProv StateCode="TX">Texas</StateProv>
<PostalCode />
<CountryName Code="DE">Alemania</CountryName>
</Address>
<Telephone PhoneTechType="1" PhoneNumber="+49 40 357044961" />
<Telephone PhoneTechType="2" PhoneNumber="+49 40 357044969" />
<AdditionalInfo>
<ParkLocation Location="Por favor, dirigite a la terminal 2, en la zona de llegadas encontrarás el mostrador de Buchbinder / Global Rent a Car. (En la zona de los coches de alquiler)." />
<CounterLocation>14</CounterLocation>
<OperationSchedules>
<OperationSchedule>
<OperationTimes>
<OperationTime Mon="true" Start="06:00" End="23:00" />
<OperationTime Tue="true" Start="06:00" End="23:00" />
<OperationTime Weds="true" Start="06:00" End="23:00" />
<OperationTime Thur="true" Start="06:00" End="23:00" />
<OperationTime Fri="true" Start="06:00" End="23:00" />
<OperationTime Sat="true" Start="06:00" End="23:00" />
<OperationTime Sun="true" Start="06:00" End="23:00" />
</OperationTimes>
</OperationSchedule>
</OperationSchedules>
<TPA_Extensions>
<Position Latitude="53.630389" Longitude="9.988228" />
<CityId>47</CityId>
<AirportId>99</AirportId>
<Vendor TravelSector="Car Rental" Code="DG" CodeContext="51">Global Rent a Car</Vendor>
</TPA_Extensions>
</AdditionalInfo>
</LocationDetail>
<VehLocSearchCriterion>
<Position Latitude="53.630389" Longitude="9.988228" />
</VehLocSearchCriterion>
</VehMatchedLoc>
<VehMatchedLoc>
<LocationDetail AtAirport="true" Code="HAMT018" Name="Hamburgo Aeropuerto"
CodeContext="K5" ExtendedLocationCode="3602-BDK5" AssocAirportLocList="HAM">
<Address Type="3">
<StreetNmbr>Terminal 2, Arrival, Flughafenstr. 1-3.</StreetNmbr>
<CityName>HAMBURG</CityName>
<PostalCode />
<StateProv StateCode="TX">Texas</StateProv>
<CountryName Code="DE">Alemania</CountryName>
</Address>
<Telephone PhoneTechType="1" PhoneNumber="+49 40 357044961" />
<Telephone PhoneTechType="2" PhoneNumber="+49 40 357044 969" />
<AdditionalInfo>
<ParkLocation Location="Por favor, dirigite a la terminal 2, en la zona de llegadas encontrarás el mostrador de Buchbinder / Global Drive. (En la zona de los coches de alquiler)." />
<CounterLocation>14</CounterLocation>
<OperationSchedules>
<OperationSchedule>
<OperationTimes>
<OperationTime Mon="true" Start="06:00" End="23:00" />
<OperationTime Tue="true" Start="06:00" End="23:00" />
<OperationTime Weds="true" Start="06:00" End="23:00" />
<OperationTime Thur="true" Start="06:00" End="23:00" />
<OperationTime Fri="true" Start="06:00" End="23:00" />
<OperationTime Sat="true" Start="06:00" End="23:00" />
<OperationTime Sun="true" Start="06:00" End="23:00" />
</OperationTimes>
</OperationSchedule>
</OperationSchedules>
<TPA_Extensions>
<Position Latitude="53.630389" Longitude="9.988228" />
<CityId>47</CityId>
<AirportId>99</AirportId>
<Vendor TravelSector="Car Rental" Code="BD" CodeContext="251">Buchbinder Deutschland</Vendor>
</TPA_Extensions>
</AdditionalInfo>
</LocationDetail>
<VehLocSearchCriterion>
<Position Latitude="53.630389" Longitude="9.988228" />
</VehLocSearchCriterion>
</VehMatchedLoc>
</VehMatchedLocs>
</VehLocationSearchRS>
5.1.2.1. LocationDetail node
Attribute |
Type |
Description |
---|---|---|
LocationDetail AtAirport |
Boolean |
Flag indication if location is an airport location |
LocationDetail Code |
String |
Carnect unique location code |
LocationDetail Name |
String |
Full name of the location (Language dependent) |
LocationDetail AssocAirportLocList |
String |
Location IATA code. Not returned, in case a City Downtown has not IATA code assign. |
<LocationDetail AtAirport="true" Code="HAMT167" Name="Hamburg Airport" CodeContext="K5" ExtendedLocationCode="3602-DGK5" AssocAirportLocList="HAM">
5.1.2.2. Address node
Address node has the following child nodes.
Child node |
Attributes |
Description |
---|---|---|
StreetNmbr |
None |
Address information |
AddressLine |
None |
Additional address information |
CityName |
None |
Name of the city |
PostalCode |
None |
Postal code |
StateProv |
StateCode |
State code and name |
CountryName |
Code (ISO code of the country) |
Country name |
Address node sample
<Address Type="3">
<StreetNmbr>In-Terminal 2, Arrival</StreetNmbr>
<AddressLine>Flughafenstr 1-3</AddressLine>
<CityName>HAMBURG</CityName>
<PostalCode>22335</PostalCode>
<StateProv StateCode="TX">Texas</StateProv>
<CountryName Code="DE">Germany</CountryName>
</Address>
StreetNmbr, CityName and CountryName nodes are always present. AddressLine and PostalCode might not be available.
5.1.2.3. Telephone node
This node occurs twice:
PhoneTechType = 1: telephone number
PhoneTechType = 2: fax number
<Telephone PhoneTechType="1" PhoneNumber="+34 965 23 31 82"/>
<Telephone PhoneTechType="2" PhoneNumber="+34 971 22 00 49"/>
An unknown telephone number is represented as PhoneNumber=""
.
5.1.2.4. ParkLocation node
The attribute ParkLocation is a description on how to reach the location, it is language dependent.
<ParkLocation Location="InterRent office is in the baggage claim hall in the Rent a Car area. Just front belt Nº. 3. We have a second counter located in the 1st floor parking building. Crossing the street to public parking, take the stairs rear the bar to the 1st floor. And take the exit to the left. follow InterRent signals to the office."/>
5.1.2.5. CounterLocation node
- OTA Vehicle Where At Facility code, currently used values:
3 (Shuttle off airport)
7 (City Downtown)
14 (Airport)
<CounterLocation>14</CounterLocation>
5.1.2.6. OperationTimes node
Provides information on the opening hours for each day.
Attribute |
Type |
Description |
---|---|---|
OperationTime Mon, Tue, Wed, Thu, Fri, Sat, Sun |
Boolean |
Flag indicating if the location is opened on Mondays, Tuesdays, … |
OperationTime Start |
Time |
Time when location opens |
OperationTime End |
Time |
Time when location closes |
- Note:
Each weekday might appear up to three times. Note too that displaying 12:00 PM has an exceptional value: ‘23:59’.
<OperationSchedule>
<OperationTimes>
<OperationTime Mon="true" Start="08:00" End="13:00" />
<OperationTime Mon="true" Start="16:00" End="20:00" />
<OperationTime Tue="true" Start="08:00" End="13:00" />
<OperationTime Tue="true" Start="16:00" End="20:00" />
<OperationTime Weds="true" Start="08:00" End="13:00" />
<OperationTime Weds="true" Start="16:00" End="20:00" />
<OperationTime Thur="true" Start="08:00" End="13:00" />
<OperationTime Thur="true" Start="16:00" End="20:00" />
<OperationTime Fri="true" Start="08:00" End="13:00" />
<OperationTime Fri="true" Start="16:00" End="20:00" />
<OperationTime Sat="true" Start="08:00" End="13:00" />
<OperationTime Sat="true" Start="16:00" End="20:00" />
<OperationTime Sun="true" Start="08:00" End="12:00" />
<OperationTime Sun="true" Start="18:00" End="20:00" />
</OperationTimes>
</OperationSchedule>
5.1.2.7. TPA_Extensions and VehLocSearchCriterion nodes
Both have the same child node (Position) with the same attributes which contains the same information.
Attribute |
Type |
Required |
Value |
Description |
---|---|---|---|---|
Latitude |
Float |
Yes |
-90 to 90 |
Latitude of the location. |
Longitude |
Float |
Yes |
-180 to 180 |
Longitude of the location. |
TPA_Extensions also contains <CityId> and <AirportId> (if applicable) that contain identifiers allowing to link the location back to destination reference data.
<TPA_Extensions>
<Position Latitude="39.5373" Longitude="2.4414"/>
<CityId>47</CityId>
<AirportId>99</AirportId>
<Timezone>America/New_York</Timezone>
<Vendor TravelSector="Car Rental" Code="ZI" CodeContext="389">Avis</Vendor>
</TPA_Extensions>
<VehLocSearchCriterion>
<Position Latitude="39.5373" Longitude="2.4414"/>
</VehLocSearchCriterion>
5.1.2.8. TPA_Extensions and Vendor node
TPA_Extensions also contains a <Vendor> with the information to which supplier a certain location belongs to. Example:
<Vendor TravelSector="Car Rental" Code="ZI" CodeContext="389">Avis</Vendor>
Attribute |
Type |
Description |
---|---|---|
TravelSector |
String |
Value will always be “Car Rental” |
Code |
String |
Two letter supplier’s indentifier, eg.: “ZI” |
CodeContext |
Integer |
Carnect’s internal supplier’s indentifier, eg.: 389 |
- Note:
Value of Vendor node represents supplier’s name, eg.: Avis.
5.2. Location Details
This section displays details of desired location.
VehLocDetailRQ
VehLocDetailRS
Main purpose of VehLocDetailRQ is to obtain address data and opening hours of a particular location.
5.2.1. Request
Parameter |
Type |
Required |
Description |
---|---|---|---|
Location – CodeContext |
Integer |
Yes |
Defines the query type
|
Location – LocationCode |
Integer |
No |
ID of Region |
Location – Text |
String |
No |
Defines the source market |
Vendor |
String |
No |
Defines the Supplier – leave empty to return all |
5.2.2. Response
Parameter |
Type |
Description |
---|---|---|
OperationTime Mon, Tue, Wed, Thu, Fri, Sat, Sun |
Boolean |
Flag indicating if the location is opened on Mondays, Tuesdays, … |
OperationTime Start |
Time |
Time when location opens |
OperationTime End |
Time |
Time when location closes |
Note that each weekday might appear up to three times. Note too that displaying 12:00 PM has an exceptional value: ‘23:59’.
5.2.3. Sample Request
Using Location_ID (CodeContext: 1):
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocDetailRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID Type="username" ID_Context="password" />
</Source>
<Source ISOCountry="EN" />
</POS>
<Location CodeContext="1" LocationCode="7600868"></Location>
</VehLocDetailRQ>
</soap:Body>
</soap:Envelope>
Using GDSCode+LocationCode (CodeContext: 2):
<soap:Envelope xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<VehLocDetailRQ>
<POS>
<Source ISOCountry="EN">
<RequestorID Type="username" ID_Context="password"/>
</Source>
</POS>
<Location CodeContext="2" ExtendedLocationCode="ZEARN"/>
</VehLocDetailRQ>
</soap:Body>
</soap:Envelope>
5.2.4. Sample Response
<VehLocDetailRS xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="2.0" xmlns="http://www.opentravel.org/OTA/2003/05">
<LocationDetail AtAirport="true" Code="1091515" Name="Mallorca" CodeContext="PMI" ExtendedLocationCode="1931-DFPMI" AssocAirportLocList="PMI">
<Address Type="3">
<StreetNmbr>Aeropuerto De Palma</StreetNmbr>
<AddressLine/>
<CityName>Palma De Mallorca</CityName>
<PostalCode>07611</PostalCode>
<StateProv StateCode="TX">Texas</StateProv>
<CountryName Code="ES"/>
</Address>
<Telephone PhoneTechType="1" PhoneNumber="111111111"/>
<Telephone PhoneTechType="2" PhoneNumber="222222222"/>
<AdditionalInfo>
<ParkLocation Location="Please find the Buchbinder / Global Rent a Car counter in Terminal 2, Arrival (Car Rental Area)" />
<CounterLocation>14</CounterLocation>
<OperationSchedules>
<OperationSchedule>
<OperationTimes>
<OperationTime Mon="true" Start="07:30" End="23:59"/>
…
</OperationTimes>
</OperationSchedule>
</OperationSchedules>
<TPA_Extensions>
<Position Latitude="-22.57" Longitude="17.083611" />
<CityId>47</CityId>
<AirportId>99</AirportId>
<Timezone>America/New_York</Timezone>
<Vendor TravelSector="Car Rental" Code="ZE" CodeContext="371">Hertz</Vendor>
</TPA_Extensions>
</AdditionalInfo>
</LocationDetail>
</VehLocDetailRS>