Changes for page 1. SearchTourPackages
Last modified by Giorgi Mdivnishvili on 2025/02/12 15:25
From version 10.1
edited by Giorgi Mdivnishvili
on 2023/12/15 12:20
on 2023/12/15 12:20
Change comment:
There is no comment for this version
To version 23.1
edited by Giorgi Mdivnishvili
on 2024/04/10 10:50
on 2024/04/10 10:50
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 -SearchTourPackages 1 +1. SearchTourPackages - Content
-
... ... @@ -6,21 +6,22 @@ 6 6 7 7 = Method Description = 8 8 9 -T he initial method of the integrationprocessisauthorization.Youwill be providedwithatestuser username andpasswordtonerate the accesstokenthatyouwillneed topassinallthefollowingmethods.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 - {{{}}}17 +[[https:~~/~~/integration.kazunion.com/api/TourPackages/SearchTourPackages>>https://integration.kazunion.com/api/TourPackages/SearchTourPackages]] 16 16 {{/info}} 17 17 18 - 19 19 == Request Parameters == 20 20 21 21 (% class="box infomessage" %) 22 22 ((( 23 -None 24 +None 24 24 ))) 25 25 26 26 ... ... @@ -41,13 +41,13 @@ 41 41 "tag": "string" 42 42 } 43 43 ], 44 - "checkInDate": "2023-12-14 T13:43:54.766Z",45 - "checkInDateTo": "2023-12-14 T13:43:54.766Z",46 - "checkOutDate": "2023-12-14 T13:43:54.766Z",45 + "checkInDate": "2023-12-14", 46 + "checkInDateTo": "2023-12-14", 47 + "checkOutDate": "2023-12-14", 47 47 "stayDays": 0, 48 48 "stayDaysTo": 0, 49 - "departureDate": "2023-12-14 T13:43:54.766Z",50 - "returnDate": "2023-12-14 T13:43:54.766Z",50 + "departureDate": "2023-12-14", 51 + "returnDate": "2023-12-14", 51 51 "airlineCode": "string", 52 52 "ticketType": "string", 53 53 "directFlightsOnly": true, ... ... @@ -86,6 +86,65 @@ 86 86 {{/code}} 87 87 88 88 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 + 89 89 == Response Body == 90 90 91 91 {{code language="json"}} ... ... @@ -265,271 +265,564 @@ 265 265 {{/code}} 266 266 267 267 268 -== =example ===328 +== Response example == 269 269 270 270 {{code language="Json"}} 271 -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 +} 272 272 {{/code}} 273 273 274 274 275 275 === Schema === 276 276 277 -{{c odelanguage="none"}}483 +{{success}} 278 278 SearchTourPackagesResponse{ 279 -error boolean 280 -errorCode string 281 -nullable: true 282 -errorDescription string 283 -nullable: true 284 -userErrorDescription string 285 -nullable: true 286 -packages [ 287 -nullable: true 288 -TourPackage{ 289 -cacheKey string 290 -nullable: true 291 -id string 292 -nullable: true 293 -priceCurrency string 294 -nullable: true 295 -totalPrice number($double) 296 -agentCommissionPercent number($double) 297 -agentCommissionAmount number($double) 298 -includedExtrasAmount number($double) 299 -priceDifference number($double) 300 -hotel PackageHotel{ 301 -hotelPriceId string 302 -nullable: true 303 -providerId integer($int32) 304 -hotelName string 305 -nullable: true 306 -hotelCode string 307 -nullable: true 308 -nigths integer($int32) 309 -mealPlan string 310 -nullable: true 311 -hotelClass string 312 -nullable: true 313 -availabilityType RoomAvailabilityTypeEnum[...] 314 -availableRoomsCount integer($int32) 315 -fewRooms boolean 316 -roomCategoryCode string 317 -nullable: true 318 -roomCategoryName string 319 -nullable: true 320 -placementTypeName string 321 -nullable: true 322 -placementDescription string 323 -nullable: true 324 -checkInDate string($date-time) 325 -checkOutDate string($date-time) 326 -adults integer($int32) 327 -children integer($int32) 328 -districtUID string($uuid) 329 -nullable: true 330 -districtName string 331 -nullable: true 332 -cityUID string($uuid) 333 -nullable: true 334 -cityName string 335 -nullable: true 336 -countryCode string 337 -nullable: true 338 -countryName string 339 -nullable: true 340 -hasAlcohol boolean 341 -hasFreeWifi boolean 342 -hasMetro boolean 343 -hasPool boolean 344 -hasMall boolean 345 -cancellationPolicyDescription string 346 -nullable: true 347 -cancellationPolicy CancellationPolicyExchange{ 348 -cancellationPolicyCode string 349 -nullable: true 350 -noShowChargeValue number($double) 351 -nullable: true 352 -noShowChargeValueType string 353 -nullable: true 354 -earlyDepartureChargeValue number($double) 355 -nullable: true 356 -earlyDepartureChargeValueType string 357 -nullable: true 358 -conditions [ 359 -nullable: true 360 -CancellationPolicyConditionExchange{ 361 -timeunits integer($int32) 362 -timeunitType string 363 -nullable: true 364 -timeOffsetTypeName string 365 -nullable: true 366 -chargeValue number($double) 367 -nullable: true 368 -chargeValueType string 369 -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 + 370 370 }] 578 +))) 579 + 371 371 } 581 +))) 582 + 372 372 } 373 -flight PackageFlight{ 374 -id string 375 -nullable: true 376 -departureDate string($date-time) 377 -returnDate string($date-time) 378 -nullable: true 379 -departureTicketsLeft integer($int32) 380 -returnTicketsLeft integer($int32) 381 -departureAvailabilityType FlightAvailabilityTypestring 382 -Enum: 383 -[ OnRequest, FreeSale, FewPlaces, StopSale ] 384 -returnAvailabilityType FlightAvailabilityTypestring 385 -Enum: 386 -[ OnRequest, FreeSale, FewPlaces, StopSale ] 387 -isTwoWay boolean 388 -departureSegments [ 389 -nullable: true 390 -FlightSegment{ 391 -airlineCode string 392 -nullable: true 393 -airlineName string 394 -nullable: true 395 -flightCode string 396 -nullable: true 397 -class string 398 -nullable: true 399 -lugageWeight number($double) 400 -handLugageWeight number($double) 401 -departureFlightDate string($date-time) 402 -departureCountryName string 403 -nullable: true 404 -departureCityName string 405 -nullable: true 406 -departureAirportCode string 407 -nullable: true 408 -departureAirportName string 409 -nullable: true 410 -departureTerminalCode string 411 -nullable: true 412 -arrivalFlightDate string($date-time) 413 -arrivalCountryName string 414 -nullable: true 415 -arrivalCityName string 416 -nullable: true 417 -arrivalAirportCode string 418 -nullable: true 419 -arrivalAirportName string 420 -nullable: true 421 -arrivalTerminalCode string 422 -nullable: true 423 -flightDuration string 424 -nullable: true 425 -baggages [ 426 -nullable: true 427 -Baggage{ 428 -baggageCode string 429 -nullable: true 430 -description string 431 -nullable: true 432 -price number($double) 433 -currency string 434 -nullable: true 435 -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 + 436 436 }] 646 +))) 647 + 437 437 }] 438 - returnSegments [439 - nullable:true440 -FlightSegment{ 441 -airlineCode 442 -nullable: 443 -airlineName 444 -nullable: 445 -flightCode 446 -nullable: 447 -class 448 -nullable: 449 -lugageWeight 450 -handLugageWeight 451 -departureFlightDate 452 -departureCountryName 453 -nullable: 454 -departureCityName 455 -nullable: 456 -departureAirportCode 457 -nullable: 458 -departureAirportName 459 -nullable: 460 -departureTerminalCode 461 -nullable: 462 -arrivalFlightDate 463 -arrivalCountryName 464 -nullable: 465 -arrivalCityName 466 -nullable: 467 -arrivalAirportCode 468 -nullable: 469 -arrivalAirportName 470 -nullable: 471 -arrivalTerminalCode 472 -nullable: 473 -flightDuration 474 -nullable: 475 -baggages 476 -nullable: 477 - Baggage{478 - baggageCode string479 - nullable:true480 - description string481 -nu llable: true482 - price number($double)483 - currency string484 -n ullable: true485 - included boolean649 +))) 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 +nullable: true 690 +|description|string 691 +nullable: true 692 +|price|number($double) 693 +|currency|string 694 +nullable: true 695 +|included|boolean 696 + 486 486 }] 698 +))) 699 + 487 487 }] 701 +))) 702 + 488 488 } 489 - extraServices [490 - nullable:true491 -HotelExtraServiceBase{ 492 -extraServiceCode 493 -nullable: 494 -extraServiceTypeCode 495 -nullable: 496 -isMandatory 497 -extraServiceName 498 -nullable: 499 -minimalServiceAmount 500 -includedPriceCode 501 -nullable: 502 -prices 503 -nullable: 504 - HotelExtraServicePriceBase{505 - extraServicePriceCode string506 - nullable:true507 - displayNamestring508 - nullable:true509 - restrictionInfo string510 -n ullable:true511 - additionalInfo string512 -nu llable: true513 - price514 - extraPriceumber($double)515 - currency string516 - nullable: true704 +))) 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 +nullable: true 721 +|displayName|string 722 +nullable: true 723 +|restrictionInfo|string 724 +nullable: true 725 +|additionalInfo|string 726 +nullable: true 727 +|price|number($double) 728 +|extraPrice|number($double) 729 +|currency|string 730 +nullable: true 731 + 517 517 }] 733 +))) 734 + 518 518 }] 519 -insurancePrice InsurancePrice{ 520 -name string 521 -nullable: true 522 -price number($double) 523 -priceSurcarge number($double) 524 -actualStartDate string($date-time) 525 -actualEndDate string($date-time) 526 -optional boolean 527 -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 + 528 528 } 748 +))) 749 + 529 529 }] 530 -pagingId string 531 -nullable: true 532 -pageNumber integer($int64) 533 -pageCount integer($int64) 751 +))) 752 +|pagingId|string 753 +nullable: true 754 +|pageNumber|integer($int64) 755 +|pageCount|integer($int64) 756 + 534 534 } 758 +{{/success}} 759 + 760 + 761 +== Definitions == 762 + 763 +Request Parameters 764 + 765 +(% class="table-bordered" %) 766 +|=Field|=Type|=Description 767 +|departureCountryCode|string|The ISO 3166-1 alpha-2 country code for the departure country. For example, "KZ" for Kazakhstan. 768 +|departureCityUID|string|The unique identifier for the departure city. 769 +|arrivalCountryCode|string|The ISO 3166-1 alpha-2 country code for the arrival country. For example, "AE" for United Arab Emirates. 770 +|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. 771 +|checkInDate|string|The check-in date in ISO 8601 format. 772 +|checkInDateTo|string|The latest possible check-in date in ISO 8601 format. 773 +|stayDays|integer|The minimum number of days to stay. 774 +|stayDaysTo|integer|The maximum number of days to stay. 775 +|airlineCode|string|The code of the airline. This field can be empty. 776 +|ticketType|string|The type of the ticket. This field can be empty. 777 +|directFlightsOnly|boolean|Indicates whether to search for direct flights only. 778 +|longConnectTime|boolean|Indicates whether to include flights with long connection times. 779 +|adults|integer|The number of adults. 780 +|children|integer|The number of children. 781 +|childrenAges|array|An array of integers, each representing the age of a child. 782 +|extendedSearch|boolean|Indicates whether to perform an extended search. 783 +|totalPriceFrom|float|The minimum total price. 784 +|totalPriceTo|float|The maximum total price. 785 +|recommended|boolean|Indicates whether to include recommended packages. 786 +|popular|boolean|Indicates whether to include popular packages. 787 +|freeSale|boolean|Indicates whether to include free sale packages. 788 +|groupByHotel|boolean|Indicates whether to group the results by hotel. 789 +|hotelCodes|array|An array of strings, each representing a hotel code. This field can be empty. 790 +|mealPlans|array|An array of meal plans. This field can be empty. 791 +|hotelClasses|array|An array of hotel classes. This field can be empty. 792 +|hotelTypes|array|An array of hotel types. This field can be empty. 793 +|hotelServices|array|An array of hotel services. This field can be empty. 794 +|pagingId|string|The paging ID for paginated results. This field can be empty. 795 +|pageNumber|integer|The page number for paginated results. 796 +|pageRowCount|integer|The number of rows per page for paginated results. 797 + 798 + 799 +(% class="wikigeneratedid" %) 800 +Request Parameters 801 + 802 + 803 +=== Paging and Caching === 804 + 805 +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: 806 + 807 + 808 +==== first request ==== 809 + 810 +{{code language="Json"}} 811 + { 812 + "pagingId": "", 813 + "pageNumber": 1, 814 + "pageRowCount":10 815 + } 535 535 {{/code}} 817 + 818 + 819 +==== Request with caching ==== 820 + 821 +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 822 + 823 +{{code language="Json"}} 824 + { 825 + "pagingId": "80", 826 + "pageNumber": 1, 827 + "pageRowCount":10 828 + } 829 +{{/code}} 830 + 831 + 832 +=== search parameter options === 833 + 834 +in the request body it's available to filter search results with parameters. parameter examples: 835 + 836 +{{code language="Json"}} 837 + { "totalPriceFrom": 500, 838 + "totalPriceTo": 10000, 839 + "hotelTypes": [ 840 + "CityHotel", 841 + "BeachHotel", 842 + "SecondLineBeach" 843 + ], 844 + "hotelClasses": [ 845 + "1", 846 + "2", 847 + "3", 848 + "4", 849 + "5", 850 + "6" 851 + ], 852 + "hotelServices": [ 853 + "HasAlcohol", 854 + "HasFreeWifi", 855 + "HasMetro", 856 + "HasPool", 857 + "HasMall" 858 + ], 859 + "mealPlans": [ 860 + "RO", 861 + "BB", 862 + "HB", 863 + "FB", 864 + "AL" 865 + ] 866 +} 867 +{{/code}} 868 + 869 + 870 + 871 +== Important == 872 + 873 +{{error}} 874 +It's Important to in every other request header, put Auth token 875 + 876 +**Key **- Authorization 877 + 878 +**Value **- Bearer Token what is given in this response. 879 + 880 + 881 +**also note in headers that:** 882 + 883 +Content-Type - application/json 884 + 885 +**Key - **X-nugios-timezone 886 + 887 +**Value **- 240 888 +{{/error}}