Changes for page 1. SearchTourPackages

Last modified by Giorgi Mdivnishvili on 2025/02/12 15:25

From version 11.1
edited by Giorgi Mdivnishvili
on 2023/12/15 12:22
Change comment: There is no comment for this version
To version 22.1
edited by Giorgi Mdivnishvili
on 2024/04/10 10:48
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -SearchTourPackages
1 +1. SearchTourPackages
Content
... ... @@ -6,13 +6,15 @@
6 6  
7 7  = Method Description =
8 8  
9 -The initial method of the integration process is authorization. You will be provided with a test user username and password to generate the access token that you will need to pass in all the following methods.
9 +Tour package mean, tour with hotel and flight together. Using this method gives data about full package availability with flight and hotel options.
10 10  
11 +It's possible to receive data as current dates, also in date ranges using parameter  "stayDays": 0,   "stayDaysTo": 0. the maximum difference between the days can be 7. Below you can see examples.
11 11  
13 +
12 12  == Endpoint URL - [POST] ==
13 13  
14 14  {{info}}
15 -[[https:~~/~~/online-api.kazunion.com/api/TourPackages/SearchTourPackages>>https://online-api.kazunion.com/api/TourPackages/SearchTourPackages]]
17 +[[https:~~/~~/integration.kazunion.com/api/TourPackages/SearchTourPackages>>https://integration.kazunion.com/api/TourPackages/SearchTourPackages]]
16 16  {{/info}}
17 17  
18 18  == Request Parameters ==
... ... @@ -40,13 +40,13 @@
40 40   "tag": "string"
41 41   }
42 42   ],
43 - "checkInDate": "2023-12-14T13:43:54.766Z",
44 - "checkInDateTo": "2023-12-14T13:43:54.766Z",
45 - "checkOutDate": "2023-12-14T13:43:54.766Z",
45 + "checkInDate": "2023-12-14",
46 + "checkInDateTo": "2023-12-14",
47 + "checkOutDate": "2023-12-14",
46 46   "stayDays": 0,
47 47   "stayDaysTo": 0,
48 - "departureDate": "2023-12-14T13:43:54.766Z",
49 - "returnDate": "2023-12-14T13:43:54.766Z",
50 + "departureDate": "2023-12-14",
51 + "returnDate": "2023-12-14",
50 50   "airlineCode": "string",
51 51   "ticketType": "string",
52 52   "directFlightsOnly": true,
... ... @@ -85,6 +85,65 @@
85 85  {{/code}}
86 86  
87 87  
90 +== Request example ==
91 +
92 +{{code language="Json"}}
93 +{
94 + "departureCountryCode": "KZ",
95 + "departureCityUID": "f0ba6324-f337-405c-8cc7-23d62cf664e8",
96 + "arrivalCountryCode": "AE",
97 + "arrivalLocations": [
98 + {
99 + "type": "city",
100 + "label": "Dubai",
101 + "value": "f5185fa3-3f56-44ed-bf6b-80386a33caa2",
102 + "tag": "Dubai"
103 + }
104 + ],
105 + "checkInDate": "2024-02-05T20:00:00.000Z",
106 + "checkInDateTo": "2024-02-10T20:00:00.000Z",
107 +
108 + "stayDays": 3,
109 + "stayDaysTo": 6,
110 +
111 + "airlineCode": "",
112 + "ticketType": "",
113 + "directFlightsOnly": true,
114 + "longConnectTime": true,
115 + "adults": 1,
116 + "children": 1,
117 + "childrenAges": [
118 + 2
119 + ],
120 + "extendedSearch": false,
121 + "totalPriceFrom": 100,
122 + "totalPriceTo": 15000,
123 + "recommended": true,
124 + "popular": true,
125 + "freeSale": true,
126 + "groupByHotel": true,
127 + "hotelCodes": [
128 +
129 + ],
130 + "mealPlans": [
131 +
132 + ],
133 + "hotelClasses": [
134 +
135 + ],
136 + "hotelTypes": [
137 +
138 + ],
139 + "hotelServices": [
140 +
141 + ],
142 + "pagingId": "",
143 + "pageNumber": 10,
144 + "pageRowCount": 10
145 +}
146 +{{/code}}
147 +
148 +
88 88  == Response Body ==
89 89  
90 90  {{code language="json"}}
... ... @@ -264,271 +264,560 @@
264 264  {{/code}}
265 265  
266 266  
267 -=== example ===
328 +== Response example ==
268 268  
269 269  {{code language="Json"}}
270 -X
331 +{
332 + "packages": [
333 + {
334 + "cacheKey": "c705ab31e00e4f9a81c2fd46b2cdbb47f6fd9a6e16984236beb979b31aefafa4:{79}:i:10",
335 + "id": "tour:b01c168e-2ea7-4ea6-b6e0-55abb8cab0a0:da894a1e-88c0-4877-b216-0eeeabe186f3:4298d06f-4344-4a39-ad98-071b7760cf30",
336 + "priceCurrency": "USD",
337 + "totalPrice": 1033.53,
338 + "agentCommissionPercent": 0.0,
339 + "agentCommissionAmount": 0.0,
340 + "includedExtrasAmount": 0,
341 + "priceDifference": 0,
342 + "hotel": {
343 + "hotelPriceId": "da894a1e-88c0-4877-b216-0eeeabe186f3",
344 + "providerId": 13,
345 + "hotelName": "Mercure Dubai Barsha Heights Suites Apartments",
346 + "hotelCode": "5f125310-7025-4807-a4c6-49cd284c9c14",
347 + "nigths": 3,
348 + "mealPlan": "BB",
349 + "hotelClass": "4",
350 + "availabilityType": "FreeSale",
351 + "availableRoomsCount": 0,
352 + "fewRooms": true,
353 + "roomCategoryCode": "bc5f2224-bd4c-49b2-ab57-01eb7fa80d41",
354 + "roomCategoryName": "1 B/R Suite City View",
355 + "placementTypeName": "DBL",
356 + "checkInDate": "2024-02-09T20:00:00.000Z",
357 + "checkOutDate": "2024-02-12T20:00:00.000Z",
358 + "adults": 1,
359 + "children": 1,
360 + "districtUID": "4c65f6ed-902b-4fd8-9419-af7884c22c5e",
361 + "districtName": "Al Barsha",
362 + "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2",
363 + "cityName": "Dubai",
364 + "countryCode": "AE",
365 + "countryName": "United Arab Emirates",
366 + "hasAlcohol": false,
367 + "hasFreeWifi": true,
368 + "hasMetro": true,
369 + "hasPool": true,
370 + "hasMall": false,
371 + "cancellationPolicyDescription": "Cancellation Policy: 5 Day Before Arrival: 100.00 %, Early Departure: 100.00 %, NoShow: 100.00 %",
372 + "cancellationPolicy": {
373 + "noShowChargeValue": 100.0,
374 + "noShowChargeValueType": "%",
375 + "earlyDepartureChargeValue": 100.0,
376 + "earlyDepartureChargeValueType": "%",
377 + "conditions": [
378 + {
379 + "timeunits": 5,
380 + "timeunitType": "Day",
381 + "timeOffsetTypeName": "Before Arrival",
382 + "chargeValue": 100.0,
383 + "chargeValueType": "%"
384 + }
385 + ]
386 + }
387 + },
388 + "flight": {
389 + "id": "4298d06f-4344-4a39-ad98-071b7760cf30",
390 + "departureDate": "2024-02-09T20:00:00.000Z",
391 + "returnDate": "2024-02-12T20:00:00.000Z",
392 + "departureTicketsLeft": 7,
393 + "returnTicketsLeft": 7,
394 + "departureAvailabilityType": "FewPlaces",
395 + "returnAvailabilityType": "FewPlaces",
396 + "isTwoWay": true,
397 + "sameBaggageForAll": false,
398 + "totalBaggage": false,
399 + "departureSegments": [
400 + {
401 + "airlineCode": "KC",
402 + "airlineName": "Air Astana-",
403 + "flightCode": "KC897",
404 + "class": "econom",
405 + "lugageWeight": 20,
406 + "handLugageWeight": 6,
407 + "departureFlightDate": "2024-02-09T20:00:00.000Z",
408 + "departureCountryName": "Kazakhstan",
409 + "departureCityName": "Almaty",
410 + "departureAirportCode": "ALA",
411 + "departureAirportName": "Almaty Intl Airport",
412 + "departureTerminalCode": "ALA",
413 + "arrivalFlightDate": "2024-02-09T20:00:00.000Z",
414 + "arrivalCountryName": "United Arab Emirates",
415 + "arrivalCityName": "Dubai",
416 + "arrivalAirportCode": "DXB",
417 + "arrivalAirportName": "Dubai Intl Airport",
418 + "arrivalTerminalCode": "DXB1",
419 + "flightDuration": "0h 50m"
420 + }
421 + ],
422 + "returnSegments": [
423 + {
424 + "airlineCode": "KC",
425 + "airlineName": "Air Astana-",
426 + "flightCode": "KC900",
427 + "class": "econom",
428 + "lugageWeight": 20,
429 + "handLugageWeight": 6,
430 + "departureFlightDate": "2024-02-12T20:00:00.000Z",
431 + "departureCountryName": "United Arab Emirates",
432 + "departureCityName": "Dubai",
433 + "departureAirportCode": "DXB",
434 + "departureAirportName": "Dubai Intl Airport",
435 + "departureTerminalCode": "DXB1",
436 + "arrivalFlightDate": "2024-02-12T20:00:00.000Z",
437 + "arrivalCountryName": "Kazakhstan",
438 + "arrivalCityName": "Almaty",
439 + "arrivalAirportCode": "ALA",
440 + "arrivalAirportName": "Almaty Intl Airport",
441 + "arrivalTerminalCode": "ALA",
442 + "flightDuration": "8h 15m"
443 + }
444 + ],
445 + "passengers": [
446 + {
447 + "id": "42768722011000004-A1",
448 + "isAdult": true,
449 + "forwardBaggages": [],
450 + "backwardBaggages": []
451 + },
452 + {
453 + "id": "42768722011000004-C1",
454 + "isAdult": false,
455 + "forwardBaggages": [],
456 + "backwardBaggages": []
457 + }
458 + ]
459 + },
460 + "extraServices": [],
461 + "insurancePrice": {
462 + "name": "Medical INS (N10000)",
463 + "price": 17.92,
464 + "priceSurcarge": 0.0,
465 + "actualStartDate": "2024-02-09T20:00:00.000Z",
466 + "actualEndDate": "2024-02-12T20:00:00.000Z",
467 + "optional": false,
468 + "includedInPackagePrice": true
469 + }
470 + }
471 + ],
472 + "pagingId": "79",
473 + "pageNumber": 10,
474 + "pageCount": 2452,
475 + "totalCount": 2452,
476 + "error": false
477 +}
271 271  {{/code}}
272 272  
273 273  
274 274  === Schema ===
275 275  
276 -{{code language="none"}}
483 +{{success}}
277 277  SearchTourPackagesResponse{
278 -error boolean
279 -errorCode string
280 -nullable: true
281 -errorDescription string
282 -nullable: true
283 -userErrorDescription string
284 -nullable: true
285 -packages [
286 -nullable: true
287 -TourPackage{
288 -cacheKey string
289 -nullable: true
290 -id string
291 -nullable: true
292 -priceCurrency string
293 -nullable: true
294 -totalPrice number($double)
295 -agentCommissionPercent number($double)
296 -agentCommissionAmount number($double)
297 -includedExtrasAmount number($double)
298 -priceDifference number($double)
299 -hotel PackageHotel{
300 -hotelPriceId string
301 -nullable: true
302 -providerId integer($int32)
303 -hotelName string
304 -nullable: true
305 -hotelCode string
306 -nullable: true
307 -nigths integer($int32)
308 -mealPlan string
309 -nullable: true
310 -hotelClass string
311 -nullable: true
312 -availabilityType RoomAvailabilityTypeEnum[...]
313 -availableRoomsCount integer($int32)
314 -fewRooms boolean
315 -roomCategoryCode string
316 -nullable: true
317 -roomCategoryName string
318 -nullable: true
319 -placementTypeName string
320 -nullable: true
321 -placementDescription string
322 -nullable: true
323 -checkInDate string($date-time)
324 -checkOutDate string($date-time)
325 -adults integer($int32)
326 -children integer($int32)
327 -districtUID string($uuid)
328 -nullable: true
329 -districtName string
330 -nullable: true
331 -cityUID string($uuid)
332 -nullable: true
333 -cityName string
334 -nullable: true
335 -countryCode string
336 -nullable: true
337 -countryName string
338 -nullable: true
339 -hasAlcohol boolean
340 -hasFreeWifi boolean
341 -hasMetro boolean
342 -hasPool boolean
343 -hasMall boolean
344 -cancellationPolicyDescription string
345 -nullable: true
346 -cancellationPolicy CancellationPolicyExchange{
347 -cancellationPolicyCode string
348 -nullable: true
349 -noShowChargeValue number($double)
350 -nullable: true
351 -noShowChargeValueType string
352 -nullable: true
353 -earlyDepartureChargeValue number($double)
354 -nullable: true
355 -earlyDepartureChargeValueType string
356 -nullable: true
357 -conditions [
358 -nullable: true
359 -CancellationPolicyConditionExchange{
360 -timeunits integer($int32)
361 -timeunitType string
362 -nullable: true
363 -timeOffsetTypeName string
364 -nullable: true
365 -chargeValue number($double)
366 -nullable: true
367 -chargeValueType string
368 -nullable: true
485 +
486 +|error|boolean
487 +|errorCode|string
488 +nullable: true
489 +|errorDescription|string
490 +nullable: true
491 +|userErrorDescription|string
492 +nullable: true
493 +|packages|[
494 +nullable: trueTourPackage{(((
495 +|cacheKey|string
496 +nullable: true
497 +|id|string
498 +nullable: true
499 +|priceCurrency|string
500 +nullable: true
501 +|totalPrice|number($double)
502 +|agentCommissionPercent|number($double)
503 +|agentCommissionAmount|number($double)
504 +|includedExtrasAmount|number($double)
505 +|priceDifference|number($double)
506 +|hotel|PackageHotel{(((
507 +|hotelPriceId|string
508 +nullable: true
509 +|providerId|integer($int32)
510 +|hotelName|string
511 +nullable: true
512 +|hotelCode|string
513 +nullable: true
514 +|nigths|integer($int32)
515 +|mealPlan|string
516 +nullable: true
517 +|hotelClass|string
518 +nullable: true
519 +|availabilityType|RoomAvailabilityTypeEnumstringEnum:
520 +[ OnRequest, FreeSale, StopSale ]
521 +|availableRoomsCount|integer($int32)
522 +|fewRooms|boolean
523 +|roomCategoryCode|string
524 +nullable: true
525 +|roomCategoryName|string
526 +nullable: true
527 +|placementTypeName|string
528 +nullable: true
529 +|placementDescription|string
530 +nullable: true
531 +|checkInDate|string($date-time)
532 +|checkOutDate|string($date-time)
533 +|adults|integer($int32)
534 +|children|integer($int32)
535 +|districtUID|string($uuid)
536 +nullable: true
537 +|districtName|string
538 +nullable: true
539 +|cityUID|string($uuid)
540 +nullable: true
541 +|cityName|string
542 +nullable: true
543 +|countryCode|string
544 +nullable: true
545 +|countryName|string
546 +nullable: true
547 +|hasAlcohol|boolean
548 +|hasFreeWifi|boolean
549 +|hasMetro|boolean
550 +|hasPool|boolean
551 +|hasMall|boolean
552 +|cancellationPolicyDescription|string
553 +nullable: true
554 +|cancellationPolicy|CancellationPolicyExchange{(((
555 +|cancellationPolicyCode|string
556 +nullable: true
557 +|noShowChargeValue|number($double)
558 +nullable: true
559 +|noShowChargeValueType|string
560 +nullable: true
561 +|earlyDepartureChargeValue|number($double)
562 +nullable: true
563 +|earlyDepartureChargeValueType|string
564 +nullable: true
565 +|conditions|[
566 +nullable: trueCancellationPolicyConditionExchange{(((
567 +|timeunits|integer($int32)
568 +|timeunitType|string
569 +nullable: true
570 +|timeOffsetTypeName|string
571 +nullable: true
572 +|chargeValue|number($double)
573 +nullable: true
574 +|chargeValueType|string
575 +nullable: true
576 +
369 369  }]
578 +)))
579 +
370 370  }
581 +)))
582 +
371 371  }
372 -flight PackageFlight{
373 -id string
374 -nullable: true
375 -departureDate string($date-time)
376 -returnDate string($date-time)
377 -nullable: true
378 -departureTicketsLeft integer($int32)
379 -returnTicketsLeft integer($int32)
380 -departureAvailabilityType FlightAvailabilityTypestring
381 -Enum:
382 -[ OnRequest, FreeSale, FewPlaces, StopSale ]
383 -returnAvailabilityType FlightAvailabilityTypestring
384 -Enum:
385 -[ OnRequest, FreeSale, FewPlaces, StopSale ]
386 -isTwoWay boolean
387 -departureSegments [
388 -nullable: true
389 -FlightSegment{
390 -airlineCode string
391 -nullable: true
392 -airlineName string
393 -nullable: true
394 -flightCode string
395 -nullable: true
396 -class string
397 -nullable: true
398 -lugageWeight number($double)
399 -handLugageWeight number($double)
400 -departureFlightDate string($date-time)
401 -departureCountryName string
402 -nullable: true
403 -departureCityName string
404 -nullable: true
405 -departureAirportCode string
406 -nullable: true
407 -departureAirportName string
408 -nullable: true
409 -departureTerminalCode string
410 -nullable: true
411 -arrivalFlightDate string($date-time)
412 -arrivalCountryName string
413 -nullable: true
414 -arrivalCityName string
415 -nullable: true
416 -arrivalAirportCode string
417 -nullable: true
418 -arrivalAirportName string
419 -nullable: true
420 -arrivalTerminalCode string
421 -nullable: true
422 -flightDuration string
423 -nullable: true
424 -baggages [
425 -nullable: true
426 -Baggage{
427 -baggageCode string
428 -nullable: true
429 -description string
430 -nullable: true
431 -price number($double)
432 -currency string
433 -nullable: true
434 -included boolean
584 +)))
585 +|flight|PackageFlight{(((
586 +|id|string
587 +nullable: true
588 +|departureDate|string($date-time)
589 +|returnDate|string($date-time)
590 +nullable: true
591 +|departureTicketsLeft|integer($int32)
592 +|returnTicketsLeft|integer($int32)
593 +|departureAvailabilityType|FlightAvailabilityTypestringEnum:
594 +[ OnRequest, FreeSale, FewPlaces, StopSale ]
595 +|returnAvailabilityType|FlightAvailabilityTypestringEnum:
596 +[ OnRequest, FreeSale, FewPlaces, StopSale ]
597 +|isTwoWay|boolean
598 +|departureSegments|[
599 +nullable: trueFlightSegment{(((
600 +|airlineCode|string
601 +nullable: true
602 +|airlineName|string
603 +nullable: true
604 +|flightCode|string
605 +nullable: true
606 +|class|string
607 +nullable: true
608 +|lugageWeight|number($double)
609 +|handLugageWeight|number($double)
610 +|departureFlightDate|string($date-time)
611 +|departureCountryName|string
612 +nullable: true
613 +|departureCityName|string
614 +nullable: true
615 +|departureAirportCode|string
616 +nullable: true
617 +|departureAirportName|string
618 +nullable: true
619 +|departureTerminalCode|string
620 +nullable: true
621 +|arrivalFlightDate|string($date-time)
622 +|arrivalCountryName|string
623 +nullable: true
624 +|arrivalCityName|string
625 +nullable: true
626 +|arrivalAirportCode|string
627 +nullable: true
628 +|arrivalAirportName|string
629 +nullable: true
630 +|arrivalTerminalCode|string
631 +nullable: true
632 +|flightDuration|string
633 +nullable: true
634 +|baggages|[
635 +nullable: trueBaggage{(((
636 +|baggageCode|string
637 +nullable: true
638 +|description|string
639 +nullable: true
640 +|price|number($double)
641 +|currency|string
642 +nullable: true
643 +|included|boolean
644 +
435 435  }]
646 +)))
647 +
436 436  }]
437 -returnSegments [
438 -nullable: true
439 -FlightSegment{
440 -airlineCode string
441 -nullable: true
442 -airlineName string
443 -nullable: true
444 -flightCode string
445 -nullable: true
446 -class string
447 -nullable: true
448 -lugageWeight number($double)
449 -handLugageWeight number($double)
450 -departureFlightDate string($date-time)
451 -departureCountryName string
452 -nullable: true
453 -departureCityName string
454 -nullable: true
455 -departureAirportCode string
456 -nullable: true
457 -departureAirportName string
458 -nullable: true
459 -departureTerminalCode string
460 -nullable: true
461 -arrivalFlightDate string($date-time)
462 -arrivalCountryName string
463 -nullable: true
464 -arrivalCityName string
465 -nullable: true
466 -arrivalAirportCode string
467 -nullable: true
468 -arrivalAirportName string
469 -nullable: true
470 -arrivalTerminalCode string
471 -nullable: true
472 -flightDuration string
473 -nullable: true
474 -baggages [
475 -nullable: true
476 -Baggage{
477 -baggageCode string
478 -nullable: true
479 -description string
480 -nullable: true
481 -price number($double)
482 -currency string
483 -nullable: true
484 -included boolean
649 +)))
650 +|returnSegments|[
651 +nullable: trueFlightSegment{(((
652 +|airlineCode|string
653 +nullable: true
654 +|airlineName|string
655 +nullable: true
656 +|flightCode|string
657 +nullable: true
658 +|class|string
659 +nullable: true
660 +|lugageWeight|number($double)
661 +|handLugageWeight|number($double)
662 +|departureFlightDate|string($date-time)
663 +|departureCountryName|string
664 +nullable: true
665 +|departureCityName|string
666 +nullable: true
667 +|departureAirportCode|string
668 +nullable: true
669 +|departureAirportName|string
670 +nullable: true
671 +|departureTerminalCode|string
672 +nullable: true
673 +|arrivalFlightDate|string($date-time)
674 +|arrivalCountryName|string
675 +nullable: true
676 +|arrivalCityName|string
677 +nullable: true
678 +|arrivalAirportCode|string
679 +nullable: true
680 +|arrivalAirportName|string
681 +nullable: true
682 +|arrivalTerminalCode|string
683 +nullable: true
684 +|flightDuration|string
685 +nullable: true
686 +|baggages|[
687 +nullable: trueBaggage{(((
688 +|baggageCode|string
689 +nullabletrue
690 +|description|string
691 +nullabletrue
692 +|price|number($double)
693 +|currency|string
694 +nullabletrue
695 +|included|boolean
696 +
485 485  }]
698 +)))
699 +
486 486  }]
701 +)))
702 +
487 487  }
488 -extraServices [
489 -nullable: true
490 -HotelExtraServiceBase{
491 -extraServiceCode string
492 -nullable: true
493 -extraServiceTypeCode string
494 -nullable: true
495 -isMandatory integer($int32)
496 -extraServiceName string
497 -nullable: true
498 -minimalServiceAmount number($double)
499 -includedPriceCode string
500 -nullable: true
501 -prices [
502 -nullable: true
503 -HotelExtraServicePriceBase{
504 -extraServicePriceCode string
505 -nullable: true
506 -displayName string
507 -nullable: true
508 -restrictionInfo string
509 -nullable: true
510 -additionalInfo string
511 -nullable: true
512 -price number($double)
513 -extraPrice number($double)
514 -currency string
515 -nullable: true
704 +)))
705 +|extraServices|[
706 +nullable: trueHotelExtraServiceBase{(((
707 +|extraServiceCode|string
708 +nullable: true
709 +|extraServiceTypeCode|string
710 +nullable: true
711 +|isMandatory|integer($int32)
712 +|extraServiceName|string
713 +nullable: true
714 +|minimalServiceAmount|number($double)
715 +|includedPriceCode|string
716 +nullable: true
717 +|prices|[
718 +nullable: trueHotelExtraServicePriceBase{(((
719 +|extraServicePriceCode|string
720 +nullabletrue
721 +|displayName|string
722 +nullabletrue
723 +|restrictionInfo|string
724 +nullabletrue
725 +|additionalInfo|string
726 +nullable: true
727 +|price|number($double)
728 +|extraPrice|number($double)
729 +|currency|string
730 +nullabletrue
731 +
516 516  }]
733 +)))
734 +
517 517  }]
518 -insurancePrice InsurancePrice{
519 -name string
520 -nullable: true
521 -price number($double)
522 -priceSurcarge number($double)
523 -actualStartDate string($date-time)
524 -actualEndDate string($date-time)
525 -optional boolean
526 -includedInPackagePrice boolean
736 +)))
737 +|insurancePrice|InsurancePrice{(((
738 +|name|string
739 +nullable: true
740 +|price|number($double)
741 +|priceSurcarge|number($double)
742 +|actualStartDate|string($date-time)
743 +|actualEndDate|string($date-time)
744 +|optional|boolean
745 +|includedInPackagePrice|boolean
746 +
527 527  }
748 +)))
749 +
528 528  }]
529 -pagingId string
530 -nullable: true
531 -pageNumber integer($int64)
532 -pageCount integer($int64)
751 +)))
752 +|pagingId|string
753 +nullable: true
754 +|pageNumber|integer($int64)
755 +|pageCount|integer($int64)
756 +
533 533  }
758 +{{/success}}
759 +
760 +
761 +== Definitions ==
762 +
763 +
764 +(% class="table-bordered" %)
765 +|=Field|=Type|=Description
766 +|departureCountryCode|string|The ISO 3166-1 alpha-2 country code for the departure country. For example, "KZ" for Kazakhstan.
767 +|departureCityUID|string|The unique identifier for the departure city.
768 +|arrivalCountryCode|string|The ISO 3166-1 alpha-2 country code for the arrival country. For example, "AE" for United Arab Emirates.
769 +|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.
770 +|checkInDate|string|The check-in date in ISO 8601 format.
771 +|checkInDateTo|string|The latest possible check-in date in ISO 8601 format.
772 +|stayDays|integer|The minimum number of days to stay.
773 +|stayDaysTo|integer|The maximum number of days to stay.
774 +|airlineCode|string|The code of the airline. This field can be empty.
775 +|ticketType|string|The type of the ticket. This field can be empty.
776 +|directFlightsOnly|boolean|Indicates whether to search for direct flights only.
777 +|longConnectTime|boolean|Indicates whether to include flights with long connection times.
778 +|adults|integer|The number of adults.
779 +|children|integer|The number of children.
780 +|childrenAges|array|An array of integers, each representing the age of a child.
781 +|extendedSearch|boolean|Indicates whether to perform an extended search.
782 +|totalPriceFrom|float|The minimum total price.
783 +|totalPriceTo|float|The maximum total price.
784 +|recommended|boolean|Indicates whether to include recommended packages.
785 +|popular|boolean|Indicates whether to include popular packages.
786 +|freeSale|boolean|Indicates whether to include free sale packages.
787 +|groupByHotel|boolean|Indicates whether to group the results by hotel.
788 +|hotelCodes|array|An array of strings, each representing a hotel code. This field can be empty.
789 +|mealPlans|array|An array of meal plans. This field can be empty.
790 +|hotelClasses|array|An array of hotel classes. This field can be empty.
791 +|hotelTypes|array|An array of hotel types. This field can be empty.
792 +|hotelServices|array|An array of hotel services. This field can be empty.
793 +|pagingId|string|The paging ID for paginated results. This field can be empty.
794 +|pageNumber|integer|The page number for paginated results.
795 +|pageRowCount|integer|The number of rows per page for paginated results.
796 +
797 +=== ===
798 +
799 +=== Paging and Caching ===
800 +
801 +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:
802 +
803 +
804 +==== first request ====
805 +
806 +{{code language="Json"}}
807 + {
808 + "pagingId": "",
809 + "pageNumber": 1,
810 + "pageRowCount":10
811 + }
534 534  {{/code}}
813 +
814 +
815 +==== Request with caching ====
816 +
817 +as we receive response, in the end we can see pagingId- number, chich we can use for caching, and then just switch pagenumbers. for cleaning cache, it's important to make new request without pagingID
818 +
819 +{{code language="Json"}}
820 + {
821 + "pagingId": "80",
822 + "pageNumber": 1,
823 + "pageRowCount":10
824 + }
825 +{{/code}}
826 +
827 +
828 +=== search parameter options ===
829 +
830 +in the request body it's available to filter search results with parameters. parameter examples:
831 +
832 +{{code language="Json"}}
833 + { "totalPriceFrom": 500,
834 + "totalPriceTo": 10000,
835 + "hotelTypes": [
836 + "CityHotel",
837 + "BeachHotel",
838 + "SecondLineBeach"
839 + ],
840 + "hotelClasses": [
841 + "1",
842 + "2",
843 + "3",
844 + "4",
845 + "5",
846 + "6"
847 + ],
848 + "hotelServices": [
849 + "HasAlcohol",
850 + "HasFreeWifi",
851 + "HasMetro",
852 + "HasPool",
853 + "HasMall"
854 + ],
855 + "mealPlans": [
856 + "RO",
857 + "BB",
858 + "HB",
859 + "FB",
860 + "AL"
861 + ]
862 +}
863 +{{/code}}
864 +
865 +
866 +
867 +== Important ==
868 +
869 +{{error}}
870 +It's Important to in every other request header, put Auth token
871 +
872 +**Key **- Authorization
873 +
874 +**Value **- Bearer Token what is given in this response.
875 +
876 +
877 +**also note in headers that:**
878 +
879 +Content-Type - application/json
880 +
881 +**Key - **X-nugios-timezone
882 +
883 +**Value **- 240
884 +{{/error}}