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
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
on 2024/04/10 10:48
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,13 +6,15 @@ 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 -[[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-14 T13:43:54.766Z",44 - "checkInDateTo": "2023-12-14 T13:43:54.766Z",45 - "checkOutDate": "2023-12-14 T13: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-14 T13:43:54.766Z",49 - "returnDate": "2023-12-14 T13: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 -{{c odelanguage="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:true439 -FlightSegment{ 440 -airlineCode 441 -nullable: 442 -airlineName 443 -nullable: 444 -flightCode 445 -nullable: 446 -class 447 -nullable: 448 -lugageWeight 449 -handLugageWeight 450 -departureFlightDate 451 -departureCountryName 452 -nullable: 453 -departureCityName 454 -nullable: 455 -departureAirportCode 456 -nullable: 457 -departureAirportName 458 -nullable: 459 -departureTerminalCode 460 -nullable: 461 -arrivalFlightDate 462 -arrivalCountryName 463 -nullable: 464 -arrivalCityName 465 -nullable: 466 -arrivalAirportCode 467 -nullable: 468 -arrivalAirportName 469 -nullable: 470 -arrivalTerminalCode 471 -nullable: 472 -flightDuration 473 -nullable: 474 -baggages 475 -nullable: 476 - Baggage{477 - baggageCode string478 - nullable:true479 - description string480 -nu llable: true481 - price number($double)482 - currency string483 -n ullable: true484 - 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 + 485 485 }] 698 +))) 699 + 486 486 }] 701 +))) 702 + 487 487 } 488 - extraServices [489 - nullable:true490 -HotelExtraServiceBase{ 491 -extraServiceCode 492 -nullable: 493 -extraServiceTypeCode 494 -nullable: 495 -isMandatory 496 -extraServiceName 497 -nullable: 498 -minimalServiceAmount 499 -includedPriceCode 500 -nullable: 501 -prices 502 -nullable: 503 - HotelExtraServicePriceBase{504 - extraServicePriceCode string505 - nullable:true506 - displayNamestring507 - nullable:true508 - restrictionInfo string509 -n ullable:true510 - additionalInfo string511 -nu llable: true512 - price513 - extraPriceumber($double)514 - currency string515 - 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 + 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}}