Ancillaries
Flight ancillaries are also known as Optional Services. An ancillary service is any additional special service request (SSR) that can be requested to enhance a flight journey. Ancillary services allow you to book additional items
related to a flight such as lounge access, baggage, meals, and paid seats.
Different suppliers provide these optional services and there can be limitations according to the service provider.
Mainly there are three types of suppliers which will be providing Ancillaries such as
GDS, LCC and Consolidators.
- Note that Ancillary can be controlled by integrator wise. When you will integrate you can discuss with Travlinq team and get enable or disable list of Ancillaries bases on your preferences. By default, all are enable.
Ancillary supporting suppliers.
API Name | Region | Supplier Type | Meal Anc Supported |
Seat Ancillary Supported |
Baggage Ancillary Supported |
---|---|---|---|---|---|
Amadeus(GDS) | All | GDS | Yes | Yes | Yes |
Galilieo GWS (Air GDS) | All | GDS | NA | NA | NA |
Sabre(Air GDS) | All | GDS | Yes | Yes | Yes |
Gal UAPI (GDS) | All | GDS | Yes | Yes | Yes |
Gal UAPI ACH (GDS) | All | GDS | NA | NA | NA |
TBO Holidays Air | UAE | Consolidator | NA | NA | NA |
TBO India Air | India | Consolidator | Yes | Yes | Yes |
JetStar (LCC) | India | LCC | NA | NA | NA |
Air India Express(LCC) | UAE | LCC | Yes | Yes | Yes |
Indigo (LCC) | LCC | Yes | Yes | Yes | |
Go Air (LCC) | LCC | Yes | Yes | Yes | |
Spice Jet(LCC) | LCC | Yes | Yes | Yes | |
Air Arabia(LCC) | LCC | Yes | Yes | Yes | |
Air Asia(LCC) | LCC | Yes | Yes | Yes | |
Fly Dubai(LCC) | LCC | Yes | Yes | Yes | |
Regent Air | LCC | No | No | No | |
Salam Air | LCC | No | No | No | |
Malindo | LCC | Yes | Yes | Yes | |
Jazeera | LCC | Yes | Yes | Yes | |
Verteil | UAE | Consolidator/NDC | Yes | Yes | Yes |
Flynas | LCC | Yes | Yes | Yes |
Ancillary work flow
Below flow diagram shows the ancillary functionality work flow for GDS and lcc ancillaries.
Validating Ancillary Selection
This section describes how ancillary validation occurs at the ancillary provisional book and booking levels, utilizing predefined rules. The validation process is based on a database table. If the supplier provides ancillary restriction information during the booking process, it is inserted into the table and used for validation. The table also includes static data for the validation process.
Supplier Name | Ancillary Type | Min Quantity | Max Quantity | Charge type | Applicable Type | FareType | Primary Carrier |
---|---|---|---|---|---|---|---|
Amadeuswspremium | SEAT | 1 | 1 | BOTH | PASSENGER | Normal | GF |
Amadeuswspremium | MEAL | 1 | 1 | PAID | PASSENGER | ANY | ANY |
Amadeuswspremium | MEAL | 1 | 1 | FREE | PASSENGER | ANY | ANY |
Amadeuswspremium | BAGGAGE | 1 | 1 | BOTH | PASSENGER | Normal | GF |
The validation table contains following columns :
Column Name | Description |
---|---|
Supplier Name | Airline providing supplier |
Ancillary Type | MEAL,SEAT or BAGGAGE |
Minimum Quantity | Minimum selectable ancillary count |
Maximum Quantity | Maximum ancillary count |
Charge Type | This can have FREE,PAID or BOTH as values.If it is required to validate free ancillary count and the paid ancillary count using a single rule then BOTH should be used. |
Applicable Type | That means whether the rule applicable at the PASSENGER level or BOOKING level. |
Fare Type | Fare type of the flight booking |
Primary Carrier | Main airline |
During the process of reserving ancillaries, user selections undergo validation based on the rules defined in the aforementioned table. The applicable validation rule is determined and the selected ancillary counts are verified against the specified minimum and maximum quantities.
-
Seat validation will rely on the seat map provided in the ancillary search response. The number of segments will be determined by the seat map response, and the applicable rule will be applied to each segment.
For example, let's consider the route: BOM-DXB, DXB-BOM. If the seat map includes these two segments, the user will need to select seats for both segments. The ancillary rule will be applied to each segment. -
Meals will be validated using the
isAncillaryTripWise
flag. In most cases, this flag will be set to false, and the user will need to select meals segment by segment. -
Baggage will be validated based on the entire journey. The relevant ancillary rule will also be considered based on the journey.
If the user fails to select the minimum required number of ancillaries or exceeds the maximum ancillary count, an error message will be generated, preventing further progress.
In the event that no matching rule is found in the table, three general rules come into effect, which are universally applicable across all scenarios. These three rules, specifically designed to accommodate any supplier, constitute the comprehensive set of rules in place.
Supplier Name | Ancillary Type | Min Quantity | Max Quantity | Charge Type | Applicable Type | FareType | Primary Carrier |
---|---|---|---|---|---|---|---|
ANY | SEAT | 0 | 1 | BOTH | PASSENGER | ANY | ANY |
ANY | MEAL | 0 | 1 | BOTH | PASSENGER | ANY | ANY |
ANY | BAGGAGE | 0 | 1 | BOTH | PASSENGER | ANY | ANY |
Full Service Carriers(GDS)
Ancillary booking flow contains the following requests.
- Ancillary search :
api/v1/flight/ancillary-search
- Ancillary Provisional Book :
api/v1/reservation/ancillary-prov-book
- Ancillary Book :
api/v1/reservation/ancillary-book
Ancillary search flow varies according to the service type of the supplier.Following details are related to the full service carriers.Ancillaries can be searched at three stages.
- Pre PNR Search(After the flight search)
- Post PNR Search (After the flight provisional book)
- Post Booking (After the flight booking)
Pre PNR Ancillary Search
This is the standalone ancillary search request. This request executes after the flight search.
Tags | Attribute | Description |
---|---|---|
offerId | offerId* (String) |
OfferId should be the id received from the flight search response.This response contains the search id and the result id separated by a hyphen.Eg:AIR03024185-90. api call - api/v1/flight/search |
seatMapRequested | seatMapRequested* (Boolean) |
flag to indicate that seat ancillaries is required in the ancillary search request. |
otherAncillaryRequested | otherAncillaryRequested* (Boolean) |
flag to indicate that other ancillaries is required in the ancillary search request. |
flightSegments | flightSegments (Object) |
This tag contains the flight segment related information. Not released yet |
segmentKey (String) |
This tag contains the segment key which is received from the flight result. Not released yet |
|
departureAirportCode (String) |
This tag indicates the date of travel YYYY-MM-DD Not released yet |
|
departureDateTime (String) |
This tag indicates the departure from time 00:50 Not released yet |
|
departureTerminal (String) |
This tag indicates the departure to time 20:30 Not released yet |
|
arrivalAirportCode (String) |
This tag indicates the destination location DEL Not released yet |
|
arrivalTerminal (String) |
This tag indicates the date of travel YYYY-MM-DD Not released yet |
|
arrivalDateTime (String) |
This tag indicates the arrival from time 00:50 Not released yet |
|
operatingAirline (String) |
This tag indicates the arrival to time 20:30 Not released yet |
|
flightNumber (Integer) |
This tag contains the flight number Not released yet |
|
passengers | passengers (List) |
Ancillaries can be requested according to relevant passenger by using this tag. Not released yet |
id (String) |
This tag indicates the passenger id 1 Not released yet |
|
ptc (String) |
This tag indicates the passenger code Not released yet ADT |
|
age (Integer) |
Age of the passenger Not released yet 23 |
|
nameTitle (String) |
Title of the passenger Not released yet Mr |
|
givenName (String) |
First name of the passenger Not released yet |
|
middleName (String) |
Middle name of he passenger Not released yet |
|
surName (String) |
Last name of the passenger Not released yet |
|
loyaltyProgrammeAccounts | accountNumber (String) |
Loyalty account number Not released yet |
airlineIataCode (String) |
Airline indicator BA |
|
formOfPayment | formOfPayment* (String) |
This tag consist of Form of Payment Ex: CC = Credit Card, CR = Credit, CS = CASH |
travelType | TravelType * (String) |
This tag consist of travel type i.e Business or Personal B or P |
Post PNR Ancillary Search
This is the post PNR ancillary search request. This request executes after the flight provisional book.Request parameters will be changed to pass the parameters from provisional book response.
Tags | Attribute | Description |
---|---|---|
offerId | offerId* (String) |
OfferId should be the id received from the flight provisional book response .i.e api/v1/flight/flight-prov-book |
supplierLocator | supplierLocator* (String) |
Supplier locator received from the flight provisional book response. |
seatMapRequested | seatMapRequested* (Boolean) |
flag to indicate that seat ancillaries is required in the ancillary response. |
otherAncillaryRequested | otherAncillaryRequested* (Boolean) |
flag to indicate that other ancillaries is required in the ancillary response. |
flightSegments | flightSegments (Object) |
This tag contains the flight segment related information. Not released yet |
segmentKey (String) |
This tag contains the segment key which is received from the flight result. Not released yet |
|
departureAirportCode (String) |
This tag indicates the date of travel YYYY-MM-DD Not released yet |
|
departureDateTime (String) |
This tag indicates the departure from time 00:50 Not released yet |
|
departureTerminal (String) |
This tag indicates the departure to time 20:30 Not released yet |
|
arrivalAirportCode (String) |
This tag indicates the destination location DEL Not released yet |
|
arrivalTerminal (String) |
This tag indicates the date of travel YYYY-MM-DD Not released yet |
|
arrivalDateTime (String) |
This tag indicates the arrival from time 00:50 Not released yet |
|
operatingAirline (String) |
This tag indicates the arrival to time 20:30 Not released yet |
|
flightNumber (Integer) |
This tag conatins the flight number Not released yet |
|
passengers | passengers (List) |
Not released yet |
id (String) |
This tag indicates the passenger id 1 Not released yet |
|
ptc (String) |
This tag indicates the passenger code ADT Not released yet |
|
age (Integer) |
Age of the passenger 23 Not released yet |
|
nameTitle (String) |
Title of the passenger Mr Not released yet |
|
givenName (String) |
First name of the passenger Not released yet |
|
middleName (String) |
Middle name of he passenger Not released yet |
|
surName (String) |
Last name of the passenger Not released yet |
|
loyaltyProgrammeAccounts | accountNumber (String) |
Loyalty account number Not released yet |
airlineIataCode (String) |
Airline indicator BA |
|
formOfPayment | formOfPayment * (String) |
This tag consist of Form of Payment CS, CR |
travelType | TravelType * (String) |
This tag consist of travel type i.e Business or Personal B or P |
Post Ticketing Ancillary Search Flow
In this flow ancillaries can be searched after ticketing the booking.In this flow we need to pass the booking reference and the supplier locator in the ancillary search request as shown below.
Tags | Attribute | Description |
---|---|---|
bookingReferenceId | bookingReferenceId* (String) |
bookingReferenceId should be the reference id received from the flight book response .i.e api/v1/flight/flight-book |
supplierLocator | supplierLocator* (String) |
Supplier locator received from the flight provisional book response. |
seatMapRequested | seatMapRequested* (Boolean) |
flag to indicate that seat ancillaries is required in the ancillary response. |
otherAncillaryRequested | otherAncillaryRequested* (Boolean) |
flag to indicate that other ancillaries is required in the ancillary response. |
flightSegments | flightSegments (Object) |
This tag contains the flight segment related information. Not released yet |
segmentKey (String) |
This tag contains the segment key which is received from the flight result. Not released yet |
|
departureAirportCode (String) |
This tag indicates the date of travel YYYY-MM-DD Not released yet |
|
departureDateTime (String) |
This tag indicates the departure from time 00:50 Not released yet |
|
departureTerminal (String) |
This tag indicates the departure to time 20:30 Not released yet |
|
arrivalAirportCode (String) |
This tag indicates the destination location DEL Not released yet |
|
arrivalTerminal (String) |
This tag indicates the date of travel YYYY-MM-DD Not released yet |
|
arrivalDateTime (String) |
This tag indicates the arrival from time 00:50 Not released yet |
|
operatingAirline (String) |
This tag indicates the arrival to time 20:30 Not released yet |
|
flightNumber (Integer) |
This tag contains the light number Not released yet |
|
passengers | passengers (List) |
Not released yet |
id (String) |
This tag indicates the passenger id 1 Not released yet |
|
ptc (String) |
This tag indicates the passenger code ADT Not released yet |
|
age (Integer) |
Age of the passenger 23 Not released yet |
|
nameTitle (String) |
Title of the passenger Mr Not released yet |
|
givenName (String) |
First name of the passenger Not released yet |
|
middleName (String) |
Middle name of he passenger Not released yet |
|
surName (String) |
Last name of the passenger Not released yet |
|
loyaltyProgrammeAccounts | accountNumber (String) |
Loyalty account number Not released yet |
airlineIataCode (String) |
Airline indicator BA |
|
formOfPayment | formOfPayment * (String) |
This tag consist of Form of Payment CS, CR |
travelType | TravelType * (String) |
This tag consist of travel type i.e Business or Personal B or P |
Ancillary Search Response
Ancillary search response will contain the segment details, passenger details , and seat, baggage ,meal and other ancillary details.
Tags | Attribute | Description |
---|---|---|
data | data (List) |
|
flightSegments | flightSegments * (List) |
|
segmentKey* (String) |
This tag contains the segment key which is received from the flight result. | |
departureAirportCode* br>(String) | This tag indicates the date of travel YYYY-MM-DD |
|
departureDateTime * (String) |
This tag indicates the departure from time 00:50 |
|
departureTerminal (String) |
This tag indicates the departure to time 20:30 |
|
arrivalAirportCode (String) |
This tag indicates the destination location DEL |
|
arrivalTerminal (String) |
This tag indicates the date of travel YYYY-MM-DD |
|
arrivalDateTime (String) |
This tag indicates the arrival from time 00:50 |
|
operatingAirline (String) |
This tag indicates the arrival to time 20:30 |
|
flightNumber * (Integer) |
This tag contains the flight number. |
|
passengers | passengers * (Object List) |
Passenger details has to send with request while matching with search pax count. For json structure see the below request sample. |
passengerKey * (String) |
This is a unique key for each passenger in the booking.The key should be generate by client and send with request. | |
ptc * (String) |
||
passengerInfo | passengerInfo (Object) |
|
birthDate (String) |
||
gender (String) |
||
nameTitle * (String) |
||
givenName * (String) |
||
middleName (String) |
||
surname * (String) |
||
loyaltyProgramAccount | loyaltyProgramAccount (Object) |
|
airlineDesignator (String) |
||
accountNumber (String) |
||
providerName (String) |
||
programName (String) |
||
tierCode (String) |
||
ancillaryRules | ancillaryRules (List) |
This tag includes ancillary rules that are defined in a static table. These rules indicate the maximum and minimum quantities that can be chosen while reserving ancillaries for a specific booking. |
ancillaryType (String) |
This attribute will show the ancillary type. Eg:SEAT,MEAL,BAGGAGE | |
ancillaryQuantity | ancillaryQuantity (List) |
The ancillary quantity is represented as a list, which includes rules related to quantities. These rules specify the minimum and maximum selectable ancillaries, whether they are free or paid, and also indicate whether these conditions apply at the booking level or passenger level. |
min (Integer) |
If there is a minimum ancillary count that need to be booked with a specific booking, that count will be shown in this attribute. | |
max (Integer) |
This is the maximum ancillary count can be selected from FREE or PAID category or from BOTH categories. | |
chargeType (String) |
This attribute has the charge type of the ancillaries.This can have FREE,PAID or BOTH as values. | |
applicableType (String) |
This attribute has the applicable type of the rule.That means whether this rule applicable for the PASSENGER level or BOOKING level. | |
seatMap | seatMap * (List) |
This tag consist of Form of Payment CS, CR |
cabin | cabin * (List) |
This tag consist of travel type i.e Business or Personal B or P |
airEquipType | airEquipType (String) |
This tagg contains the air equipment type 32A |
deck | deck * (List) |
This is a list of cabin information. |
type | type * (String) |
This tag contains the deck type. Lower deck row |
airRow | airRow * (List) |
This tag contains the list of seat rows. |
rowNumber | rowNumber * (String) |
This tag contains the row number 1, 4 |
airSeats | airSeats (List) |
This tag contains the seat information list |
seatCode * (String) |
This tag contains the seat code A, C |
|
ancillaryOfferId * (String) |
This tag contains the ancillary offer id which consists with ancillary search and and ancillary id. | |
availability * (String) |
This tag contains the availability status of the seat. EX; VAC = Available,Vacant, RES = Occupied, NAV = Restricted, Not Available , NOS = No Seat |
|
seatType (String) |
This tag contains the seat type. Aisle(A), Window(W) |
|
exitRow (Boolean) |
An exit row is a row of seats on board a commercial airliner that is next to an emergency exit. Exit rows may be next to overwing exits or full-sized exit doors | |
noSeat (Boolean) |
This tag indicates whether seats are available or not. | |
seatNumber (String) |
This tag contains the seat number. 4-A |
|
chargeable (Boolean) |
This tag indicates whether seat is chargeable or not. | |
infantAllowed (Boolean) |
This tag indicates whether child are allowed or not for the particular seat. | |
childAllowed (Boolean) |
This tag indicates whether infants are allowed or not for the particular seat. | |
restrictedGeneral * (Boolean) |
This is restricted , User is unable to select | |
cabinClass (String) |
This tag contains the cabin class. Economy |
|
fare | fare* (List) |
Fares for the ancillaries should be a list.If adult and the child fares are same then a single fare object should be in the list.If fares are different then multiple fare objects should be created. |
buyingCurrency (String) |
This tag contains the buying currency of the ancillary. | |
buyingAmount (String) |
This tag contains the buying amount of the ancillary. | |
sellingCurrency (String) |
This tag contains the selling currency of the ancillary. | |
sellingAmount * (String) |
This tag contains the selling amount of the ancillary. | |
applicableFor (List) |
This is a String list which should contain the pax type of the applicable fare.If adult and child fares are same then this list should contain ADT,CHD.Otherwise this should contain either ADT or CHD. | |
branding | branding (String) |
This tag contains the randing information |
languageCode (String) |
||
type (String) |
||
imageHeight (String) |
||
imageWidth (String) |
||
value (String) |
||
airSeatCharacteristic (Map) |
This attribute is a key value pair which contains the characteristics of the seats | |
airInformationRow | airInformationRow * (String) |
This indicates the layout of the seats in the air cabin. This is mandatory for GDS ancillaries only. |
seatType | seatType * (String) |
This list contains the seat lay out list. "Seat","Seat","Seat","Aisle","Seat","Seat","Seat" |
segmentPassengerMapping | segmentPassengerMapping* (String) |
This contains the segment and passenger association for the relevant ancillaries. |
segmentKeys | segmentKeys * (String) |
This tag contains the segment list. But in GDS there will be only segment key. |
passengerKeys | passengerKeys * (String) |
This tag contains the passenger keys. But in GDS only one passenger key will be here. |
meals | meals (List) |
Meal ancillary information will be described under this tag. |
ancillary | ancillary (List) |
|
ancillaryOfferId (String) |
Unique ancillary id generated for each ancillary which contains the search id and ancillary id | |
airline (String) |
||
ancillaryCode (String) |
Code of the meal. | |
ancillaryDescription (String) |
Meal ancillary information . SPECIAL CAKE |
|
quantity (String) |
Quantity of the meals | |
type (String) |
MealOrBeverage/Meal | |
isAncillaryTripWise (String) |
This tag indicates whether this ancillary is trip wise or not | |
fare | fare* (List) |
Fares for the ancillaries should be a list.If adult and the child fares are same then a single fare object should be in the list.If fares are different then multiple fare objects should be created. |
buyingCurrency (String) |
This tag contains the buying currency of the ancillary. | |
buyingAmount (String) |
This tag contains the buying amount of the ancillary | |
sellingCurrency (String) |
This tag contains the selling currency of the ancillary. | |
sellingAmount (String) |
This tag contains the selling amount of the ancillary. | |
applicableFor (List) |
This is a String list which should contain the pax type of the applicable fare.If adult child fares are same then this list should contain ADT,CHD.Otherwise this should contain either ADT or CHD. | |
branding | branding (String) |
Branding information as per type. |
languageCode (String) |
Language code English |
|
type (String) |
Branding content type Text, Title, Image |
|
imageHeight (String) |
Image properties - height | |
imageWidth (String) |
Image properties - width | |
value (String) |
||
segmentPassengerMapping | segmentPassengerMapping* (Object) |
This element includes Segment and passenger association keys |
segmentKeys | segmentKeys * (String) |
Passenger keys are updated in passenger map |
passengerKeys | passengerKeys * (String) |
Segment keys are updated in the segment map |
baggage | baggage (List) |
Baggage ancillary information will be described under this tag. |
ancillary | ancillary (List) |
|
ancillaryOfferId (String) |
Unique ancillary id generated for each ancillary which contains the search id and ancillary id | |
airline (String) |
||
ancillaryCode (String) |
Code of the meal. | |
ancillaryDescription (String) |
Baggage ancillary information . UPTO33LB 15KG BAGGAGE |
|
type (String) |
Baggage | |
fare | fare* (List) |
Fares for the ancillaries should be a list.If adult and the child fares are same then a single fare object should be in the list.If fares are different then multiple fare objects should be created. |
buyingCurrency (String) |
This tag contains the buying currency of the ancillary. | |
buyingAmount (String) |
This tag contains the buying amount of the ancillary | |
sellingCurrency (String) |
This tag contains the selling currency of the ancillary. | |
sellingAmount (String) |
This tag contains the selling amount of the ancillary. | |
applicableFor (List) |
This is a String list which should contain the pax type of the applicable fare.If adult and child fares are same then this list should contain ADT,CHD.Otherwise this should contain either ADT or CHD. | |
branding | branding (String) |
Branding information as per type. |
languageCode (String) |
Language code English |
|
type (String) |
Branding content type Text, Title, Image |
|
imageHeight (String) |
Image properties - height | |
imageWidth (String) |
Image properties - width | |
value (String) |
||
segmentPassengerMapping | segmentPassengerMapping* (Object) |
This element includes Segment and passenger association keys |
segmentKeys | segmentKeys (String) |
Passenger keys are updated in passenger map |
passengerKeys | passengerKeys (String) |
Segment keys are updated in the segment map |
otherAncillaries | otherAncillaries (List) |
Other ancillary information will be described under this tag. |
ancillary | ancillary (List) |
|
ancillaryOfferId (String) |
Unique ancillary id generated for each ancillary which contains the search id and ancillary id | |
airline (String) |
||
ancillaryCode (String) |
Code of the ancillary. | |
ancillaryDescription (String) |
Other ancillary information . TRAVEL SERVICE |
|
type (String) |
Eg: TRAVEL SERVICE | |
fare | fare* (List) |
Fares for the ancillaries should be a list.If adult and the child fares are same then a single fare object should be in the list.If fares are different then multiple fare objects should be created. |
buyingCurrency (String) |
This tag contains the buying currency of the ancillary. | |
buyingAmount (String) |
This tag contains the buying amount of the ancillary | |
sellingCurrency (String) |
This tag contains the selling currency of the ancillary. | |
sellingAmount (String) |
This tag contains the selling amount of the ancillary. | |
applicableFor (List) |
This is a String list which should contain the pax type of the applicable fare.If adult and child f are same then this list should contain ADT,CHD.Otherwise this should contain either ADT or CHD. | |
branding | branding (String) |
Branding information as per type. |
languageCode (String) |
Language code English |
|
type (String) |
Branding content type Text, Title, Image |
|
imageHeight (String) |
Image properties - height | |
imageWidth (String) |
Image properties - width | |
value (String) |
||
segmentPassengerMapping | segmentPassengerMapping* (Object) |
This element includes Segment and passenger association keys |
segmentKeys | segmentKeys (String) |
Passenger keys are updated in passenger map |
passengerKeys | passengerKeys (String) |
Segment keys are updated in the segment map |
Ancillary Search Response | |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 |
|
Ancillary Provisional Book
Ancillary provisional book call executes after doing the flight booking. This request will show the prices related to the selected ancillaries.
Ancillary Provisional Book Request
Below table show the attributes related to the provisional book request.
Tags | Attribute | Description |
---|---|---|
data | data (List) |
This is a list and list should contain the selecting ancillary ids with the relevant passenger key. |
offerId | offerId (String) |
There are two type of scenario for this; GDS Pre PNR and All LCC flows* This is offerid that has received in the flight provisional book response and it is compulsory .GDS post PNR and Post ticketing The offerid should not snd wih Ancillary Prov book request. |
selectedAncillaries | selectedAncillaries* (List) |
This tag contains the selected ancillary information |
ancillaryOfferId | ancillaryOfferId * (String) |
A unique ancillary offer id will be generated at the time of searching the ancillaries.This id need to be passed when performing the provisional book request. |
segmentKey | segmentKey (String) |
Status of the ancillary will be shown here. |
passengerKey | passengerKey* (String) |
Passenger key of the relevant passenger |
Ancillary Provisional Book Request | |
---|---|
Ancillary Provisional Book Response
Below table and json message shows the ancillary provisional book response.
Tags | Attribute | Description |
---|---|---|
data | data (List) |
This is a list and list should contain the selecting ancillary ids with the relevant passenger key. |
ancillaryOfferId | ancillaryOfferId * (String) |
A unique ancillary offer id will be generated at the time of searching the ancillaries.This id need to be passed when performing the provisional book request. |
status | status (String) |
Statusof the ancillary will be shown here. |
passengerKey | passengerKey * (String) |
Passenger key of the relevant passenger |
fare | fare* (Object) |
fare information the selected ancillaries will be shown here. |
buyingAmount | buyingAmount* (Double) |
Buying amount of the ancillary will be shown in this tag. |
buyingCurrency | buyingCurrency* (String) |
Buying currency of the ancillary will be shown in this tag. |
sellingAmount | sellingAmount* (Double) |
Selling currency of the ancillary will be shown in this tag. |
sellingCurrency | sellingCurrency * (String) |
Selling amount of the ancillary will be shown in this tag. |
success | success* (Boolean) |
This tag shows whether ancillary success or not at suppler end. If this attribute value is false then that ancillary is pending from suppler end. Then that ancillary should not send with next confirm call. If any ancillary this attribute value is true then that ancillary can be booked hence can send with booking call. |
isPriceChanged | isPriceChanged* (Boolean) |
This tag shows whether there is a price difference at the time search and provisional book of the ancillaries. |
Ancillary Book
Ancillary Book Request
This request executes after doing the ancillary provisional booking. This request contains the ancillary information received from ancillary provisional book response .
Tags | Attribute | Description |
---|---|---|
data | data (List) |
This is a list and list should contain the selecting ancillary ids with the relevant passenger key. |
selectedAncillaries | selectedAncillaries * (List) |
This tag contains the selected ancillary information |
ancillaryOfferId | ancillaryOfferId * (String) |
A unique ancillary offer id will be generated at the time of searching the ancillaries.This id need to be passed when performing the provisional book request. |
paymentDetails | paymentDetails (Object) |
|
paymentMode * (String) |
Ex: CC = Credit Card, CR = Credit |
|
transactionAmount | transactionAmount * (Double) |
Total cost for the selected ancillaries |
cardInfo (String) |
Encrypted.card.details.to.be.passed.here. This is compulsory only when payment type is CC. | |
address | address (Object) |
|
label (String) |
||
street (String) |
||
postalCode (String) |
||
cityName (String) |
||
countryCode (String) |
Ancillary Book Response
Ancillary booking response is as follows.
Tags | Attribute | Description |
---|---|---|
data | data (List) |
This is a list and list should contain the selecting ancillary ids with the relevant passenger key. |
bookingReferenceId | bookingReferenceId* (String) |
Booking reference id for the particular ancillary booking |
status | status (String) |
Status of thr ancillary booking success/false |
ancillaryBookDetails | ancillaryBookDetails* | |
ancillaryOfferId | ancillaryOfferId * (String) |
A unique ancillary offer id will be generated at the time of searching the ancillaries.This id need to be passed when performing the provisional book request. |
emdNumber | emdNumber * (String) |
Statusof the ancillary will be shown here. |
passengerKey | passengerKey * (String) |
Passenger key of the relevant passenger |
fare | fare* (Object) |
fare information the selected ancillaries will be shown here. |
buyingAmount | buyingAmount* (Double) |
Buying amount of the ancillary will be shown in this tag. |
buyingCurrency | buyingCurrency* (String) |
Buying currency of the ancillary will be shown in this tag. |
sellingAmount | sellingAmount* (Double) |
Selling currency of the ancillary will be shown in this tag. |
sellingCurrency | sellingCurrency * (String) |
Selling amount of the ancillary will be shown in this tag. |
isPriceChanged | isPriceChanged* (Boolean) |
This tag shows whether there is a price difference at the time search and provisional book of the ancillaries. |
Ancillary Direct Booking
Direct booking request consists of the following requests.
- Ancillary Search - Ancillary search can be performed using pre PNR request or post PNR request
- Ancillary Book(EMD and Provisional Book) - Provisional book and book calls will be handled within this request
In this flow ancillary direct booking call will be executed after the flight book call. There will be no provisional book call in this flow. Selected ancillary details and payment details are combined in this request. Parameter descriptions are same as the above provisional book and book requests.
Ancillary Direct Booking Request
Below table show the attributes related to the direct booking request.
Tags | Attribute | Description |
---|---|---|
data | data (List) |
This is a list and list should contain the selecting ancillary ids with the relevant passenger key. |
offerId | offerId (String) |
There are two type of scenario for this; GDS Pre PNR and All LCC flows* This is offerid that has received in the flight provisional book response and it is compulsory .GDS post PNR and Post ticketing The offerid should not snd wih Ancillary Prov book request. |
selectedAncillaries | selectedAncillaries* (List) |
This tag contains the selected ancillary information |
ancillaryOfferId | ancillaryOfferId * (String) |
A unique ancillary offer id will be generated at the time of searching the ancillaries.This id need to be passed when performing the provisional book request. |
passengerKey | passengerKey* (String) |
Passenger key of the relevant passenger |
paymentDetails | paymentDetails (Object) |
|
paymentMode * (String) |
Ex: CC = Credit Card, CR = Credit |
|
transactionAmount | transactionAmount * (Double) |
Total cost for the selected ancillaries |
cardInfo (String) |
Encrypted.card.details.to.be.passed.here. This is compulsory only when payment type is CC. | |
address | address (Object) |
This tag should contain the postal address |
label (String) |
||
street (String) |
||
postalCode (String) |
||
cityName (String) |
||
countryCode (String) |
Ancillary Direct Booking Response
Direct booking response will be same as the ancillary book response for GDS.
Tags | Attribute | Description |
---|---|---|
data | data (List) |
This is a list and list should contain the selecting ancillary ids with the relevant passenger key. |
bookingReferenceId | bookingReferenceId* (String) |
Booking reference id for the particular ancillary booking |
status | status (String) |
Status of thr ancillary booking success/false |
ancillaryBookDetails | ancillaryBookDetails* | |
ancillaryOfferId | ancillaryOfferId * (String) |
A unique ancillary offer id will be generated at the time of searching the ancillaries.This id need to be passed when performing the provisional book request. |
emdNumber | emdNumber * (String) |
Statusof the ancillary will be shown here. |
passengerKey | passengerKey * (String) |
Passenger key of the relevant passenger |
fare | fare* (Object) |
fare information the selected ancillaries will be shown here. |
buyingAmount | buyingAmount* (Double) |
Buying amount of the ancillary will be shown in this tag. |
buyingCurrency | buyingCurrency* (String) |
Buying currency of the ancillary will be shown in this tag. |
sellingAmount | sellingAmount* (Double) |
Selling currency of the ancillary will be shown in this tag. |
sellingCurrency | sellingCurrency * (String) |
Selling amount of the ancillary will be shown in this tag. |
isPriceChanged | isPriceChanged* (Boolean) |
This tag shows whether there is a price difference at the time search and provisional book of the ancillaries. |
Low-cost carrier(LCC)
Pre PNR Ancillary Search
This flow is same as the GDS pre PNR search request.Only difference is in the ancillary search response seat lay out will not be shown separately.
Post PNR Ancillary Search
This flow is same as the GDS post PNR search request.Only difference is in the ancillary search response seat lay out will not be shown separately.
Ancillary Provisional Book
Ancillary provisional book request and response is almost same as the GDS ancillary provisional book request and response.Additionally, flight provisional book offerid
should be passed
in the ancillary provisional book request.
Ancillary Book Request
There is no separate api call for the LCC ancillary bookings. That will be handled during the flight booking. The transaction amount
of the flight book request should be the total fare of the flight and total fare of the selected ancillaries.
Ancillary Book Response
In the booking response ancillary details will also get populated under the passenger level. Sample Book Response has shown below.
Tags | Attribute | Description |
---|---|---|
meta | meta (Object) |
|
success (String) |
Response status will be return Ex: "true" | |
statusCode (Boolean) |
Response statusCode will be return Ex: "1" | |
statusMessage (String) |
Response statusMessage will be return Ex: "SUCCESS" | |
commonData | commonData (String) |
This tag describes common data section in the response |
productCode* (String) |
Product code of the item being booked,Flight -A | |
searchKey* (String) |
A unique search id will be returned in the search response. | |
data | data (Object) |
Common details for the specific flight should be included here |
bookingReferenceId* (String) |
This attribute contains the booking reference number | |
supplierLocator * (String) |
Supplier Locator | |
journey | journey ( List) |
Journey information should be included in a list of journey type objects |
flight | flight (List) |
Segment reference and flight related information should be included. |
flightKey * (String) |
An unique identifier will be added as the flight key | |
stopQuantity (String) |
This attribute indicates total number of stops in Journey 2 |
|
flightInfo | flightInfo (Object) |
Duration and distance fields are added as the flight information |
duration (String) |
This attribute indicates onward and return duration in days,hours and minutes 1D5H20M. If duration is less than 24h then format is like 5H20M. If duration is less than 24h then Day component will not be available. |
|
distance | distance (Object) |
This attribute indicates onward and return distance as value and unit pair |
value (Integer) |
value of the distance Not released yet |
|
unit (String) |
unit of the distance Not released yet |
|
segmentReference | segmentReference * (Object) |
This attribute indicates the from to airport details |
onPoint * (String) |
On Point IATA code | |
offPoint * (String) |
Off Point IATA code | |
flightSegments | flightSegments * (List) |
This attribute indicates all the segment related properties |
segmentKey* (String) |
An unique identifier will be added as the segment key. a590892f-48d0-4c0b-b552-2f00d394a67c |
|
departureAirportCode * (String) |
This attribute indicates IATA code of flight departure. DXB |
|
departureDateTime * (String) |
This attribute indicates Flight DepartureDate and Time. 20120417T0940 |
|
departureTerminal (String) |
Terminal of departing airport 1 or 1 or Terminal1 |
|
arrivalAirportCode * (String) |
This attribute indicates IATA code of flight arrival. LHR |
|
arrivalDateTime * (String) |
This attribute indicates flight arrival date and Time. 20120417T0940 |
|
arrivalTerminal (String) |
Terminal of arrival airport 1 or 1 or Terminal1 |
|
duration (String) |
This attribute indicates onward and return duration in days,hours and minutes 1D5H20M. If duration is less than 24h then format is like 5H20M. If duration is less than 24h then Day component will not be available. |
|
flightNumber* (String) |
This attribute indicates your flight number for the particular leg. 0556 |
|
status (String) |
This attribute indicates the status of the segment. HS,HK |
|
resBookDesigCode (String) |
This attribute indicates the booking class C,B |
|
numberInParty (String) |
This attribute indicates the number of passengers 2 |
|
operatingAirline (String) |
This attribute indicates the operating airline. BA |
|
marketingAirline * (String) |
This attribute indicates the marketing airline GF |
|
fareBasis (String) |
Shows the leg wise fare basis | |
equipmentType (String) |
||
baggageAllowance | baggageAllowance (Object) |
Baggage allowance for the particular flight |
checkedInBaggage | checkedInBaggage (Object) |
Checked in baggage description |
paxType (String) |
Pax type related to the baggage type. | |
value (String) |
Value of the particular baggage | |
unit (String) |
Number of units | |
description (String) |
Baggage description | |
carryOnBaggage | carryOnBaggage (Object) |
Carry on baggage descriptions. Not released yet |
paxType (String) |
Pax type related to the baggage type. Not released yet |
|
value (String) |
Value of the particular baggage Not released yet |
|
unit (String) |
Number of units Not released yet |
|
description (String) |
Baggage description Not released yet |
|
flightServices | flightServices (List) |
|
flightService | flightService (Object) |
|
name (String) |
||
code (String) |
||
flightRatings | noOfObservations (Integer) |
Not released yet |
onTimeObservations (Integer) |
Not released yet | |
late30observations (Integer) |
Not released yet | |
flightsCancelled (Integer) |
Not released yet | |
onTimePercentage (Double) |
Not released yet | |
delayObservations (Integer) |
Not released yet | |
meanDelay (Integer) |
Not released yet | |
onTimePercentile (Integer) |
Not released yet | |
onTimeStars (Integer) |
Not released yet | |
delayStars (Double) |
Not released yet | |
overallStars (Double) |
Not released yet | |
financialInfo | financialInfo (Object) |
Financial info related to the particular search result |
tmc | This tag contains supplier owner name. tmc - Travel Management Company. Eg: VE |
|
supplier | This tag contains the supplier name. | |
subSupplierCode | This tag contains the supplier pcc | |
payment | payment (Object) |
|
paymentTypes (List) |
This attribute indicates the ayment types.Ex: Ex: CARD,CR |
|
paymentNetwork (List) |
This attribute indicates the payment network. "CA","VI", "AX" |
|
passengers | passengers (Object List) |
Traveller information should be updated in this tag and it's attributes. |
passengerKey (String) |
passengerKey need to be passed from the front end integrator. | |
ptc (String) |
Passenger type. ADT,CHD,INF |
|
infantRef (String) |
Not released yet In booking create , this attribute is used to associate an infant (not requiring a seat) to an adult. Specify the infant passenger’s Example: INF1 Where INF1 is infant passenger’s booking create, it must be passed if the request includes INF passenger, as the service needs to know which Infant is associated with which Adult However Travlinq API current version, INF associate with Lead Pax. |
|
passengerInfo | passengerInfo (Object) |
Following attributes describes the passenger dob and name details. |
birthDate (String) |
This attribute indicates the passenger birth date | |
gender (String) |
This attribute indicates the passenger Gender | |
nameTitle (String) |
This attribute indicates the passenger Title | |
givenName (String) |
This attribute indicates the passenger Given name | |
middleName (String) |
This attribute indicates the passenger Middle name | |
surname (String) |
This attribute indicates the passenger Surname | |
loyaltyProgramAccount | loyaltyProgramAccount (Object) |
Loyalty program information can be included here Not released yet |
airlineDesignator (String) |
Not released yet |
|
accountNumber (String) |
Not released yet |
|
providerName (String) |
Not released yet |
|
programName (String) |
Not released yet |
|
tierCode (String) |
Not released yet |
|
identityDocuments | identityDocuments (String) |
Any document which may be used to identify a person or verify aspects of a person's personal identity. The possible values are: PT - Passport 709 - National ID card AEA - Passenger's Redress Number CR - Known Traveller Number) *But currently API support only for Passport (PT) |
idDocumentNumber (String) |
This attribute contains the Identity document number Ex ; Passport Number. |
|
idType (String) |
This attribute contains the id type. Currently API stamping passport(PT) detail only, All other document types are on future scope . | |
issuingCountryCode (String) |
This attribute contains the issuing country code. | |
residenceCountryCode (String) |
This attribute contains the origin resident code. | |
expiryDate (String) |
Identity document expiry date. Ex ; Passport expiry date. |
|
applicableCountry (String) |
This attribute indicates the doc applicable Country | |
placeOfBirth (String) |
This attribute indicates place Of birth | |
contact | contact (Object) |
Passenger contact information need to be updated here. |
postalAddress | postalAddress (Object) |
|
label (String) |
||
street (String) |
||
postalCode (String) |
||
cityName (String) |
||
countryCode (String) |
||
contactsProvided | contactsProvided (Object) |
|
emailAddress (String) |
||
phone | phone (Object) |
|
label (String) |
||
areaCode (String) |
||
phoneNumber (String) |
||
airlineRequests | airlineRequests (Object) |
|
ssr | ssr (Object) |
A Special Service Request (SSR) is a message sent directly to suppliers to communicate traveler preferences, special services needed by a traveler, or of a procedural requirement necessary of the carrier |
name (String) |
Ex; Meal ,seat | |
code (String) |
Ex; Meal code is 'AVML' Seat code is 'W' |
|
text (String) |
||
segmentKey (List) |
||
osi | osi (Object) |
Other Service Information (OSI) requests are messages sent directly to the supplier to communicate traveler preferences or requirements. OSIs are used only for air segments. OSIs are typically used to notify a supplier of special circumstances such as a passenger that does not speak the local language. |
name (String) |
Ex: OSI | |
code (String) |
Ex: OSI | |
segmentKey (String) |
UUID will be generated and added as segment key. | |
ancillaries | ancillaries (Object) |
Booked ancillary details will shown here. |
ancillaryCode (String) |
Code of the ancillary | |
ancillaryDescription (String) |
Ancillary description | |
quantity (Number) |
Quantity of the booked ancillaries.This will be applicable only for meals. | |
type (String) |
Status of the booked ancillary | |
segmentKeys (List) |
Fare information of the booked ancillaries. | |
fare | fare* (Object) |
fare information the selected ancillaries will be shown here. |
buyingAmount* (Double) |
Buying amount of the ancillary will be shown in this tag. | |
buyingCurrency* (String) |
Buying currency of the ancillary will be shown in this tag. | |
sellingAmount* (Double) |
Selling currency of the ancillary will be shown in this tag. | |
sellingCurrency (String) |
Selling amount of the ancillary will be shown in this tag. | |
fare | fare * (Object) |
Total fare information for the search result |
fareKey * (String) |
An unique identifier will be added as the fare key. a590892f-48d0-4c0b-b552-2f00d394a69c |
|
currencyCode (String) |
Fare currency code | |
fareType | fareType (Object) |
|
fareCode (String) |
||
farePreference (String) |
Fare preference number added as the fare preference 759,70G |
|
oid (String) |
Office id 06FC |
|
refundable (String) |
refundable fare indication | |
baseFare (Double) |
Total fare for all pax types. 20054.45 |
|
totalTax (Double) |
An unique identifier will be added as the segment key. a590892f-48d0-4c0b-b552-2f00d394a67c |
|
totalFare (Double) |
Total fare for the search | |
supplierAdditionalFareInfo | supplierAdditionalFareInfo (Object) |
Supplier fare attributes. Not released yet |
currency (String) |
Not released yet | |
discount (Double) |
Not released yet | |
publishedFare (Double) |
Not released yet | |
commissionEarned (Double) |
Not released yet | |
plbearned (Double) |
Not released yet | |
offeredFare (Double) |
Not released yet | |
tdsOnCommission (Double) |
Not released yet | |
tdsOnPlb (Double) |
Not released yet | |
tdsOnIncentive (Double) |
Not released yet | |
serviceFee (Double) |
Not released yet | |
customerAdditionalFareInfo | customerAdditionalFareInfo (Object) |
Customer Additional Fare Info at a fare level |
transactionFeeEarned (Double) |
||
commissionEarned (Double) |
||
markupEarned (Double) |
||
plbearned (Double) |
||
incentiveEarned (Double) |
||
discount (Double) |
||
tdsOnIncentive (Double) |
Not released yet | |
vat (Double) |
Not released yet | |
cgst (Double) |
Not released yet | |
sgst (Double) |
Not released yet | |
igst (Double) |
Not released yet | |
fareBreakdown | fareBreakdown (Object) |
|
fareBreakdownKey (String) |
An unique identifier is set as fare break down key. | |
passengerKey | passengerKey (List) |
Associated passenger key |
fareType (String) |
Fare type of the result. Normal/Corporate.Private |
|
fareReference | fareReference (String) |
This attribute indicates the Fare basis code |
fareBasis (String) |
FareBasis for the result | |
segmentKey (String) |
An unique identifier is set as fare key. | |
platingAirlineCode (String) |
||
paxType (String) |
||
paxRate | paxRate (String) |
Pax rates of the specific result. |
baseFare (Double) |
pax wise fares are shown here | |
totalTax (Double) |
pax wise fares are shown here | |
totalFare (Double) |
pax wise fares are shown here | |
taxes | taxes (List) |
Passenger type wise tax records list |
taxCode (String) |
This tag indicates the tax code | |
amount (Double) |
This tag indicates the tax amount | |
supplierAdditionalFareInfo | supplierAdditionalFareInfo (Object) |
Not released yet |
discount (Double) |
Not released yet | |
publishedFare (Double) |
Not released yet | |
commissionEarned (Double) |
Not released yet | |
plbearned (Double) |
Not released yet | |
incentiveEarned (Double) |
Not released yet | |
tdsOnCommission (Double) |
Not released yet | |
tdsOnPlb (Double) |
Not released yet | |
tdsOnIncentive (Double) |
Not released yet | |
serviceFee (Double) |
Not released yet | |
customerAdditionalFareInfo | customerAdditionalFareInfo (Object) |
Customer Additional Fare Info at a fare breakdown level |
transactionFeeEarned (Double) |
||
commissionEarned (Double) |
||
markupEarned (Double) |
||
plbearned (Double) |
||
incentiveEarned (Double) |
||
discount (Double) |
||
tdsOnIncentive (Double) |
Not released yet |
|
vat (Double) |
Not released yet |
|
cgst (Double) |
Not released yet |
|
sgst (Double) |
Not released yet |
|
igst (Double) |
Not released yet |
|
penalties | penalties (List) |
|
type (String) |
||
penaltyInfo | penaltyInfo (Object) |
This attribute contains the penalty related information in the search result. |
applicationCode (String) |
Not released yet | |
startTime (String) |
Not released yet | |
endTime (String) |
Not released yet | |
unit (String) |
Not released yet | |
amounts | amounts (List) |
Not released yet |
currency (String) |
Not released yet | |
amount (Double) |
Not released yet | |
amountApplication (String) |
Not released yet | |
applicableFeeRemarks | applicableFeeRemarks (String) |
Not released yet |
value (String) |
Not released yet | |
cancelFeeInd (Boolean) |
Not released yet | |
refundableInd (Boolean) |
Not released yet | |
changeFeeInd (Boolean) |
Not released yet | |
ticketDocument | ticketDocument (Object) |
Ticket document details |
ticketDocNbr (String) |
Ticket/EMD number. | |
passengerKey (String) |
||
fareBreakdownKey (String) |
||
airline (String) |
||
status (String) |
This attributes will indicate Ticket status. Ex : TICKETED = T, CANCELLED = AQ, ON HOLD = H, OK TO TICKET = P, PNR FAILED = R, RE-ISSUED = RI |
|
dateOfIssue (String) |
||
lastTicketDate (String) |
||
airlineLocators (String) |
Ancillary Book Response | |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 |
|