Changes for page 1. SearchTourPackages

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

From version 23.1
edited by Giorgi Mdivnishvili
on 2024/04/10 10:50
Change comment: There is no comment for this version
To version 14.1
edited by Giorgi Mdivnishvili
on 2023/12/26 14:25
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -6,15 +6,13 @@
6 6  
7 7  = Method Description =
8 8  
9 -Tour package mean, tour with hotel and flight together. Using this method gives data about full package availability with flight and hotel options.
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.
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.
12 12  
13 -
14 14  == Endpoint URL - [POST] ==
15 15  
16 16  {{info}}
17 -[[https:~~/~~/integration.kazunion.com/api/TourPackages/SearchTourPackages>>https://integration.kazunion.com/api/TourPackages/SearchTourPackages]]
15 +[[https:~~/~~/online-api.kazunion.com/api/TourPackages/SearchTourPackages>>https://online-api.kazunion.com/api/TourPackages/SearchTourPackages]]
18 18  {{/info}}
19 19  
20 20  == Request Parameters ==
... ... @@ -42,13 +42,13 @@
42 42   "tag": "string"
43 43   }
44 44   ],
45 - "checkInDate": "2023-12-14",
46 - "checkInDateTo": "2023-12-14",
47 - "checkOutDate": "2023-12-14",
43 + "checkInDate": "2023-12-14T13:43:54.766Z",
44 + "checkInDateTo": "2023-12-14T13:43:54.766Z",
45 + "checkOutDate": "2023-12-14T13:43:54.766Z",
48 48   "stayDays": 0,
49 49   "stayDaysTo": 0,
50 - "departureDate": "2023-12-14",
51 - "returnDate": "2023-12-14",
48 + "departureDate": "2023-12-14T13:43:54.766Z",
49 + "returnDate": "2023-12-14T13:43:54.766Z",
52 52   "airlineCode": "string",
53 53   "ticketType": "string",
54 54   "directFlightsOnly": true,
... ... @@ -757,132 +757,3 @@
757 757  }
758 758  {{/success}}
759 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 - }
816 -{{/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}}