Changes for page 1. SearchTourPackages

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

From version 24.1
edited by Giorgi Mdivnishvili
on 2024/04/10 10:56
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,198 +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 -Response Parameters
801 -
802 -
803 -
804 -
805 -(% class="table-bordered" %)
806 -|=Field|=Type|=Description
807 -|packages|array|An array of packages available. Each package contains:
808 -|cacheKey|string|A unique identifier for the cache.
809 -|id|string|A unique identifier for the package.
810 -|priceCurrency|string|The currency in which the price is displayed.
811 -|totalPrice|float|The total price of the package.
812 -|agentCommissionPercent|float|The commission percentage for the agent.
813 -|agentCommissionAmount|float|The commission amount for the agent.
814 -|includedExtrasAmount|integer|The amount of extras included in the package.
815 -|priceDifference|integer|The difference in price from the original price.
816 -|hotel|object|An object containing details about the hotel.
817 -|hotelPriceId|string|A unique identifier for the hotel price.
818 -|providerId|integer|A unique identifier for the provider.
819 -|hotelName|string|The name of the hotel.
820 -|hotelCode|string|A unique code for the hotel.
821 -|nigths|integer|The number of nights for the stay.
822 -|mealPlan|string|The meal plan for the stay.
823 -|hotelClass|string|The class or rating of the hotel.
824 -|availabilityType|string|The availability type of the hotel.
825 -|availableRoomsCount|integer|The number of available rooms in the hotel.
826 -|fewRooms|boolean|Indicates whether there are few rooms left.
827 -|roomCategoryCode|string|A unique code for the room category.
828 -|roomCategoryName|string|The name of the room category.
829 -|placementTypeName|string|The name of the placement type.
830 -|checkInDate|string|The check-in date in ISO 8601 format.
831 -|checkOutDate|string|The check-out date in ISO 8601 format.
832 -|adults|integer|The number of adults for the stay.
833 -|children|integer|The number of children for the stay.
834 -|districtUID|string|A unique identifier for the district.
835 -|districtName|string|The name of the district.
836 -|cityUID|string|A unique identifier for the city.
837 -|cityName|string|The name of the city.
838 -|countryCode|string|The ISO 3166-1 alpha-2 country code.
839 -|countryName|string|The name of the country.
840 -|hasAlcohol|boolean|Indicates whether the hotel serves alcohol.
841 -|hasFreeWifi|boolean|Indicates whether the hotel offers free Wi-Fi.
842 -|hasMetro|boolean|Indicates whether the hotel is near a metro station.
843 -|hasPool|boolean|Indicates whether the hotel has a pool.
844 -|hasMall|boolean|Indicates whether the hotel is near a shopping mall.
845 -|cancellationPolicyDescription|string|The description of the cancellation policy.
846 -|cancellationPolicy|object|An object containing details about the cancellation policy.
847 -|flight|object|An object containing details about the flight.
848 -|id|string|A unique identifier for the flight.
849 -|departureDate|string|The departure date in ISO 8601 format.
850 -|returnDate|string|The return date in ISO 8601 format.
851 -|departureTicketsLeft|integer|The number of departure tickets left.
852 -|returnTicketsLeft|integer|The number of return tickets left.
853 -|departureAvailabilityType|string|The availability type of the departure flight.
854 -|returnAvailabilityType|string|The availability type of the return flight.
855 -|isTwoWay|boolean|Indicates whether the flight is two-way.
856 -|sameBaggageForAll|boolean|Indicates whether the same baggage is applicable for all passengers.
857 -|totalBaggage|boolean|Indicates whether total baggage is included.
858 -|departureSegments|array|An array of objects, each representing a departure segment.
859 -|returnSegments|array|An array of objects, each representing a return segment.
860 -|passengers|array|An array of objects, each representing a passenger.
861 -|extraServices|array|An array of extra services included in the package.
862 -|insurancePrice|object|An object containing details about the insurance price.
863 -|pagingId|string|The paging ID for paginated results.
864 -|pageNumber|integer|The page number for paginated results.
865 -|pageCount|integer|The total number of pages.
866 -|totalCount|integer|The total count of packages.
867 -|error|boolean|Indicates whether there was an error.
868 -
869 -=== Paging and Caching ===
870 -
871 -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:
872 -
873 -
874 -==== first request ====
875 -
876 -{{code language="Json"}}
877 - {
878 - "pagingId": "",
879 - "pageNumber": 1,
880 - "pageRowCount":10
881 - }
882 -{{/code}}
883 -
884 -
885 -==== Request with caching ====
886 -
887 -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
888 -
889 -{{code language="Json"}}
890 - {
891 - "pagingId": "80",
892 - "pageNumber": 1,
893 - "pageRowCount":10
894 - }
895 -{{/code}}
896 -
897 -
898 -=== search parameter options ===
899 -
900 -in the request body it's available to filter search results with parameters. parameter examples:
901 -
902 -{{code language="Json"}}
903 - { "totalPriceFrom": 500,
904 - "totalPriceTo": 10000,
905 - "hotelTypes": [
906 - "CityHotel",
907 - "BeachHotel",
908 - "SecondLineBeach"
909 - ],
910 - "hotelClasses": [
911 - "1",
912 - "2",
913 - "3",
914 - "4",
915 - "5",
916 - "6"
917 - ],
918 - "hotelServices": [
919 - "HasAlcohol",
920 - "HasFreeWifi",
921 - "HasMetro",
922 - "HasPool",
923 - "HasMall"
924 - ],
925 - "mealPlans": [
926 - "RO",
927 - "BB",
928 - "HB",
929 - "FB",
930 - "AL"
931 - ]
932 -}
933 -{{/code}}
934 -
935 -
936 -
937 -== Important ==
938 -
939 -{{error}}
940 -It's Important to in every other request header, put Auth token
941 -
942 -**Key **- Authorization
943 -
944 -**Value **- Bearer Token what is given in this response.
945 -
946 -
947 -**also note in headers that:**
948 -
949 -Content-Type - application/json
950 -
951 -**Key - **X-nugios-timezone
952 -
953 -**Value **- 240
954 -{{/error}}