Last modified by Giorgi Mdivnishvili on 2024/07/11 12:45

From version 5.1
edited by Giorgi Mdivnishvili
on 2024/04/11 09:45
Change comment: There is no comment for this version
To version 11.1
edited by Giorgi Mdivnishvili
on 2024/04/11 16:44
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -46,7 +46,35 @@
46 46  }
47 47  {{/code}}
48 48  
49 +== Request example for 2Adults 2Child ==
49 49  
51 +{{code language="Json"}}
52 +{
53 + "departureCountryCode": "KZ",
54 + "departureCityUID": "f0ba6324-f337-405c-8cc7-23d62cf664e8",
55 + "arrivalCountryCode": "AE",
56 + "adults": 2,
57 + "children": 2,
58 + "childrenAges": [
59 + 4,
60 + 8
61 + ],
62 + "departureDate": "2024-05-26T00:00:00",
63 + "returnDate": "2024-06-02T00:00:00",
64 + "departureAndReturnDaysCount": 7,
65 + "checkInDate": "2024-05-26T00:00:00",
66 + "checkOutDate": "2024-06-02T00:00:00",
67 + "checkInAndCheckOutDaysCount": 7,
68 + "directFlightsOnly": true,
69 + "searchCurrency": "USD",
70 +
71 + "pagingId": "",
72 + "pageNumber": 1,
73 + "pageRowCount":5
74 +}
75 +{{/code}}
76 +
77 +
50 50  == Response Body ==
51 51  
52 52  {{code language="json"}}
... ... @@ -713,6 +713,7 @@
713 713  
714 714  === **Request Parameters ** ===
715 715  
744 +(% class="table-bordered" %)
716 716  |=Key|=Type|=Nullable|=Description
717 717  |departureCountryCode|String|No|The ISO 3166-1 alpha-2 code of the departure country. For example, "KZ" for Kazakhstan.
718 718  |departureCityUID|String (UUID)|No|The unique identifier of the departure city. This is a UUID, such as "f0ba6324-f337-405c-8cc7-23d62cf664e8".
... ... @@ -729,114 +729,90 @@
729 729  |pageRowCount|Integer|No|The number of results to return per page. For example, 1 to return 1 result per page.
730 730  |searchCurrency|String|No|The currency in which the search results should be displayed. For example, "USD" for United States Dollar.
731 731  
761 +=== ===
732 732  
733 -=== **Response Parameters** ===
763 +=== **Response Parameters** ===
734 734  
735 -=== Packages ===
765 +(% class="table-bordered" %)
766 +|=Key|=Type|=Description
767 +|packages|Array|An array of travel packages. Each package includes various details about the package.
768 +|packages[].id|String|A unique identifier for the package. This is used to uniquely identify each package.
769 +|packages[].priceCurrency|String|The currency in which the price is denoted. This could be USD, EUR, etc.
770 +|packages[].totalPrice|Number|The total price of the package. This includes all costs associated with the package.
771 +|packages[].agentCommissionPercent|Number|The commission percentage for the agent. This is the percentage of the total price that the agent receives as commission.
772 +|packages[].agentCommissionAmount|Number|The commission amount for the agent. This is the actual amount the agent receives as commission.
773 +|packages[].includedExtrasAmount|Number|The amount for the included extras. This is the cost of any extra services included in the package.
774 +|packages[].priceDifference|Number|The price difference. This could be a discount or a price increase.
775 +|packages[].hotel|Object|An object containing details about the hotel included in the package. This includes information like the hotel name, class, availability, etc.
776 +|packages[].hotel.hotelPriceId|String|The price ID of the hotel. This is used to uniquely identify the price for the hotel.
777 +|packages[].hotel.hotelName|String|The name of the hotel. This is the actual name of the hotel.
778 +|packages[].hotel.hotelCode|String|The code of the hotel. This is a unique code used to identify the hotel.
779 +|packages[].hotel.nights|Number|The number of nights for the stay. This is the duration of the stay at the hotel.
780 +|packages[].hotel.mealPlan|String|The meal plan for the stay. This could be breakfast included, all inclusive, etc.
781 +|packages[].hotel.hotelClass|String|The class of the hotel. This could be 3-star, 4-star, 5-star, etc.
782 +|packages[].hotel.hotelColor|String|The color associated with the hotel. This could be used for categorization or visualization purposes.
783 +|packages[].hotel.availabilityType|String|The availability type of the hotel. This could be available, sold out, etc.
784 +|packages[].hotel.availableRoomsCount|Number|The count of available rooms. This is the number of rooms that are currently available at the hotel.
785 +|packages[].hotel.fewRooms|Boolean|A boolean indicating if there are few rooms left. If true, it means that there are only a few rooms left.
786 +|packages[].hotel.roomCategoryCode|String|The code of the room category. This is a unique code used to identify the room category.
787 +|packages[].hotel.roomCategoryName|String|The name of the room category. This is the actual name of the room category.
788 +|packages[].hotel.placementTypeName|String|The name of the placement type. This could be sea view, garden view, etc.
789 +|packages[].hotel.placementDescription|String|The description of the placement. This provides more details about the placement type.
790 +|packages[].hotel.checkInDate|String|The check-in date. This is the date when the stay at the hotel begins.
791 +|packages[].hotel.checkOutDate|String|The check-out date. This is the date when the stay at the hotel ends.
792 +|packages[].hotel.adults|Number|The number of adults. This is the number of adults that will be staying at the hotel.
793 +|packages[].hotel.children|Number|The number of children. This is the number of children that will be staying at the hotel.
794 +|packages[].hotel.districtUID|String|The UID of the district. This is a unique identifier for the district where the hotel is located.
795 +|packages[].hotel.districtName|String|The name of the district. This is the actual name of the district where the hotel is located.
796 +|packages[].hotel.cityUID|String|The UID of the city. This is a unique identifier for the city where the hotel is located.
797 +|packages[].hotel.cityName|String|The name of the city. This is the actual name of the city where the hotel is located.
798 +|packages[].hotel.countryCode|String|The code of the country. This is a unique code used to identify the country where the hotel is located.
799 +|packages[].hotel.countryName|String|The name of the country. This is the actual name of the country where the hotel is located.
800 +|packages[].hotel.hasAlcohol|Boolean|A boolean indicating if alcohol is available. If true, it means that alcohol is available at the hotel.
801 +|packages[].hotel.hasFreeWifi|Boolean|A boolean indicating if free Wi-Fi is available. If true, it means that free Wi-Fi is available at the hotel.
802 +|packages[].hotel.hasMetro|Boolean|A boolean indicating if metro is available. If true, it means that there is a metro station near the hotel.
803 +|packages[].hotel.hasPool|Boolean|A boolean indicating if a pool is available. If true, it means that the hotel has a pool.
804 +|packages[].hotel.hasMall|Boolean|A boolean indicating if a mall is available. If true, it means that there is a mall near the hotel.
805 +|packages[].hotel.infantMaxAge|Number|The maximum age for an infant. This is the maximum age at which a person is considered an infant.
806 +|packages[].hotel.childMinAge|Number|The minimum age for a child. This is the minimum age at which a person is considered a child.
807 +|packages[].hotel.childMaxAge|Number|The maximum age for a child. This is the maximum age at which a person is considered a child.
808 +|packages[].hotel.teenMinAge|Number|The minimum age for a teen. This is the minimum age at which a person is considered a teen.
809 +|packages[].hotel.teenMaxAge|Number|The maximum age for a teen. This is the maximum age at which a person is considered a teen.
810 +|packages[].hotel.adultMinAge|Number|The minimum age for an adult. This is the minimum age at which a person is considered an adult.
811 +|packages[].hotel.cancellationPolicyDescription|String|The description of the cancellation policy. This provides more details about the cancellation policy of the hotel.
812 +|packages[].hotel.cancellationPolicy|Object|An object containing details about the cancellation policy. This includes information like the cancellation deadline, cancellation fee, etc.
813 +|packages[].flight|Object|An object containing details about the flight included in the package. This includes information like the flight ID, departure date, return date, etc.
814 +|packages[].flight.id|String|The ID of the flight. This is used to uniquely identify the flight.
815 +|packages[].flight.departureDate|String|The departure date of the flight. This is the date when the flight departs.
816 +|packages[].flight.returnDate|String|The return date of the flight. This is the date when the flight returns.
817 +|packages[].flight.departureTicketsLeft|Number|The number of departure tickets left. This is the number of tickets that are still available for the departure flight.
818 +|packages[].flight.returnTicketsLeft|Number|The number of return tickets left. This is the number of tickets that are still available for the return flight.
819 +|packages[].flight.departureAvailabilityType|String|The availability type of the departure flight. This could be available, sold out, etc.
820 +|packages[].flight.returnAvailabilityType|String|The availability type of the return flight. This could be available, sold out, etc.
821 +|packages[].flight.isTwoWay|Boolean|A boolean indicating if the flight is two-way. If true, it means that the flight includes both departure and return.
822 +|packages[].flight.sameBaggageForAll|Boolean|A boolean indicating if the same baggage is for all. If true, it means that the same baggage allowance applies to all passengers.
823 +|packages[].flight.totalBaggage|Boolean|A boolean indicating if total baggage is included. If true, it means that the total baggage allowance is included in the price.
824 +|packages[].flight.isBlock|Boolean|A boolean indicating if the flight is blocked. If true, it means that the flight is currently blocked and cannot be booked.
825 +|packages[].flight.class|String|The class of the flight. This could be economy, business, first class, etc.
826 +|packages[].flight.departureSegments|Array|An array containing details about the departure segments. Each segment includes information like the departure airport, arrival airport, departure time, arrival time, etc.
827 +|packages[].flight.returnSegments|Array|An array containing details about the return segments. Each segment includes information like the departure airport, arrival airport, departure time, arrival time, etc.
828 +|packages[].flight.passengers|Array|An array containing details about the passengers. Each passenger includes information like the passenger type, baggage allowance, etc.
829 +|packages[].extraServices|Array|An array of any extra services included in the package. Each service includes information like the service name, service price, etc.
830 +|packages[].insurancePrice|Object|An object containing details about the insurance price included in the package. This includes information like the insurance type, insurance price, etc.
831 +|packages[].cacheKey|String|The cache key. This is used to cache the package details for faster retrieval.
832 +|packages[].sortCheckInOut|String|The check-in and check-out dates for sorting. This is used to sort the packages based on the check-in and check-out dates.
833 +|packages[].sortAirline|String|The airline for sorting. This is used to sort the packages based on the airline.
834 +|packages[].sortHotelName|String|The hotel name for sorting. This is used to sort the packages based on the hotel name.
835 +|packages[].sortDetails|String|The details for sorting. This is used to sort the packages based on various details.
836 +|packages[].sortPlacement|String|The placement for sorting. This is used to sort the packages based on the placement.
837 +|pagingId|String|An identifier for the page. This is used to uniquely identify each page of results.
838 +|pageNumber|Number|The current page number. This is the number of the current page of results.
839 +|pageCount|Number|The total number of pages. This is the total number of pages of results.
840 +|totalCount|Number|The total count of packages. This is the total number of packages in all pages of results.
841 +|error|Boolean|A boolean indicating whether there was an error. If true, it means that there was an error in retrieving the packages.
736 736  
737 -|=Field|=Type|=Description
738 -|id|string|Unique identifier for the package
739 -|priceCurrency|string|Currency for the price
740 -|totalPrice|number|Total price of the package
741 -|agentCommissionPercent|number|Commission percentage for the agent
742 -|agentCommissionAmount|number|Commission amount for the agent
743 -|includedExtrasAmount|integer|Amount of included extras
744 -|priceDifference|integer|Price difference
745 -|hotel|object|Details about the hotel
746 -|flight|object|Details about the flight
747 -|extraServices|array|Extra services included in the package
748 -|insurancePrice|object|Details about the insurance price
749 -|cacheKey|string|Cache key
750 -|sortCheckInOut|string|Sorting parameter based on check-in and check-out dates
751 -|sortAirline|string|Sorting parameter based on airline
752 -|sortHotelName|string|Sorting parameter based on hotel name
753 -|sortDetails|string|Sorting parameter based on details
754 -|sortPlacement|string|Sorting parameter based on placement
843 +==== ====
755 755  
756 -=== Hotel ===
757 -
758 -|=Field|=Type|=Description
759 -|hotelPriceId|string|Unique identifier for the hotel price
760 -|hotelName|string|Name of the hotel
761 -|hotelCode|string|Code of the hotel
762 -|nights|integer|Number of nights
763 -|mealPlan|string|Meal plan
764 -|hotelClass|string|Class of the hotel
765 -|hotelColor|string|Color associated with the hotel
766 -|availabilityType|string|Availability type of the hotel
767 -|availableRoomsCount|integer|Number of available rooms
768 -|fewRooms|boolean|Whether there are few rooms left
769 -|roomCategoryCode|string|Code of the room category
770 -|roomCategoryName|string|Name of the room category
771 -|placementTypeName|string|Name of the placement type
772 -|placementDescription|string|Description of the placement
773 -|checkInDate|string|Check-in date
774 -|checkOutDate|string|Check-out date
775 -|adults|integer|Number of adults
776 -|children|integer|Number of children
777 -|districtUID|string|Unique identifier for the district
778 -|districtName|string|Name of the district
779 -|cityUID|string|Unique identifier for the city
780 -|cityName|string|Name of the city
781 -|countryCode|string|Country code
782 -|countryName|string|Name of the country
783 -|hasAlcohol|boolean|Whether the hotel has alcohol
784 -|hasFreeWifi|boolean|Whether the hotel has free Wi-Fi
785 -|hasMetro|boolean|Whether the hotel is near a metro
786 -|hasPool|boolean|Whether the hotel has a pool
787 -|hasMall|boolean|Whether the hotel is near a mall
788 -|infantMaxAge|number|Maximum age for an infant
789 -|childMinAge|number|Minimum age for a child
790 -|childMaxAge|number|Maximum age for a child
791 -|teenMinAge|number|Minimum age for a teen
792 -|teenMaxAge|number|Maximum age for a teen
793 -|adultMinAge|number|Minimum age for an adult
794 -|cancellationPolicyDescription|string|Description of the cancellation policy
795 -|cancellationPolicy|object|Details about the cancellation policy
796 -
797 -=== Flight ===
798 -
799 -|=Field|=Type|=Description
800 -|id|string|Unique identifier for the flight
801 -|departureDate|string|Departure date
802 -|returnDate|string|Return date
803 -|departureTicketsLeft|integer|Number of departure tickets left
804 -|returnTicketsLeft|integer|Number of return tickets left
805 -|departureAvailabilityType|string|Availability type for the departure
806 -|returnAvailabilityType|string|Availability type for the return
807 -|isTwoWay|boolean|Whether the flight is two-way
808 -|sameBaggageForAll|boolean|Whether the same baggage is for all
809 -|totalBaggage|boolean|Whether the total baggage is included
810 -|isBlock|boolean|Whether the flight is blocked
811 -|class|string|Class of the flight
812 -|departureSegments|array|Details about the departure segments
813 -|returnSegments|array|Details about the return segments
814 -|passengers|array|Details about the passengers
815 -
816 -=== InsurancePrice ===
817 -
818 -|=Field|=Type|=Description
819 -|name|string|Name of the insurance
820 -|price|number|Price of the insurance
821 -|actualStartDate|string|Start date of the insurance
822 -|actualEndDate|string|End date of the insurance
823 -|optional|boolean|Whether the insurance is optional
824 -|includedInPackagePrice|boolean|Whether the insurance is included in the package price
825 -
826 -=== Paging ===
827 -
828 -|=Field|=Type|=Description
829 -|pagingId|string|Unique identifier for the paging
830 -|pageNumber|integer|Current page number
831 -|pageCount|integer|Total number of pages
832 -|totalCount|integer|Total count of items
833 -|error|boolean|Whether there is an error
834 -
835 -=== Paging and Caching ===
836 -
837 -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:
838 -
839 -
840 840  ==== first request ====
841 841  
842 842  {{code language="Json"}}
... ... @@ -847,10 +847,12 @@
847 847   }
848 848  {{/code}}
849 849  
855 +While making first search request, paging id should be empty,  "pageNumber":  and  "pageRowCount":10 means that, in response there will be returned maximum 10 packages per page.
850 850  
857 +
851 851  ==== Request with caching ====
852 852  
853 -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
860 +after receiving response from first search request, in the end we can see pagingId- number, wchich we can use for caching, and (pageinatoin) for switch pagenumbers, and displaying results as we whant. For cleaning cache, it's important to make new request without cllear pagingID, like this  "pagingId": "",
854 854  
855 855  {{code language="Json"}}
856 856   {
... ... @@ -903,18 +903,18 @@
903 903  == Important ==
904 904  
905 905  {{error}}
906 -It's Important to in every other request header, put Auth token
913 +=== Implementing Authorization in Subsequent Requests ===
907 907  
908 -**Key **- Authorization
915 +For every API request after the initial authentication, it's crucial to include the authorization token in the request header. This ensures your requests are authorized and can access the necessary resources. Here's how to properly include your token:
909 909  
910 -**Value **- Bearer Token what is given in this response.
917 +* **Header Key:** Authorization
918 +* **Header Value:** Bearer [Your Token Here] - Use the bearer token provided in the initial authentication response. The authorization type should be specified as Bearer Token.
911 911  
920 +Additionally, to ensure your requests are properly formatted and recognized, include the following headers:
912 912  
913 -**also note in headers that:**
922 +* **Content-Type:** Specify this header as application/json to indicate the format of the request body.
923 +* **Header Key:** X-nugios-timezone
924 +* **Header Value:** 240 - Adjust this value to match your local timezone offset in minutes.
914 914  
915 -Content-Type - application/json
916 -
917 -**Key - **X-nugios-timezone
918 -
919 -**Value **- 240
926 +Incorporating these headers with their respective values is essential for the successful processing of your API requests.
920 920  {{/error}}