Changes for page 1. SearchTourPackages
Last modified by Giorgi Mdivnishvili on 2025/10/22 15:30
From version 53.1
edited by Giorgi Mdivnishvili
on 2025/10/22 13:39
on 2025/10/22 13:39
Change comment:
There is no comment for this version
To version 1.1
edited by Giorgi Mdivnishvili
on 2023/12/14 09:52
on 2023/12/14 09:52
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - 1.SearchTourPackages1 +SearchTourPackages - Content
-
... ... @@ -1,1052 +1,32 @@ 1 1 {{box cssClass="floatinginfobox" title="**Contents**"}} 2 - 3 - 4 4 {{toc/}} 5 5 {{/box}} 6 6 7 -= Method Description=5 += Paragraph 1 = 8 8 9 - Tour packagemean,tourwithhotelandflighttogetherIncaseofvariation alsowithtransferoption.Usingthismethodgivesdataaboutfull package availabilitywithflight andhoteloptions.7 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 10 10 11 - It'spossible to receive data as current dates, also in date ranges usingparameter "nights": 0, "nightsTo ": 0. the maximum difference between the days can be 7. Below you can see examples.9 +== Sub-paragraph == 12 12 11 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 13 13 14 - inmore details:13 +== Sub-paragraph == 15 15 16 - A tourpackageencapsulatesa bundledofferingthatincludesbothhotelaccommodationsandflight arrangements.In certainvariations,it mayalsoincorporatetransferoptions,providingacomprehensivetravelsolution.Themethoddetailedhereinfacilitatestheretrieval ofdataconcerningthecompleteavailabilityof suchtourpackages, includingpertinentflight andhoteloptions.15 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 17 17 18 - **DataRetrievalParameters:**17 +=== Sub-sub paragraph === 19 19 20 -* **Parameter Usage**: To query package data, the system utilizes the following parameters within the request payload: 21 -** nights: Defines the minimum duration of stay (in days) as part of the tour package. The value is set to 0 by default, indicating no minimum duration constraint. 22 -** nightsTo: Specifies the maximum duration of stay (in nights) allowable within the package offerings. A default value of 0 implies no maximum limit; however, the system enforces a maximum duration difference of 7 days between nights and nightsTo.((( 23 -=== === 24 -))) 19 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 25 25 26 -**Date Parameters** 27 27 28 -* **checkInDate** — the date when the guest checks into the hotel. 29 -* **checkOutDate** — the date of departure from the hotel (the last day of stay). 30 -* ((( 31 -If only these two parameters are specified during the search, the system will automatically select flight options that correspond to the hotel stay dates. 22 += Paragraph 2 = 32 32 33 -In cases where a user wants a longer trip — for example, a **10-day tour** with only **5 days at the hotel** — they can specify flight dates (**departureDate** and **returnDate**) separately from hotel stay dates (**checkInDate** and **checkOutDate**). 34 -))) 24 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 35 35 26 +== Sub-paragraph == 36 36 37 - **Constraints:**28 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 38 38 39 - *The system imposesaconstraint wherein the difference between nights and nightsTo cannot exceed 7 days. This limit is designed torefine searchresults and maintain query performance.30 +== Sub-paragraph == 40 40 41 -**Example Requests:** Below are examples illustrating how to structure requests for retrieving tour package data, utilizing the nights and nightsTo parameters to define the desired range of stay durations. 42 - 43 -(Note: Actual example requests are not included in this response but should typically be provided here, showcasing the structure and format of API calls or query parameters used to fetch the tour package data.) 44 - 45 -This documentation aims to guide developers in effectively querying for tour package options, employing specified parameters to tailor the search according to the duration of stay requirements. 46 - 47 - 48 -== Endpoint URL - [POST] == 49 - 50 -{{info}} 51 -[[https:~~/~~/integration.kazunion.com/api/TourPackages/SearchTourPackages>>https://integration.kazunion.com/api/TourPackages/SearchTourPackages]] 52 -{{/info}} 53 - 54 -== Request Parameters == 55 - 56 -(% class="box infomessage" %) 57 -((( 58 -None 59 -))) 60 - 61 - 62 -== Request Body == 63 - 64 -{{code language="Json"}} 65 -{ 66 - "departureCountryCode": "string", 67 - "departureCityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 68 - "arrivalCountryCode": "string", 69 - "arrivalLocations": [ 70 - { 71 - "type": "string", 72 - "parent": "string", 73 - "label": "string", 74 - "subLabel": "string", 75 - "value": "string", 76 - "tag": "string" 77 - } 78 - ], 79 - "checkInDate": "2023-12-14", 80 - "checkInDateTo": "2023-12-14", 81 - "checkOutDate": "2023-12-14", 82 - "nights": 0, 83 - "NightsTo": 0, 84 - "departureDate": "2023-12-14", 85 - "returnDate": "2023-12-14", 86 - "airlineCode": "string", 87 - "ticketType": "string", 88 - "directFlightsOnly": true, 89 - "longConnectTime": true, 90 - "adults": 0, 91 - "children": 0, 92 - "childrenAges": [ 93 - 0 94 - ], 95 - "extendedSearch": true, 96 - "totalPriceFrom": 0, 97 - "totalPriceTo": 0, 98 - "recommended": true, 99 - "popular": true, 100 - "freeSale": true, 101 - "groupByHotel": true, 102 - "hotelCodes": [ 103 - "string" 104 - ], 105 - "mealPlans": [ 106 - "string" 107 - ], 108 - "hotelClasses": [ 109 - "string" 110 - ], 111 - "hotelTypes": [ 112 - "CityHotel" 113 - ], 114 - "hotelServices": [ 115 - "HasAlcohol" 116 - ], 117 - "pagingId": "string", 118 - "pageNumber": 0, 119 - "pageRowCount": 0 120 -} 121 -{{/code}} 122 - 123 - 124 -== Request example == 125 - 126 -{{code language="Json"}} 127 -{ 128 - "departureCountryCode": "KZ", 129 - "departureCityUID": "f0ba6324-f337-405c-8cc7-23d62cf664e8", 130 - "arrivalCountryCode": "AE", 131 - "arrivalLocations": [ 132 - { 133 - "type": "city", 134 - "label": "Dubai", 135 - "value": "f5185fa3-3f56-44ed-bf6b-80386a33caa2", 136 - "tag": "Dubai" 137 - } 138 - ], 139 - "checkInDate": "2024-02-05T20:00:00.000Z", 140 - "checkInDateTo": "2024-02-10T20:00:00.000Z", 141 - 142 - "nights": 3, 143 - "nightsTo": 6, 144 - 145 - "airlineCode": "", 146 - "ticketType": "", 147 - "directFlightsOnly": true, 148 - "longConnectTime": true, 149 - "adults": 1, 150 - "children": 1, 151 - "childrenAges": [ 152 - 2 153 - ], 154 - "extendedSearch": false, 155 - "totalPriceFrom": 100, 156 - "totalPriceTo": 15000, 157 - "recommended": true, 158 - "popular": true, 159 - "freeSale": true, 160 - "groupByHotel": true, 161 - "hotelCodes": [ 162 - 163 - ], 164 - "mealPlans": [ 165 - 166 - ], 167 - "hotelClasses": [ 168 - 169 - ], 170 - "hotelTypes": [ 171 - 172 - ], 173 - "hotelServices": [ 174 - 175 - ], 176 - "pagingId": "", 177 - "pageNumber": 10, 178 - "pageRowCount": 10 179 -} 180 -{{/code}} 181 - 182 - 183 -== Response Body == 184 - 185 -{{code language="json"}} 186 -{ 187 - "error": true, 188 - "errorCode": "string", 189 - "errorDescription": "string", 190 - "userErrorDescription": "string", 191 - "packages": [ 192 - { 193 - "id": "string", 194 - "priceCurrency": "string", 195 - "totalPrice": 0, 196 - "agentCommissionPercent": 0, 197 - "agentCommissionAmount": 0, 198 - "includedExtrasAmount": 0, 199 - "priceDifference": 0, 200 - "hotel": { 201 - "hotelPriceId": "string", 202 - "providerId": 0, 203 - "hotelName": "string", 204 - "hotelCode": "string", 205 - "nigths": 0, 206 - "mealPlan": "string", 207 - "hotelClass": "string", 208 - "availabilityType": "OnRequest", 209 - "availableRoomsCount": 0, 210 - "fewRooms": true, 211 - "roomCategoryCode": "string", 212 - "roomCategoryName": "string", 213 - "placementTypeName": "string", 214 - "placementDescription": "string", 215 - "checkInDate": "2023-12-14T13:47:13.396Z", 216 - "checkOutDate": "2023-12-14T13:47:13.396Z", 217 - "adults": 0, 218 - "children": 0, 219 - "districtUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 220 - "districtName": "string", 221 - "cityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 222 - "cityName": "string", 223 - "countryCode": "string", 224 - "countryName": "string", 225 - "hasAlcohol": true, 226 - "hasFreeWifi": true, 227 - "hasMetro": true, 228 - "hasPool": true, 229 - "hasMall": true, 230 - "cancellationPolicyDescription": "string", 231 - "cancellationPolicy": { 232 - "cancellationPolicyCode": "string", 233 - "noShowChargeValue": 0, 234 - "noShowChargeValueType": "string", 235 - "earlyDepartureChargeValue": 0, 236 - "earlyDepartureChargeValueType": "string", 237 - "conditions": [ 238 - { 239 - "timeunits": 0, 240 - "timeunitType": "string", 241 - "timeOffsetTypeName": "string", 242 - "chargeValue": 0, 243 - "chargeValueType": "string" 244 - } 245 - ] 246 - } 247 - }, 248 - "flight": { 249 - "id": "string", 250 - "departureDate": "2023-12-14T13:47:13.396Z", 251 - "returnDate": "2023-12-14T13:47:13.396Z", 252 - "departureTicketsLeft": 0, 253 - "returnTicketsLeft": 0, 254 - "departureAvailabilityType": "OnRequest", 255 - "returnAvailabilityType": "OnRequest", 256 - "isTwoWay": true, 257 - "departureSegments": [ 258 - { 259 - "airlineCode": "string", 260 - "airlineName": "string", 261 - "flightCode": "string", 262 - "class": "string", 263 - "lugageWeight": 0, 264 - "handLugageWeight": 0, 265 - "departureFlightDate": "2023-12-14T13:47:13.396Z", 266 - "departureCountryName": "string", 267 - "departureCityName": "string", 268 - "departureAirportCode": "string", 269 - "departureAirportName": "string", 270 - "departureTerminalCode": "string", 271 - "arrivalFlightDate": "2023-12-14T13:47:13.396Z", 272 - "arrivalCountryName": "string", 273 - "arrivalCityName": "string", 274 - "arrivalAirportCode": "string", 275 - "arrivalAirportName": "string", 276 - "arrivalTerminalCode": "string", 277 - "flightDuration": "string", 278 - "baggages": [ 279 - { 280 - "baggageCode": "string", 281 - "description": "string", 282 - "price": 0, 283 - "currency": "string", 284 - "included": true 285 - } 286 - ] 287 - } 288 - ], 289 - "returnSegments": [ 290 - { 291 - "airlineCode": "string", 292 - "airlineName": "string", 293 - "flightCode": "string", 294 - "class": "string", 295 - "lugageWeight": 0, 296 - "handLugageWeight": 0, 297 - "departureFlightDate": "2023-12-14T13:47:13.396Z", 298 - "departureCountryName": "string", 299 - "departureCityName": "string", 300 - "departureAirportCode": "string", 301 - "departureAirportName": "string", 302 - "departureTerminalCode": "string", 303 - "arrivalFlightDate": "2023-12-14T13:47:13.396Z", 304 - "arrivalCountryName": "string", 305 - "arrivalCityName": "string", 306 - "arrivalAirportCode": "string", 307 - "arrivalAirportName": "string", 308 - "arrivalTerminalCode": "string", 309 - "flightDuration": "string", 310 - "baggages": [ 311 - { 312 - "baggageCode": "string", 313 - "description": "string", 314 - "price": 0, 315 - "currency": "string", 316 - "included": true 317 - } 318 - ] 319 - } 320 - ] 321 - }, 322 - "extraServices": [ 323 - { 324 - "extraServiceCode": "string", 325 - "extraServiceTypeCode": "string", 326 - "isMandatory": 0, 327 - "extraServiceName": "string", 328 - "minimalServiceAmount": 0, 329 - "includedPriceCode": "string", 330 - "prices": [ 331 - { 332 - "extraServicePriceCode": "string", 333 - "displayName": "string", 334 - "restrictionInfo": "string", 335 - "additionalInfo": "string", 336 - "price": 0, 337 - "extraPrice": 0, 338 - "currency": "string" 339 - } 340 - ] 341 - } 342 - ], 343 - "insurancePrice": { 344 - "name": "string", 345 - "price": 0, 346 - "priceSurcarge": 0, 347 - "actualStartDate": "2023-12-14T13:47:13.396Z", 348 - "actualEndDate": "2023-12-14T13:47:13.396Z", 349 - "optional": true, 350 - "includedInPackagePrice": true 351 - } 352 - } 353 - ], 354 - "pagingId": "string", 355 - "pageNumber": 0, 356 - "pageCount": 0 357 -} 358 -{{/code}} 359 - 360 - 361 -== Response example == 362 - 363 -{{code language="Json"}} 364 -{ 365 - "packages": [ 366 - { 367 - "id": "tour:b01c168e-2ea7-4ea6-b6e0-55abb8cab0a0:da894a1e-88c0-4877-b216-0eeeabe186f3:4298d06f-4344-4a39-ad98-071b7760cf30", 368 - "priceCurrency": "USD", 369 - "totalPrice": 1033.53, 370 - "agentCommissionPercent": 0.0, 371 - "agentCommissionAmount": 0.0, 372 - "includedExtrasAmount": 0, 373 - "priceDifference": 0, 374 - "hotel": { 375 - "hotelPriceId": "da894a1e-88c0-4877-b216-0eeeabe186f3", 376 - "providerId": 13, 377 - "hotelName": "Mercure Dubai Barsha Heights Suites Apartments", 378 - "hotelCode": "5f125310-7025-4807-a4c6-49cd284c9c14", 379 - "nigths": 3, 380 - "mealPlan": "BB", 381 - "hotelClass": "4", 382 - "availabilityType": "FreeSale", 383 - "availableRoomsCount": 0, 384 - "fewRooms": true, 385 - "roomCategoryCode": "bc5f2224-bd4c-49b2-ab57-01eb7fa80d41", 386 - "roomCategoryName": "1 B/R Suite City View", 387 - "placementTypeName": "DBL", 388 - "checkInDate": "2024-02-09T20:00:00.000Z", 389 - "checkOutDate": "2024-02-12T20:00:00.000Z", 390 - "adults": 1, 391 - "children": 1, 392 - "districtUID": "4c65f6ed-902b-4fd8-9419-af7884c22c5e", 393 - "districtName": "Al Barsha", 394 - "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2", 395 - "cityName": "Dubai", 396 - "countryCode": "AE", 397 - "countryName": "United Arab Emirates", 398 - "hasAlcohol": false, 399 - "hasFreeWifi": true, 400 - "hasMetro": true, 401 - "hasPool": true, 402 - "hasMall": false, 403 - "cancellationPolicyDescription": "Cancellation Policy: 5 Day Before Arrival: 100.00 %, Early Departure: 100.00 %, NoShow: 100.00 %", 404 - "cancellationPolicy": { 405 - "noShowChargeValue": 100.0, 406 - "noShowChargeValueType": "%", 407 - "earlyDepartureChargeValue": 100.0, 408 - "earlyDepartureChargeValueType": "%", 409 - "conditions": [ 410 - { 411 - "timeunits": 5, 412 - "timeunitType": "Day", 413 - "timeOffsetTypeName": "Before Arrival", 414 - "chargeValue": 100.0, 415 - "chargeValueType": "%" 416 - } 417 - ] 418 - } 419 - }, 420 - "flight": { 421 - "id": "4298d06f-4344-4a39-ad98-071b7760cf30", 422 - "departureDate": "2024-02-09T20:00:00.000Z", 423 - "returnDate": "2024-02-12T20:00:00.000Z", 424 - "departureTicketsLeft": 7, 425 - "returnTicketsLeft": 7, 426 - "departureAvailabilityType": "FewPlaces", 427 - "returnAvailabilityType": "FewPlaces", 428 - "isTwoWay": true, 429 - "sameBaggageForAll": false, 430 - "totalBaggage": false, 431 - "departureSegments": [ 432 - { 433 - "airlineCode": "KC", 434 - "airlineName": "Air Astana-", 435 - "flightCode": "KC897", 436 - "class": "econom", 437 - "lugageWeight": 20, 438 - "handLugageWeight": 6, 439 - "departureFlightDate": "2024-02-09T20:00:00.000Z", 440 - "departureCountryName": "Kazakhstan", 441 - "departureCityName": "Almaty", 442 - "departureAirportCode": "ALA", 443 - "departureAirportName": "Almaty Intl Airport", 444 - "departureTerminalCode": "ALA", 445 - "arrivalFlightDate": "2024-02-09T20:00:00.000Z", 446 - "arrivalCountryName": "United Arab Emirates", 447 - "arrivalCityName": "Dubai", 448 - "arrivalAirportCode": "DXB", 449 - "arrivalAirportName": "Dubai Intl Airport", 450 - "arrivalTerminalCode": "DXB1", 451 - "flightDuration": "0h 50m" 452 - } 453 - ], 454 - "returnSegments": [ 455 - { 456 - "airlineCode": "KC", 457 - "airlineName": "Air Astana-", 458 - "flightCode": "KC900", 459 - "class": "econom", 460 - "lugageWeight": 20, 461 - "handLugageWeight": 6, 462 - "departureFlightDate": "2024-02-12T20:00:00.000Z", 463 - "departureCountryName": "United Arab Emirates", 464 - "departureCityName": "Dubai", 465 - "departureAirportCode": "DXB", 466 - "departureAirportName": "Dubai Intl Airport", 467 - "departureTerminalCode": "DXB1", 468 - "arrivalFlightDate": "2024-02-12T20:00:00.000Z", 469 - "arrivalCountryName": "Kazakhstan", 470 - "arrivalCityName": "Almaty", 471 - "arrivalAirportCode": "ALA", 472 - "arrivalAirportName": "Almaty Intl Airport", 473 - "arrivalTerminalCode": "ALA", 474 - "flightDuration": "8h 15m" 475 - } 476 - ], 477 - "passengers": [ 478 - { 479 - "id": "42768722011000004-A1", 480 - "isAdult": true, 481 - "forwardBaggages": [], 482 - "backwardBaggages": [] 483 - }, 484 - { 485 - "id": "42768722011000004-C1", 486 - "isAdult": false, 487 - "forwardBaggages": [], 488 - "backwardBaggages": [] 489 - } 490 - ] 491 - }, 492 - "extraServices": [], 493 - "insurancePrice": { 494 - "name": "Medical INS (N10000)", 495 - "price": 17.92, 496 - "priceSurcarge": 0.0, 497 - "actualStartDate": "2024-02-09T20:00:00.000Z", 498 - "actualEndDate": "2024-02-12T20:00:00.000Z", 499 - "optional": false, 500 - "includedInPackagePrice": true 501 - } 502 - } 503 - ], 504 - "pagingId": "79", 505 - "pageNumber": 10, 506 - "pageCount": 2452, 507 - "totalCount": 2452, 508 - "error": false 509 -} 510 -{{/code}} 511 - 512 - 513 -=== Schema === 514 - 515 -{{success}} 516 -SearchTourPackagesResponse{ 517 - 518 -|error|boolean 519 -|errorCode|string 520 -nullable: true 521 -|errorDescription|string 522 -nullable: true 523 -|userErrorDescription|string 524 -nullable: true 525 -|packages|[ 526 -nullable: trueTourPackage{((( 527 -|id|string 528 -nullable: true 529 -|priceCurrency|string 530 -nullable: true 531 -|totalPrice|number($double) 532 -|agentCommissionPercent|number($double) 533 -|agentCommissionAmount|number($double) 534 -|includedExtrasAmount|number($double) 535 -|priceDifference|number($double) 536 -|hotel|PackageHotel{((( 537 -|hotelPriceId|string 538 -nullable: true 539 -|providerId|integer($int32) 540 -|hotelName|string 541 -nullable: true 542 -|hotelCode|string 543 -nullable: true 544 -|nigths|integer($int32) 545 -|mealPlan|string 546 -nullable: true 547 -|hotelClass|string 548 -nullable: true 549 -|availabilityType|RoomAvailabilityTypeEnumstringEnum: 550 -[ OnRequest, FreeSale, StopSale ] 551 -|availableRoomsCount|integer($int32) 552 -|fewRooms|boolean 553 -|roomCategoryCode|string 554 -nullable: true 555 -|roomCategoryName|string 556 -nullable: true 557 -|placementTypeName|string 558 -nullable: true 559 -|placementDescription|string 560 -nullable: true 561 -|checkInDate|string($date-time) 562 -|checkOutDate|string($date-time) 563 -|adults|integer($int32) 564 -|children|integer($int32) 565 -|districtUID|string($uuid) 566 -nullable: true 567 -|districtName|string 568 -nullable: true 569 -|cityUID|string($uuid) 570 -nullable: true 571 -|cityName|string 572 -nullable: true 573 -|countryCode|string 574 -nullable: true 575 -|countryName|string 576 -nullable: true 577 -|hasAlcohol|boolean 578 -|hasFreeWifi|boolean 579 -|hasMetro|boolean 580 -|hasPool|boolean 581 -|hasMall|boolean 582 -|cancellationPolicyDescription|string 583 -nullable: true 584 -|cancellationPolicy|CancellationPolicyExchange{((( 585 -|cancellationPolicyCode|string 586 -nullable: true 587 -|noShowChargeValue|number($double) 588 -nullable: true 589 -|noShowChargeValueType|string 590 -nullable: true 591 -|earlyDepartureChargeValue|number($double) 592 -nullable: true 593 -|earlyDepartureChargeValueType|string 594 -nullable: true 595 -|conditions|[ 596 -nullable: trueCancellationPolicyConditionExchange{((( 597 -|timeunits|integer($int32) 598 -|timeunitType|string 599 -nullable: true 600 -|timeOffsetTypeName|string 601 -nullable: true 602 -|chargeValue|number($double) 603 -nullable: true 604 -|chargeValueType|string 605 -nullable: true 606 - 607 -}] 608 -))) 609 - 610 -} 611 -))) 612 - 613 -} 614 -))) 615 -|flight|PackageFlight{((( 616 -|id|string 617 -nullable: true 618 -|departureDate|string($date-time) 619 -|returnDate|string($date-time) 620 -nullable: true 621 -|departureTicketsLeft|integer($int32) 622 -|returnTicketsLeft|integer($int32) 623 -|departureAvailabilityType|FlightAvailabilityTypestringEnum: 624 -[ OnRequest, FreeSale, FewPlaces, StopSale ] 625 -|returnAvailabilityType|FlightAvailabilityTypestringEnum: 626 -[ OnRequest, FreeSale, FewPlaces, StopSale ] 627 -|isTwoWay|boolean 628 -|departureSegments|[ 629 -nullable: trueFlightSegment{((( 630 -|airlineCode|string 631 -nullable: true 632 -|airlineName|string 633 -nullable: true 634 -|flightCode|string 635 -nullable: true 636 -|class|string 637 -nullable: true 638 -|lugageWeight|number($double) 639 -|handLugageWeight|number($double) 640 -|departureFlightDate|string($date-time) 641 -|departureCountryName|string 642 -nullable: true 643 -|departureCityName|string 644 -nullable: true 645 -|departureAirportCode|string 646 -nullable: true 647 -|departureAirportName|string 648 -nullable: true 649 -|departureTerminalCode|string 650 -nullable: true 651 -|arrivalFlightDate|string($date-time) 652 -|arrivalCountryName|string 653 -nullable: true 654 -|arrivalCityName|string 655 -nullable: true 656 -|arrivalAirportCode|string 657 -nullable: true 658 -|arrivalAirportName|string 659 -nullable: true 660 -|arrivalTerminalCode|string 661 -nullable: true 662 -|flightDuration|string 663 -nullable: true 664 -|baggages|[ 665 -nullable: trueBaggage{((( 666 -|baggageCode|string 667 -nullable: true 668 -|description|string 669 -nullable: true 670 -|price|number($double) 671 -|currency|string 672 -nullable: true 673 -|included|boolean 674 - 675 -}] 676 -))) 677 - 678 -}] 679 -))) 680 -|returnSegments|[ 681 -nullable: trueFlightSegment{((( 682 -|airlineCode|string 683 -nullable: true 684 -|airlineName|string 685 -nullable: true 686 -|flightCode|string 687 -nullable: true 688 -|class|string 689 -nullable: true 690 -|lugageWeight|number($double) 691 -|handLugageWeight|number($double) 692 -|departureFlightDate|string($date-time) 693 -|departureCountryName|string 694 -nullable: true 695 -|departureCityName|string 696 -nullable: true 697 -|departureAirportCode|string 698 -nullable: true 699 -|departureAirportName|string 700 -nullable: true 701 -|departureTerminalCode|string 702 -nullable: true 703 -|arrivalFlightDate|string($date-time) 704 -|arrivalCountryName|string 705 -nullable: true 706 -|arrivalCityName|string 707 -nullable: true 708 -|arrivalAirportCode|string 709 -nullable: true 710 -|arrivalAirportName|string 711 -nullable: true 712 -|arrivalTerminalCode|string 713 -nullable: true 714 -|flightDuration|string 715 -nullable: true 716 -|baggages|[ 717 -nullable: trueBaggage{((( 718 -|baggageCode|string 719 -nullable: true 720 -|description|string 721 -nullable: true 722 -|price|number($double) 723 -|currency|string 724 -nullable: true 725 -|included|boolean 726 - 727 -}] 728 -))) 729 - 730 -}] 731 -))) 732 - 733 -} 734 -))) 735 -|extraServices|[ 736 -nullable: trueHotelExtraServiceBase{((( 737 -|extraServiceCode|string 738 -nullable: true 739 -|extraServiceTypeCode|string 740 -nullable: true 741 -|isMandatory|integer($int32) 742 -|extraServiceName|string 743 -nullable: true 744 -|minimalServiceAmount|number($double) 745 -|includedPriceCode|string 746 -nullable: true 747 -|prices|[ 748 -nullable: trueHotelExtraServicePriceBase{((( 749 -|extraServicePriceCode|string 750 -nullable: true 751 -|displayName|string 752 -nullable: true 753 -|restrictionInfo|string 754 -nullable: true 755 -|additionalInfo|string 756 -nullable: true 757 -|price|number($double) 758 -|extraPrice|number($double) 759 -|currency|string 760 -nullable: true 761 - 762 -}] 763 -))) 764 - 765 -}] 766 -))) 767 -|insurancePrice|InsurancePrice{((( 768 -|name|string 769 -nullable: true 770 -|price|number($double) 771 -|priceSurcarge|number($double) 772 -|actualStartDate|string($date-time) 773 -|actualEndDate|string($date-time) 774 -|optional|boolean 775 -|includedInPackagePrice|boolean 776 - 777 -} 778 -))) 779 - 780 -}] 781 -))) 782 -|pagingId|string 783 -nullable: true 784 -|pageNumber|integer($int64) 785 -|pageCount|integer($int64) 786 - 787 -} 788 -{{/success}} 789 - 790 - 791 -== Definitions == 792 - 793 -**Request Parameters ** 794 - 795 -(% class="table-bordered" %) 796 -|=Field|=Type|=Description 797 -|departureCountryCode|string|The ISO 3166-1 alpha-2 country code for the departure country. For example, "KZ" for Kazakhstan. 798 -|departureCityUID|string|The unique identifier for the departure city. 799 -|arrivalCountryCode|string|The ISO 3166-1 alpha-2 country code for the arrival country. For example, "AE" for United Arab Emirates. 800 -|arrivalLocations|array|An array of objects, each representing an arrival location. Each object contains: type (string) - The type of the location. This can be "city". label (string) - The name of the location. value (string) - The unique identifier for the location. tag (string) - A tag for the location. 801 -|checkInDate|string|The check-in date in ISO 8601 format. 802 -|checkInDateTo|string|The latest possible check-in date in ISO 8601 format. 803 -|nights|integer|The minimum number of days to stay. 804 -|nightsTo|integer|The maximum number of days to stay. 805 -|airlineCode|string|The code of the airline. This field can be empty. 806 -|ticketType|string|The type of the ticket. This field can be empty. definition of avia tickets classes. enum: F - First, B - Business, P = Premium, C - Coach 807 -|directFlightsOnly|boolean|Indicates whether to search for direct flights only. 808 -|longConnectTime|boolean|Indicates whether to include flights with long connection times. 809 -|adults|integer|The number of adults. 810 -|children|integer|The number of children. 811 -|childrenAges|array|An array of integers, each representing the age of a child. 812 -|extendedSearch|boolean|Indicates whether to perform an extended search. 813 -|totalPriceFrom|float|The minimum total price. 814 -|totalPriceTo|float|The maximum total price. 815 -|recommended|boolean|Indicates whether to include recommended packages. 816 -|popular|boolean|Indicates whether to include popular packages. 817 -|freeSale|boolean|Indicates whether to include free sale packages. 818 -|groupByHotel|boolean|Indicates whether to group the results by hotel. 819 -|hotelCodes|array|An array of strings, each representing a hotel code. This field can be empty. 820 -|mealPlans|array|An array of meal plans. This field can be empty. 821 -|hotelClasses|array|An array of hotel classes. This field can be empty. 822 -|hotelTypes|array|An array of hotel types. This field can be empty. 823 -|hotelServices|array|An array of hotel services. This field can be empty. 824 -|pagingId|string|The paging ID for paginated results. This field can be empty. 825 -|pageNumber|integer|The page number for paginated results. 826 -|pageRowCount|integer|The number of rows per page for paginated results. 827 - 828 -(% class="wikigeneratedid" %) 829 -**Response Parameters** 830 - 831 -(% class="table-bordered" %) 832 -|=Field|=Type|=Description 833 -|packages|array|An array of packages available. Each package contains: 834 -|id|string|A unique identifier for the package. 835 -|priceCurrency|string|The currency in which the price is displayed. examples - • KZT - ₸ • USD - $ • RUB - ₽ • EUR - € • UZS - ЛВ • AZN - ₼ 836 -|totalPrice|float|The total price of the package. 837 -|agentCommissionPercent|float|The commission percentage for the agent. 838 -|agentCommissionAmount|float|The commission amount for the agent. 839 -|includedExtrasAmount|integer|The amount of extras included in the package. 840 -|priceDifference|integer|The difference in price from the original price. 841 -|hotel|object|An object containing details about the hotel. 842 -|hotelPriceId|string|A unique identifier for the hotel price. 843 -|providerId|integer|A unique identifier for the provider. 844 -|hotelName|string|The name of the hotel. 845 -|hotelCode|string|A unique code for the hotel. 846 -|nigths|integer|The number of nights for the stay. 847 -|mealPlan|string|The meal plan for the stay. 848 -|hotelClass|string|The class or rating of the hotel. 849 -|availabilityType|string|The availability type of the hotel. 850 -|availableRoomsCount|integer|The number of available rooms in the hotel. 851 -|fewRooms|boolean|Indicates whether there are few rooms left. 852 -|roomCategoryCode|string|A unique code for the room category. 853 -|roomCategoryName|string|The name of the room category. 854 -|placementTypeName|string|The name of the placement type. 855 -|checkInDate|string|The check-in date in ISO 8601 format. 856 -|checkOutDate|string|The check-out date in ISO 8601 format. 857 -|adults|integer|The number of adults for the stay. 858 -|children|integer|The number of children for the stay. 859 -|districtUID|string|A unique identifier for the district. 860 -|districtName|string|The name of the district. 861 -|cityUID|string|A unique identifier for the city. 862 -|cityName|string|The name of the city. 863 -|countryCode|string|The ISO 3166-1 alpha-2 country code. 864 -|countryName|string|The name of the country. 865 -|hasAlcohol|boolean|Indicates whether the hotel serves alcohol. 866 -|hasFreeWifi|boolean|Indicates whether the hotel offers free Wi-Fi. 867 -|hasMetro|boolean|Indicates whether the hotel is near a metro station. 868 -|hasPool|boolean|Indicates whether the hotel has a pool. 869 -|hasMall|boolean|Indicates whether the hotel is near a shopping mall. 870 -|cancellationPolicyDescription|string|The description of the cancellation policy. 871 -|cancellationPolicy|object|An object containing details about the cancellation policy. 872 -|flight|object|An object containing details about the flight. 873 -|id|string|A unique identifier for the flight. 874 -|departureDate|string|The departure date in ISO 8601 format. 875 -|returnDate|string|The return date in ISO 8601 format. 876 -|departureTicketsLeft|integer|The number of departure tickets left. 877 -|returnTicketsLeft|integer|The number of return tickets left. 878 -|departureAvailabilityType|string|The availability type of the departure flight. 879 -|returnAvailabilityType|string|The availability type of the return flight. 880 -|isTwoWay|boolean|Indicates whether the flight is two-way. 881 -|sameBaggageForAll|boolean|Indicates whether the same baggage is applicable for all passengers. 882 -|totalBaggage|boolean|Indicates whether total baggage is included. 883 -|departureSegments|array|An array of objects, each representing a departure segment. 884 -|returnSegments|array|An array of objects, each representing a return segment. 885 -|passengers|array|An array of objects, each representing a passenger. 886 -|extraServices|array|An array of extra services included in the package. 887 -|insurancePrice|object|An object containing details about the insurance price. 888 -|pagingId|string|The paging ID for paginated results. 889 -|pageNumber|integer|The page number for paginated results. 890 -|pageCount|integer|The total number of pages. 891 -|totalCount|integer|The total count of packages. 892 -|error|boolean|Indicates whether there was an error. 893 - 894 -=== Paging and Caching === 895 - 896 -During the first request, Paging id must be empty like this ( "pagingId": "",) pagenumber is the number of the page, pagerowcount means number of the given result in one page. So in the first request we can search like this: 897 - 898 - 899 -==== First request ==== 900 - 901 -{{code language="Json"}} 902 - { 903 - "pagingId": "", 904 - "pageNumber": 1, 905 - "pageRowCount":10 906 - } 907 -{{/code}} 908 - 909 -While making first search request, paging id should be empty, "pageNumber": and "pageRowCount":10 means that, in response there will be returned maximum 10 packages per page. 910 - 911 - 912 -==== Request with caching ==== 913 - 914 -after receiving response from first search request, in the end we can see pagingId- number, wchich we can use for caching, and (pageinatoin) for switch pagenumbers, and displaying results as we whant. For cleaning cache, it's important to make new request without cllear pagingID, like this "pagingId": "", 915 - 916 -{{code language="Json"}} 917 - { 918 - "pagingId": "80", 919 - "pageNumber": 1, 920 - "pageRowCount":10 921 - } 922 -{{/code}} 923 - 924 - 925 -**Overview:** The Paging and Caching mechanism is designed to efficiently manage data retrieval in a paginated format. This mechanism is essential for handling large datasets by dividing the data into manageable pages, thereby optimizing the performance and scalability of data retrieval operations. 926 - 927 -**Initial Request:** 928 - 929 -* **Purpose**: The first request initiates the paging process and is designed to fetch the initial set of data without utilizing a pagingId. 930 -* **Parameters**: 931 -** pagingId: Should be set to an empty string ("") to indicate that this is the initial request. 932 -** pageNumber: Indicates the specific page of data to retrieve, starting with 1. 933 -** pageRowCount: Specifies the number of results to be included on each page. 934 - 935 -**Example - First Request**: 936 - 937 -{{{{ 938 - "pagingId": "", 939 - "pageNumber": 1, 940 - "pageRowCount": 10 941 -} 942 -}}} 943 - 944 - 945 -**Subsequent Requests with Caching:** 946 - 947 -* **Purpose**: Following the initial data retrieval, subsequent requests utilize the pagingId obtained from the previous response. This pagingId serves as a cache identifier, enabling the system to quickly access the relevant dataset and efficiently paginate through the data. 948 -* **Cache Utilization**: 949 -** Upon receiving a response, a pagingId value is provided. This pagingId should be used in subsequent requests to reference the cached data. 950 -** To navigate through the dataset, adjust the pageNumber while keeping the pagingId constant. 951 -** To refresh the dataset and clear the cache, initiate a new request without a pagingId. 952 - 953 -**Example - Request with Caching**: 954 - 955 -{{{ { 956 - "pagingId": "80", 957 - "pageNumber": 2, // Adjusted to fetch the next page 958 - "pageRowCount": 10 959 - } 960 -}}} 961 - 962 - 963 -**Cache Management:** 964 - 965 -* Clearing the cache and fetching a fresh set of data requires sending a new request with the pagingId parameter omitted or set to an empty string. This action resets the pagination and caching context. 966 - 967 -**Implementation Notes**: 968 - 969 -* The paging and caching mechanism significantly enhances data retrieval efficiency by minimizing server load and optimizing response times. 970 -* Developers should ensure that the pagingId is correctly managed between requests to maintain session continuity and data consistency. 971 - 972 -This documentation outlines the procedural framework for implementing a robust paging and caching strategy within data retrieval systems, detailing parameter usage and operational best practices for both initial and subsequent data fetch operations. 973 - 974 - 975 - 976 -=== Search parameter options === 977 - 978 -in the request body it's available to filter search results with parameters. parameter examples: 979 - 980 -{{code language="Json"}} 981 - { "totalPriceFrom": 500, 982 - "totalPriceTo": 10000, 983 - "hotelTypes": [ 984 - "CityHotel", 985 - "BeachHotel", 986 - "SecondLineBeach" 987 - ], 988 - "hotelClasses": [ 989 - "1", 990 - "2", 991 - "3", 992 - "4", 993 - "5", 994 - "6" 995 - ], 996 - "hotelServices": [ 997 - "HasAlcohol", 998 - "HasFreeWifi", 999 - "HasMetro", 1000 - "HasPool", 1001 - "HasMall" 1002 - ], 1003 - "mealPlans": [ 1004 - "RO", 1005 - "BB", 1006 - "HB", 1007 - "FB", 1008 - "AL" 1009 - ] 1010 -} 1011 -{{/code}} 1012 - 1013 - 1014 -1. **RO (Room Only)**: This plan includes only the accommodation with no meals provided. Guests will need to arrange their own meals either outside the hotel or by purchasing them separately within the hotel. 1015 -1. **BB (Bed and Breakfast)**: This plan includes accommodation along with breakfast served at the hotel. No other meals are included, which means guests need to arrange their own lunch and dinner. 1016 -1. **HB (Half Board)**: This meal plan includes accommodation along with two meals a day, typically breakfast and either lunch or dinner. Guests can choose which two meals are most convenient for them based on the options provided by the hotel. 1017 -1. **FB (Full Board)**: Under the full board plan, accommodation and all three meals (breakfast, lunch, and dinner) are included. This plan is convenient for guests who do not wish to worry about arranging meals during their stay. 1018 -1. **AL (All Inclusive)**: The all-inclusive meal plan includes accommodation, all meals (breakfast, lunch, dinner), and usually includes a range of snacks and beverages (both alcoholic and non-alcoholic). It is the most comprehensive meal plan, offering the greatest convenience and predictability in costs. 1019 - 1020 -**ticketType **definition of avia tickets classes. 1021 - 1022 -enum: F - First, B - Business, P = Premium, C - Coach. 1023 - 1024 -== Important == 1025 - 1026 -{{error}} 1027 -=== Implementing Authorization in Subsequent Requests === 1028 - 1029 -For every API request after the initial authentication, it's crucial to include the authorization token in the request header. This ensures your requests are authorized and can access the necessary resources. Here's how to properly include your token: 1030 - 1031 -* **Header Key:** Authorization 1032 -* **Header Value:** Bearer [Your Token Here] - Use the bearer token provided in the initial authentication response. The authorization type should be specified as Bearer Token. 1033 - 1034 -Additionally, to ensure your requests are properly formatted and recognized, include the following headers: 1035 - 1036 -* **Content-Type:** Specify this header as application/json to indicate the format of the request body. 1037 -* **Header Key:** X-nugios-timezone 1038 -* **Header Value:** 240 - Adjust this value to match your local timezone offset in minutes. 1039 - 1040 -Incorporating these headers with their respective values is essential for the successful processing of your API requests. 1041 -{{/error}} 1042 - 1043 - 1044 - 1045 -(% class="box errormessage" %) 1046 -((( 1047 -Tour package requirements can vary based on the destination country, necessitating the inclusion of additional mandatory services such as Visa, Insurance, etc. When querying for tour packages through the API, the response payload will dynamically include fields indicating whether these services are mandatory. For instance, the API may return a structure like this: 1048 - 1049 -[[image:https://xwiki.nugios.com/xwiki/bin/download/APIs/Online%20API/TourPackages/WebHome/1713191255012-154.png?rev=1.1||alt="1713191255012-154.png"]] 1050 - 1051 -in the given example it means that insurance service is mandatory for the tourpackage. 1052 -))) 32 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.