Changes for page 3. CalcCheckout

Last modified by Giorgi Mdivnishvili on 2025/02/03 12:34

From version 1.4
edited by Giorgi Mdivnishvili
on 2024/04/12 18:49
Change comment: There is no comment for this version
To version 1.2
edited by Giorgi Mdivnishvili
on 2024/04/12 18:43
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,33 +1,43 @@
1 -(% class="box floatinginfobox" %)
2 -(((
3 -**Contents**
1 +{{box cssClass="floatinginfobox" title="**Contents**"}}
2 +
4 4  
5 -(% class="wikitoc" %)
6 -* [[Method Description>>path:#HMethodDescription]]
7 -** [[Endpoint URL - ~[POST~]>>path:#HEndpointURL-5BPOST5D]]
8 -** [[Request Parameters>>path:#HRequestParameters]]
9 -** [[Request Body>>path:#HRequestBody]]
10 -** [[Request Body example>>path:#HRequestBodyexample]]
11 -** [[Response>>path:#HResponse]]
12 -*** [[Response example>>path:#HResponseexample]]
13 -*** [[Schema>>path:#HSchema]]
14 -** [[Descriptions>>path:#HDescriptions]]
15 -*** [[Request>>path:#HRequest]]
16 -*** [[Response>>path:#HResponse-1]]
17 -)))
4 +{{toc/}}
5 +{{/box}}
18 18  
19 19  = Method Description =
20 20  
21 21  
22 -Once the desired tour variation has been selected, the next step involves calculating the package price in greater detail, typically just before proceeding with the reservation. To accomplish this, the **CalcCheckout **method must be utilized. This stage marks the pre-booking phase of the process.
10 +This method is specifically designed for the retrieval of hotel pricing information. It supports queries for both current date prices and for prices over a specified date range.
23 23  
12 +**Parameters:**
24 24  
14 +* stayDays (integer): Indicates the starting point of the stay duration in days. A default value of 0 signifies immediate date pricing retrieval.
15 +* stayDaysTo (integer): Specifies the endpoint of the stay duration in days. The initial value is set to 0, indicating the system will fetch prices for the immediate date by default.
16 +
17 +**Constraints:**
18 +
19 +* The difference between stayDays and stayDaysTo must not exceed 7 days. This limitation is imposed to optimize the query performance and ensure the relevance of the returned data.
20 +
21 +**Implementation:**
22 +
23 +1. **Query Initialization**: Begin by defining the stayDays and stayDaysTo parameters to frame your search criteria. These parameters enable the system to understand the desired duration for which the hotel pricing information is required.
24 +1. **Data Retrieval**: Execute the method with the provided parameters. The system processes the input and queries the database for hotel prices that match the specified duration, taking into account the constraint on the maximum duration difference.
25 +1. **Result Processing**: Upon successful retrieval, the system presents the hotel pricing data. This data is either for the current date (when both parameters are set to 0) or for the defined date range, adhering to the specified duration constraints.
26 +
27 +**Example Usage:** (Examples of API calls or function usage would typically be provided here, demonstrating how to correctly implement the method to retrieve hotel prices based on immediate dates or a specified date range.)
28 +
29 +**Notes:**
30 +
31 +* This method ensures efficient access to hotel pricing information, catering to both immediate and short-term planning needs by leveraging a simple, parameter-driven query mechanism.
32 +
33 +This documentation provides a detailed guide for developers on utilizing the hotel pricing retrieval method, emphasizing parameter usage, operational constraints, and the process flow for executing queries and handling results.
34 +
35 +
25 25  == Endpoint URL - [POST] ==
26 26  
27 -(% class="box infomessage" %)
28 -(((
29 -[[https:~~/~~/integration.kazunion.com/api/Checkout/CalcCheckout>>url:https://integration.kazunion.com/api/Checkout/CalcCheckout]]
30 -)))
38 +{{info}}
39 +[[https:~~/~~/integration.kazunion.com/api/OnlyHotelPackages/SearchHotelPrices>>https://integration.kazunion.com/api/OnlyHotelPackages/SearchHotelPrices]]
40 +{{/info}}
31 31  
32 32  
33 33  == Request Parameters ==
... ... @@ -37,917 +37,426 @@
37 37  None
38 38  )))
39 39  
40 -
41 41  == Request Body ==
42 42  
43 -(% class="box" %)
44 -(((
45 -(% class="code" %)
46 -(((
52 +{{code language="Json"}}
47 47  {
48 - (% style="font-weight: bold; color: #008000;" %)"reservationId"(%%): (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%),
49 - (% style="font-weight: bold; color: #008000;" %)"calcTourPackageRequests"(%%): [
54 + "countryCode": "string",
55 + "locations": [
50 50   {
51 - (% style="font-weight: bold; color: #008000;" %)"packageId"(%%): (% style="color: #BA2121;" %)"string"(%%),
52 - (% style="font-weight: bold; color: #008000;" %)"extraServicePriceCodes"(%%): [
53 - (% style="color: #BA2121;" %)"string"(%%)
54 - ],
55 - (% style="font-weight: bold; color: #008000;" %)"flightPassengers"(%%): [
56 - {
57 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"string"(%%),
58 - (% style="font-weight: bold; color: #008000;" %)"selectedForwardBaggageCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
59 - (% style="font-weight: bold; color: #008000;" %)"selectedBackwardBaggageCode"(%%): (% style="color: #BA2121;" %)"string"(%%)
60 - }
61 - ],
62 - (% style="font-weight: bold; color: #008000;" %)"includeInsurance"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
63 - (% style="font-weight: bold; color: #008000;" %)"refreshPrices"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%)
57 + "type": "string",
58 + "parent": "string",
59 + "label": "string",
60 + "subLabel": "string",
61 + "value": "string",
62 + "tag": "string"
64 64   }
65 65   ],
66 - (% style="font-weight: bold; color: #008000;" %)"calcOnlyHotelPackageRequests"(%%): [
67 - {
68 - (% style="font-weight: bold; color: #008000;" %)"packageId"(%%): (% style="color: #BA2121;" %)"string"(%%),
69 - (% style="font-weight: bold; color: #008000;" %)"extraServicePriceCodes"(%%): [
70 - (% style="color: #BA2121;" %)"string"(%%)
71 - ],
72 - (% style="font-weight: bold; color: #008000;" %)"includeInsurance"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
73 - (% style="font-weight: bold; color: #008000;" %)"refreshPrices"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%)
74 - }
65 + "checkInDate": "2023-12-14",
66 + "checkInDateTo": "2023-12-14",
67 + "checkOutDate": "2023-12-14",
68 + "stayDays": 0,
69 + "stayDaysTo": 0,
70 + "adults": 0,
71 + "children": 0,
72 + "childrenAges": [
73 + 0
75 75   ],
76 - (% style="font-weight: bold; color: #008000;" %)"calcOnlyAviaPackageRequests"(%%): [
77 - {
78 - (% style="font-weight: bold; color: #008000;" %)"packageId"(%%): (% style="color: #BA2121;" %)"string"(%%),
79 - (% style="font-weight: bold; color: #008000;" %)"refreshPrices"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
80 - (% style="font-weight: bold; color: #008000;" %)"flightPassengers"(%%): [
81 - {
82 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"string"(%%),
83 - (% style="font-weight: bold; color: #008000;" %)"selectedForwardBaggageCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
84 - (% style="font-weight: bold; color: #008000;" %)"selectedBackwardBaggageCode"(%%): (% style="color: #BA2121;" %)"string"(%%)
85 - }
86 - ]
87 - }
75 + "extendedSearch": true,
76 + "totalPriceFrom": 0,
77 + "totalPriceTo": 0,
78 + "recommended": true,
79 + "popular": true,
80 + "freeSale": true,
81 + "groupByHotel": true,
82 + "hotelCodes": [
83 + "string"
88 88   ],
89 - (% style="font-weight: bold; color: #008000;" %)"hotels"(%%): [
90 - {
91 - (% style="font-weight: bold; color: #008000;" %)"hotelPriceId"(%%): (% style="color: #BA2121;" %)"string"(%%),
92 - (% style="font-weight: bold; color: #008000;" %)"agentConfirmationNumber"(%%): (% style="color: #BA2121;" %)"string"(%%),
93 - (% style="font-weight: bold; color: #008000;" %)"note"(%%): (% style="color: #BA2121;" %)"string"(%%),
94 - (% style="font-weight: bold; color: #008000;" %)"touristIds"(%%): [
95 - (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%)
96 - ]
97 - }
85 + "mealPlans": [
86 + "string"
98 98   ],
99 - (% style="font-weight: bold; color: #008000;" %)"tourists"(%%): [
100 - {
101 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%),
102 - (% style="font-weight: bold; color: #008000;" %)"firstName"(%%): (% style="color: #BA2121;" %)"string"(%%),
103 - (% style="font-weight: bold; color: #008000;" %)"lastName"(%%): (% style="color: #BA2121;" %)"string"(%%),
104 - (% style="font-weight: bold; color: #008000;" %)"birthDate"(%%): (% style="color: #BA2121;" %)"2024-04-11T03:34:15.828Z"(%%),
105 - (% style="font-weight: bold; color: #008000;" %)"passportNumber"(%%): (% style="color: #BA2121;" %)"string"(%%),
106 - (% style="font-weight: bold; color: #008000;" %)"passportExpiry"(%%): (% style="color: #BA2121;" %)"2024-04-11T03:34:15.828Z"(%%),
107 - (% style="font-weight: bold; color: #008000;" %)"passportIssue"(%%): (% style="color: #BA2121;" %)"2024-04-11T03:34:15.828Z"(%%),
108 - (% style="font-weight: bold; color: #008000;" %)"citizenship"(%%): (% style="color: #BA2121;" %)"string"(%%),
109 - (% style="font-weight: bold; color: #008000;" %)"tin"(%%): (% style="color: #BA2121;" %)"string"(%%),
110 - (% style="font-weight: bold; color: #008000;" %)"isMale"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
111 - (% style="font-weight: bold; color: #008000;" %)"flightIds"(%%): [
112 - (% style="color: #BA2121;" %)"string"(%%)
113 - ],
114 - (% style="font-weight: bold; color: #008000;" %)"arrivalFlightInfo"(%%): {
115 - (% style="font-weight: bold; color: #008000;" %)"flightNumber"(%%): (% style="color: #BA2121;" %)"string"(%%),
116 - (% style="font-weight: bold; color: #008000;" %)"terminalCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
117 - (% style="font-weight: bold; color: #008000;" %)"date"(%%): (% style="color: #BA2121;" %)"2024-04-11T03:34:15.828Z"(%%),
118 - (% style="font-weight: bold; color: #008000;" %)"time"(%%): (% style="color: #BA2121;" %)"string"(%%)
119 - },
120 - (% style="font-weight: bold; color: #008000;" %)"departureFlightInfo"(%%): {
121 - (% style="font-weight: bold; color: #008000;" %)"flightNumber"(%%): (% style="color: #BA2121;" %)"string"(%%),
122 - (% style="font-weight: bold; color: #008000;" %)"terminalCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
123 - (% style="font-weight: bold; color: #008000;" %)"date"(%%): (% style="color: #BA2121;" %)"2024-04-11T03:34:15.828Z"(%%),
124 - (% style="font-weight: bold; color: #008000;" %)"time"(%%): (% style="color: #BA2121;" %)"string"(%%)
125 - },
126 - (% style="font-weight: bold; color: #008000;" %)"selectedVisaId"(%%): (% style="color: #BA2121;" %)"string"(%%),
127 - (% style="font-weight: bold; color: #008000;" %)"transfers"(%%): [
128 - {
129 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"string"(%%),
130 - (% style="font-weight: bold; color: #008000;" %)"selectedTransferPriceId"(%%): (% style="color: #BA2121;" %)"string"(%%)
131 - }
132 - ]
133 - }
88 + "hotelClasses": [
89 + "string"
134 134   ],
135 - (% style="font-weight: bold; color: #008000;" %)"note"(%%): (% style="color: #BA2121;" %)"string"(%%),
136 - (% style="font-weight: bold; color: #008000;" %)"contactPhone"(%%): (% style="color: #BA2121;" %)"string"(%%)
137 -}\\
138 -)))
139 -)))
91 + "hotelTypes": [
92 + "CityHotel"
93 + ],
94 + "hotelServices": [
95 + "HasAlcohol"
96 + ],
97 + "pagingId": "string",
98 + "pageNumber": 0,
99 + "pageRowCount": 0
100 +}
101 +{{/code}}
140 140  
141 -(% class="wikigeneratedid" id="HRequestBodyexample" %)
142 -(% id="cke_bm_10575S" style="display:none" %)
143 -
144 -
145 -
146 146  == Request Body example ==
147 147  
148 -(% class="box" %)
149 -(((
150 -(% class="code" %)
151 -(((
152 -{
153 - (% style="font-weight: bold; color: #008000;" %)"calcTourPackageRequests"(%%): [
154 - {
155 - (% style="font-weight: bold; color: #008000;" %)"refreshPrices"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
156 - (% style="font-weight: bold; color: #008000;" %)"packageId"(%%): (% style="color: #BA2121;" %)"tour:7caef71d-25e3-4882-b0db-81e766af2b72:fa7a89d5-1c20-4004-b3d2-f8d08163827f:53552191-59ea-469d-ae9d-5b848da8839d"(%%),
157 - (% style="font-weight: bold; color: #008000;" %)"flightPassengers"(%%): [
158 - {
159 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"53552191-59ea-469d-ae9d-5b848da8839d-A1"(%%),
160 - (% style="font-weight: bold; color: #008000;" %)"selectedForwardBaggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%),
161 - (% style="font-weight: bold; color: #008000;" %)"selectedBackwardBaggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%)
162 - },
163 - {
164 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"53552191-59ea-469d-ae9d-5b848da8839d-A2"(%%),
165 - (% style="font-weight: bold; color: #008000;" %)"selectedForwardBaggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%),
166 - (% style="font-weight: bold; color: #008000;" %)"selectedBackwardBaggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%)
167 - }
168 - ],
169 - (% style="font-weight: bold; color: #008000;" %)"extraServicePriceCodes"(%%): [],
170 - (% style="font-weight: bold; color: #008000;" %)"includeInsurance"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%)
171 - }
172 - ],
173 - (% style="font-weight: bold; color: #008000;" %)"calcOnlyHotelPackageRequests"(%%): [],
174 - (% style="font-weight: bold; color: #008000;" %)"calcOnlyAviaPackageRequests"(%%): []
175 -}
176 -)))
177 -)))
178 178  
179 -
180 -== Response ==
181 -
182 -(% class="box" %)
183 -(((
184 -(% class="code" %)
185 -(((
106 +{{code language="Json"}}
186 186  {
187 - (% style="font-weight: bold; color: #008000;" %)"error"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
188 - (% style="font-weight: bold; color: #008000;" %)"errorCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
189 - (% style="font-weight: bold; color: #008000;" %)"errorDescription"(%%): (% style="color: #BA2121;" %)"string"(%%),
190 - (% style="font-weight: bold; color: #008000;" %)"userErrorDescription"(%%): (% style="color: #BA2121;" %)"string"(%%),
191 - (% style="font-weight: bold; color: #008000;" %)"priceCurrency"(%%): (% style="color: #BA2121;" %)"string"(%%),
192 - (% style="font-weight: bold; color: #008000;" %)"totalPrice"(%%): (% style="color: #666666;" %)0(%%),
193 - (% style="font-weight: bold; color: #008000;" %)"agentCommissionPercent"(%%): (% style="color: #666666;" %)0(%%),
194 - (% style="font-weight: bold; color: #008000;" %)"agentCommissionAmount"(%%): (% style="color: #666666;" %)0(%%),
195 - (% style="font-weight: bold; color: #008000;" %)"requiredCitizenIdentifiers"(%%): [
196 - {
197 - (% style="font-weight: bold; color: #008000;" %)"countryCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
198 - (% style="font-weight: bold; color: #008000;" %)"identifierType"(%%): (% style="color: #BA2121;" %)"TIN"(%%)
199 - }
108 + "countryCode": "AE",
109 + "checkInDate": "2024-02-15",
110 + "checkInDateTo": "2024-02-20",
111 +
112 + "stayDays": 4,
113 + "stayDaysTo": 6,
114 + "adults": 1,
115 + "children": 1,
116 + "childrenAges": [
117 + 1
200 200   ],
201 - (% style="font-weight: bold; color: #008000;" %)"hotels"(%%): [
202 - {
203 - (% style="font-weight: bold; color: #008000;" %)"hotelPriceId"(%%): (% style="color: #BA2121;" %)"string"(%%),
204 - (% style="font-weight: bold; color: #008000;" %)"touristIds"(%%): [
205 - (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%)
206 - ],
207 - (% style="font-weight: bold; color: #008000;" %)"errorCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
208 - (% style="font-weight: bold; color: #008000;" %)"errorMessage"(%%): (% style="color: #BA2121;" %)"string"(%%),
209 - (% style="font-weight: bold; color: #008000;" %)"description"(%%): (% style="color: #BA2121;" %)"string"(%%)
210 - }
119 + "extendedSearch": false,
120 + "totalPriceFrom": 10,
121 + "totalPriceTo": 10000,
122 + "recommended": false,
123 + "popular": true,
124 + "freeSale": true,
125 + "groupByHotel": true,
126 + "hotelCodes": [
127 +
211 211   ],
212 - (% style="font-weight: bold; color: #008000;" %)"tourists"(%%): [
213 - {
214 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%),
215 - (% style="font-weight: bold; color: #008000;" %)"age"(%%): (% style="color: #666666;" %)0(%%),
216 - (% style="font-weight: bold; color: #008000;" %)"isAdult"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
217 - (% style="font-weight: bold; color: #008000;" %)"flightIds"(%%): [
218 - (% style="color: #BA2121;" %)"string"(%%)
219 - ],
220 - (% style="font-weight: bold; color: #008000;" %)"flights"(%%): [
221 - {
222 - (% style="font-weight: bold; color: #008000;" %)"flightId"(%%): (% style="color: #BA2121;" %)"string"(%%),
223 - (% style="font-weight: bold; color: #008000;" %)"note"(%%): (% style="color: #BA2121;" %)"string"(%%)
224 - }
225 - ],
226 - (% style="font-weight: bold; color: #008000;" %)"arrivalFlightInfo"(%%): {
227 - (% style="font-weight: bold; color: #008000;" %)"flightNumber"(%%): (% style="color: #BA2121;" %)"string"(%%),
228 - (% style="font-weight: bold; color: #008000;" %)"terminalCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
229 - (% style="font-weight: bold; color: #008000;" %)"date"(%%): (% style="color: #BA2121;" %)"2024-04-11T05:03:16.796Z"(%%),
230 - (% style="font-weight: bold; color: #008000;" %)"time"(%%): (% style="color: #BA2121;" %)"string"(%%)
231 - },
232 - (% style="font-weight: bold; color: #008000;" %)"departureFlightInfo"(%%): {
233 - (% style="font-weight: bold; color: #008000;" %)"flightNumber"(%%): (% style="color: #BA2121;" %)"string"(%%),
234 - (% style="font-weight: bold; color: #008000;" %)"terminalCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
235 - (% style="font-weight: bold; color: #008000;" %)"date"(%%): (% style="color: #BA2121;" %)"2024-04-11T05:03:16.796Z"(%%),
236 - (% style="font-weight: bold; color: #008000;" %)"time"(%%): (% style="color: #BA2121;" %)"string"(%%)
237 - },
238 - (% style="font-weight: bold; color: #008000;" %)"insurancePrice"(%%): {
239 - (% style="font-weight: bold; color: #008000;" %)"insuranceId"(%%): (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%),
240 - (% style="font-weight: bold; color: #008000;" %)"insuranceServiceId"(%%): (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%),
241 - (% style="font-weight: bold; color: #008000;" %)"insurancePriceId"(%%): (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%),
242 - (% style="font-weight: bold; color: #008000;" %)"touristId"(%%): (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%),
243 - (% style="font-weight: bold; color: #008000;" %)"insuranceName"(%%): (% style="color: #BA2121;" %)"string"(%%),
244 - (% style="font-weight: bold; color: #008000;" %)"insuranceDescription"(%%): (% style="color: #BA2121;" %)"string"(%%),
245 - (% style="font-weight: bold; color: #008000;" %)"contragentName"(%%): (% style="color: #BA2121;" %)"string"(%%),
246 - (% style="font-weight: bold; color: #008000;" %)"contragentFullName"(%%): (% style="color: #BA2121;" %)"string"(%%),
247 - (% style="font-weight: bold; color: #008000;" %)"actualStartDate"(%%): (% style="color: #BA2121;" %)"2024-04-11T05:03:16.796Z"(%%),
248 - (% style="font-weight: bold; color: #008000;" %)"actualEndDate"(%%): (% style="color: #BA2121;" %)"2024-04-11T05:03:16.796Z"(%%),
249 - (% style="font-weight: bold; color: #008000;" %)"costCurrencyCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
250 - (% style="font-weight: bold; color: #008000;" %)"costAmount"(%%): (% style="color: #666666;" %)0(%%),
251 - (% style="font-weight: bold; color: #008000;" %)"priceCurrencyCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
252 - (% style="font-weight: bold; color: #008000;" %)"priceAmount"(%%): (% style="color: #666666;" %)0(%%),
253 - (% style="font-weight: bold; color: #008000;" %)"coverageCurrencyCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
254 - (% style="font-weight: bold; color: #008000;" %)"coverageAmount"(%%): (% style="color: #666666;" %)0(%%)
255 - },
256 - (% style="font-weight: bold; color: #008000;" %)"selectedVisaId"(%%): (% style="color: #BA2121;" %)"string"(%%),
257 - (% style="font-weight: bold; color: #008000;" %)"transfers"(%%): [
258 - {
259 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"string"(%%),
260 - (% style="font-weight: bold; color: #008000;" %)"type"(%%): (% style="color: #BA2121;" %)"Arrival"(%%),
261 - (% style="font-weight: bold; color: #008000;" %)"flightId"(%%): (% style="color: #BA2121;" %)"string"(%%),
262 - (% style="font-weight: bold; color: #008000;" %)"flightInfo"(%%): {
263 - (% style="font-weight: bold; color: #008000;" %)"flightNumber"(%%): (% style="color: #BA2121;" %)"string"(%%),
264 - (% style="font-weight: bold; color: #008000;" %)"terminalCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
265 - (% style="font-weight: bold; color: #008000;" %)"date"(%%): (% style="color: #BA2121;" %)"2024-04-11T05:03:16.796Z"(%%),
266 - (% style="font-weight: bold; color: #008000;" %)"time"(%%): (% style="color: #BA2121;" %)"string"(%%)
267 - },
268 - (% style="font-weight: bold; color: #008000;" %)"checkInHotelId"(%%): (% style="color: #BA2121;" %)"string"(%%),
269 - (% style="font-weight: bold; color: #008000;" %)"checkOutHotelId"(%%): (% style="color: #BA2121;" %)"string"(%%),
270 - (% style="font-weight: bold; color: #008000;" %)"selectedTransferPriceId"(%%): (% style="color: #BA2121;" %)"string"(%%),
271 - (% style="font-weight: bold; color: #008000;" %)"transferPrices"(%%): [
272 - {
273 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"string"(%%),
274 - (% style="font-weight: bold; color: #008000;" %)"name"(%%): (% style="color: #BA2121;" %)"string"(%%),
275 - (% style="font-weight: bold; color: #008000;" %)"adultPlaces"(%%): (% style="color: #666666;" %)0(%%),
276 - (% style="font-weight: bold; color: #008000;" %)"childPlaces"(%%): (% style="color: #666666;" %)0(%%),
277 - (% style="font-weight: bold; color: #008000;" %)"perPersonPrice"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
278 - (% style="font-weight: bold; color: #008000;" %)"adultPrice"(%%): (% style="color: #666666;" %)0(%%),
279 - (% style="font-weight: bold; color: #008000;" %)"childPrice"(%%): (% style="color: #666666;" %)0(%%)
280 - }
281 - ]
282 - }
283 - ],
284 - (% style="font-weight: bold; color: #008000;" %)"errorCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
285 - (% style="font-weight: bold; color: #008000;" %)"errorMessage"(%%): (% style="color: #BA2121;" %)"string"(%%),
286 - (% style="font-weight: bold; color: #008000;" %)"description"(%%): (% style="color: #BA2121;" %)"string"(%%)
287 - }
129 + "mealPlans": [
130 +
288 288   ],
289 - (% style="font-weight: bold; color: #008000;" %)"visas"(%%): [
290 - {
291 - (% style="font-weight: bold; color: #008000;" %)"prid"(%%): (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%),
292 - (% style="font-weight: bold; color: #008000;" %)"prName"(%%): (% style="color: #BA2121;" %)"string"(%%),
293 - (% style="font-weight: bold; color: #008000;" %)"prValue"(%%): (% style="color: #666666;" %)0(%%),
294 - (% style="font-weight: bold; color: #008000;" %)"sortingOrder"(%%): (% style="color: #666666;" %)0(%%)
295 - }
132 + "hotelClasses": [
133 +
296 296   ],
297 - (% style="font-weight: bold; color: #008000;" %)"terminals"(%%): [
298 - {
299 - (% style="font-weight: bold; color: #008000;" %)"terminalCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
300 - (% style="font-weight: bold; color: #008000;" %)"cityUID"(%%): (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%),
301 - (% style="font-weight: bold; color: #008000;" %)"districtUID"(%%): (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%),
302 - (% style="font-weight: bold; color: #008000;" %)"terminalName"(%%): (% style="color: #BA2121;" %)"string"(%%),
303 - (% style="font-weight: bold; color: #008000;" %)"countryCode"(%%): (% style="color: #BA2121;" %)"string"(%%),
304 - (% style="font-weight: bold; color: #008000;" %)"note"(%%): (% style="color: #BA2121;" %)"string"(%%)
305 - }
135 + "hotelTypes": [
136 +
306 306   ],
307 - (% style="font-weight: bold; color: #008000;" %)"containsError"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
308 - (% style="font-weight: bold; color: #008000;" %)"refreshPriceResult"(%%): (% style="color: #BA2121;" %)"Success"(%%),
309 - (% style="font-weight: bold; color: #008000;" %)"reservationId"(%%): (% style="color: #BA2121;" %)"3fa85f64-5717-4562-b3fc-2c963f66afa6"(%%),
310 - (% style="font-weight: bold; color: #008000;" %)"reservationDetailsUnavailable"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%)
138 + "hotelServices": [
139 +
140 + ],
141 + "pagingId": "",
142 + "pageNumber": 3,
143 + "pageRowCount": 10
311 311  }
312 -)))
313 -)))
145 +{{/code}}
314 314  
147 +== Response Body ==
315 315  
316 -=== Response example ===
149 +{{code language="json"}}
150 +[
151 + {
152 + "hotelCode": "string",
153 + "hotelName": "string",
154 + "hotelClass": "string",
155 + "cityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
156 + "countryCode": "string",
157 + "countryName": "string",
158 + "districtUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
159 + "cityName": "string",
160 + "districtName": "string",
161 + "hotelType": "CityHotel",
162 + "latitude": "string",
163 + "longitude": "string",
164 + "hasAlcohol": true,
165 + "hasFreeWifi": true,
166 + "hasMetro": true,
167 + "hasPool": true,
168 + "hasMall": true
169 + }
170 +]
171 +{{/code}}
317 317  
318 -(% class="box" %)
319 -(((
320 -(% class="code" %)
321 -(((
173 +
174 +=== Response Body example ===
175 +
176 +{{code language="Json"}}
322 322  {
323 - (% style="font-weight: bold; color: #008000;" %)"package"(%%): {
324 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"tour:1d0fa533-4261-4254-93bb-83599d581ffc:193990fa-41a5-46e6-9805-50f82c3c377f:0c299240-6fc6-4f79-ba99-3548f2de3f57"(%%),
325 - (% style="font-weight: bold; color: #008000;" %)"priceCurrency"(%%): (% style="color: #BA2121;" %)"USD"(%%),
326 - (% style="font-weight: bold; color: #008000;" %)"totalPrice"(%%): (% style="color: #666666;" %)937.16(%%),
327 - (% style="font-weight: bold; color: #008000;" %)"agentCommissionPercent"(%%): (% style="color: #666666;" %)0.00(%%),
328 - (% style="font-weight: bold; color: #008000;" %)"agentCommissionAmount"(%%): (% style="color: #666666;" %)0.00(%%),
329 - (% style="font-weight: bold; color: #008000;" %)"includedExtrasAmount"(%%): (% style="color: #666666;" %)0(%%),
330 - (% style="font-weight: bold; color: #008000;" %)"priceDifference"(%%): (% style="color: #666666;" %)0(%%),
331 - (% style="font-weight: bold; color: #008000;" %)"hotel"(%%): {
332 - (% style="font-weight: bold; color: #008000;" %)"hotelPriceId"(%%): (% style="color: #BA2121;" %)"193990fa-41a5-46e6-9805-50f82c3c377f"(%%),
333 - (% style="font-weight: bold; color: #008000;" %)"providerId"(%%): (% style="color: #666666;" %)13(%%),
334 - (% style="font-weight: bold; color: #008000;" %)"hotelName"(%%): (% style="color: #BA2121;" %)"Mercure Dubai Barsha Heights Suites Apartments"(%%),
335 - (% style="font-weight: bold; color: #008000;" %)"hotelCode"(%%): (% style="color: #BA2121;" %)"5f125310-7025-4807-a4c6-49cd284c9c14"(%%),
336 - (% style="font-weight: bold; color: #008000;" %)"nigths"(%%): (% style="color: #666666;" %)2(%%),
337 - (% style="font-weight: bold; color: #008000;" %)"mealPlan"(%%): (% style="color: #BA2121;" %)"BB"(%%),
338 - (% style="font-weight: bold; color: #008000;" %)"hotelClass"(%%): (% style="color: #BA2121;" %)"4"(%%),
339 - (% style="font-weight: bold; color: #008000;" %)"availabilityType"(%%): (% style="color: #BA2121;" %)"StopSale"(%%),
340 - (% style="font-weight: bold; color: #008000;" %)"availableRoomsCount"(%%): (% style="color: #666666;" %)0(%%),
341 - (% style="font-weight: bold; color: #008000;" %)"fewRooms"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
342 - (% style="font-weight: bold; color: #008000;" %)"roomCategoryCode"(%%): (% style="color: #BA2121;" %)"f8e1ffe5-25cc-46a4-80e8-586d1c049de4"(%%),
343 - (% style="font-weight: bold; color: #008000;" %)"roomCategoryName"(%%): (% style="color: #BA2121;" %)"1 B/R Apartment City View"(%%),
344 - (% style="font-weight: bold; color: #008000;" %)"placementTypeName"(%%): (% style="color: #BA2121;" %)"SNGL + CHILD(2-5.99)sharing"(%%),
345 - (% style="font-weight: bold; color: #008000;" %)"checkInDate"(%%): (% style="color: #BA2121;" %)"2024-02-15T20:00:00.000Z"(%%),
346 - (% style="font-weight: bold; color: #008000;" %)"checkOutDate"(%%): (% style="color: #BA2121;" %)"2024-02-17T20:00:00.000Z"(%%),
347 - (% style="font-weight: bold; color: #008000;" %)"adults"(%%): (% style="color: #666666;" %)1(%%),
348 - (% style="font-weight: bold; color: #008000;" %)"children"(%%): (% style="color: #666666;" %)1(%%),
349 - (% style="font-weight: bold; color: #008000;" %)"districtUID"(%%): (% style="color: #BA2121;" %)"4c65f6ed-902b-4fd8-9419-af7884c22c5e"(%%),
350 - (% style="font-weight: bold; color: #008000;" %)"districtName"(%%): (% style="color: #BA2121;" %)"Al Barsha"(%%),
351 - (% style="font-weight: bold; color: #008000;" %)"cityUID"(%%): (% style="color: #BA2121;" %)"f5185fa3-3f56-44ed-bf6b-80386a33caa2"(%%),
352 - (% style="font-weight: bold; color: #008000;" %)"cityName"(%%): (% style="color: #BA2121;" %)"Dubai"(%%),
353 - (% style="font-weight: bold; color: #008000;" %)"countryCode"(%%): (% style="color: #BA2121;" %)"AE"(%%),
354 - (% style="font-weight: bold; color: #008000;" %)"countryName"(%%): (% style="color: #BA2121;" %)"United Arab Emirates"(%%),
355 - (% style="font-weight: bold; color: #008000;" %)"hasAlcohol"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%),
356 - (% style="font-weight: bold; color: #008000;" %)"hasFreeWifi"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
357 - (% style="font-weight: bold; color: #008000;" %)"hasMetro"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
358 - (% style="font-weight: bold; color: #008000;" %)"hasPool"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
359 - (% style="font-weight: bold; color: #008000;" %)"hasMall"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%),
360 - (% style="font-weight: bold; color: #008000;" %)"cancellationPolicyDescription"(%%): (% style="color: #BA2121;" %)"Cancellation Policy: 5 Day Before Arrival: 100.00 %, Early Departure: 100.00 %, NoShow: 100.00 %"(%%),
361 - (% style="font-weight: bold; color: #008000;" %)"cancellationPolicy"(%%): {
362 - (% style="font-weight: bold; color: #008000;" %)"noShowChargeValue"(%%): (% style="color: #666666;" %)100.00(%%),
363 - (% style="font-weight: bold; color: #008000;" %)"noShowChargeValueType"(%%): (% style="color: #BA2121;" %)"%"(%%),
364 - (% style="font-weight: bold; color: #008000;" %)"earlyDepartureChargeValue"(%%): (% style="color: #666666;" %)100.00(%%),
365 - (% style="font-weight: bold; color: #008000;" %)"earlyDepartureChargeValueType"(%%): (% style="color: #BA2121;" %)"%"(%%),
366 - (% style="font-weight: bold; color: #008000;" %)"conditions"(%%): [
367 - {
368 - (% style="font-weight: bold; color: #008000;" %)"timeunits"(%%): (% style="color: #666666;" %)5(%%),
369 - (% style="font-weight: bold; color: #008000;" %)"timeunitType"(%%): (% style="color: #BA2121;" %)"Day"(%%),
370 - (% style="font-weight: bold; color: #008000;" %)"timeOffsetTypeName"(%%): (% style="color: #BA2121;" %)"Before Arrival"(%%),
371 - (% style="font-weight: bold; color: #008000;" %)"chargeValue"(%%): (% style="color: #666666;" %)100.00(%%),
372 - (% style="font-weight: bold; color: #008000;" %)"chargeValueType"(%%): (% style="color: #BA2121;" %)"%"(%%)
373 - }
374 - ]
375 - }
376 - },
377 - (% style="font-weight: bold; color: #008000;" %)"flight"(%%): {
378 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"0c299240-6fc6-4f79-ba99-3548f2de3f57"(%%),
379 - (% style="font-weight: bold; color: #008000;" %)"departureDate"(%%): (% style="color: #BA2121;" %)"2024-02-15T20:00:00.000Z"(%%),
380 - (% style="font-weight: bold; color: #008000;" %)"returnDate"(%%): (% style="color: #BA2121;" %)"2024-02-17T20:00:00.000Z"(%%),
381 - (% style="font-weight: bold; color: #008000;" %)"departureTicketsLeft"(%%): (% style="color: #666666;" %)7(%%),
382 - (% style="font-weight: bold; color: #008000;" %)"returnTicketsLeft"(%%): (% style="color: #666666;" %)7(%%),
383 - (% style="font-weight: bold; color: #008000;" %)"departureAvailabilityType"(%%): (% style="color: #BA2121;" %)"FewPlaces"(%%),
384 - (% style="font-weight: bold; color: #008000;" %)"returnAvailabilityType"(%%): (% style="color: #BA2121;" %)"FewPlaces"(%%),
385 - (% style="font-weight: bold; color: #008000;" %)"isTwoWay"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
386 - (% style="font-weight: bold; color: #008000;" %)"sameBaggageForAll"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%),
387 - (% style="font-weight: bold; color: #008000;" %)"totalBaggage"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
388 - (% style="font-weight: bold; color: #008000;" %)"departureSegments"(%%): [
389 - {
390 - (% style="font-weight: bold; color: #008000;" %)"airlineCode"(%%): (% style="color: #BA2121;" %)"KC"(%%),
391 - (% style="font-weight: bold; color: #008000;" %)"airlineName"(%%): (% style="color: #BA2121;" %)"Air Astana-"(%%),
392 - (% style="font-weight: bold; color: #008000;" %)"flightCode"(%%): (% style="color: #BA2121;" %)"KC899"(%%),
393 - (% style="font-weight: bold; color: #008000;" %)"class"(%%): (% style="color: #BA2121;" %)"econom"(%%),
394 - (% style="font-weight: bold; color: #008000;" %)"lugageWeight"(%%): (% style="color: #666666;" %)20(%%),
395 - (% style="font-weight: bold; color: #008000;" %)"handLugageWeight"(%%): (% style="color: #666666;" %)6(%%),
396 - (% style="font-weight: bold; color: #008000;" %)"departureFlightDate"(%%): (% style="color: #BA2121;" %)"2024-02-15T20:00:00.000Z"(%%),
397 - (% style="font-weight: bold; color: #008000;" %)"departureCountryName"(%%): (% style="color: #BA2121;" %)"Kazakhstan"(%%),
398 - (% style="font-weight: bold; color: #008000;" %)"departureCityName"(%%): (% style="color: #BA2121;" %)"Almaty"(%%),
399 - (% style="font-weight: bold; color: #008000;" %)"departureAirportCode"(%%): (% style="color: #BA2121;" %)"ALA"(%%),
400 - (% style="font-weight: bold; color: #008000;" %)"departureAirportName"(%%): (% style="color: #BA2121;" %)"Almaty Intl Airport"(%%),
401 - (% style="font-weight: bold; color: #008000;" %)"departureTerminalCode"(%%): (% style="color: #BA2121;" %)"ALA"(%%),
402 - (% style="font-weight: bold; color: #008000;" %)"arrivalFlightDate"(%%): (% style="color: #BA2121;" %)"2024-02-15T20:00:00.000Z"(%%),
403 - (% style="font-weight: bold; color: #008000;" %)"arrivalCountryName"(%%): (% style="color: #BA2121;" %)"United Arab Emirates"(%%),
404 - (% style="font-weight: bold; color: #008000;" %)"arrivalCityName"(%%): (% style="color: #BA2121;" %)"Dubai"(%%),
405 - (% style="font-weight: bold; color: #008000;" %)"arrivalAirportCode"(%%): (% style="color: #BA2121;" %)"DXB"(%%),
406 - (% style="font-weight: bold; color: #008000;" %)"arrivalAirportName"(%%): (% style="color: #BA2121;" %)"Dubai Intl Airport"(%%),
407 - (% style="font-weight: bold; color: #008000;" %)"arrivalTerminalCode"(%%): (% style="color: #BA2121;" %)"DXB1"(%%),
408 - (% style="font-weight: bold; color: #008000;" %)"flightDuration"(%%): (% style="color: #BA2121;" %)"0h 50m"(%%)
409 - }
410 - ],
411 - (% style="font-weight: bold; color: #008000;" %)"returnSegments"(%%): [
412 - {
413 - (% style="font-weight: bold; color: #008000;" %)"airlineCode"(%%): (% style="color: #BA2121;" %)"KC"(%%),
414 - (% style="font-weight: bold; color: #008000;" %)"airlineName"(%%): (% style="color: #BA2121;" %)"Air Astana-"(%%),
415 - (% style="font-weight: bold; color: #008000;" %)"flightCode"(%%): (% style="color: #BA2121;" %)"KC900"(%%),
416 - (% style="font-weight: bold; color: #008000;" %)"class"(%%): (% style="color: #BA2121;" %)"econom"(%%),
417 - (% style="font-weight: bold; color: #008000;" %)"lugageWeight"(%%): (% style="color: #666666;" %)20(%%),
418 - (% style="font-weight: bold; color: #008000;" %)"handLugageWeight"(%%): (% style="color: #666666;" %)6(%%),
419 - (% style="font-weight: bold; color: #008000;" %)"departureFlightDate"(%%): (% style="color: #BA2121;" %)"2024-02-17T20:00:00.000Z"(%%),
420 - (% style="font-weight: bold; color: #008000;" %)"departureCountryName"(%%): (% style="color: #BA2121;" %)"United Arab Emirates"(%%),
421 - (% style="font-weight: bold; color: #008000;" %)"departureCityName"(%%): (% style="color: #BA2121;" %)"Dubai"(%%),
422 - (% style="font-weight: bold; color: #008000;" %)"departureAirportCode"(%%): (% style="color: #BA2121;" %)"DXB"(%%),
423 - (% style="font-weight: bold; color: #008000;" %)"departureAirportName"(%%): (% style="color: #BA2121;" %)"Dubai Intl Airport"(%%),
424 - (% style="font-weight: bold; color: #008000;" %)"departureTerminalCode"(%%): (% style="color: #BA2121;" %)"DXB1"(%%),
425 - (% style="font-weight: bold; color: #008000;" %)"arrivalFlightDate"(%%): (% style="color: #BA2121;" %)"2024-02-17T20:00:00.000Z"(%%),
426 - (% style="font-weight: bold; color: #008000;" %)"arrivalCountryName"(%%): (% style="color: #BA2121;" %)"Kazakhstan"(%%),
427 - (% style="font-weight: bold; color: #008000;" %)"arrivalCityName"(%%): (% style="color: #BA2121;" %)"Almaty"(%%),
428 - (% style="font-weight: bold; color: #008000;" %)"arrivalAirportCode"(%%): (% style="color: #BA2121;" %)"ALA"(%%),
429 - (% style="font-weight: bold; color: #008000;" %)"arrivalAirportName"(%%): (% style="color: #BA2121;" %)"Almaty Intl Airport"(%%),
430 - (% style="font-weight: bold; color: #008000;" %)"arrivalTerminalCode"(%%): (% style="color: #BA2121;" %)"ALA"(%%),
431 - (% style="font-weight: bold; color: #008000;" %)"flightDuration"(%%): (% style="color: #BA2121;" %)"8h 15m"(%%)
432 - }
433 - ],
434 - (% style="font-weight: bold; color: #008000;" %)"passengers"(%%): [
435 - {
436 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"42779531011000004-A1"(%%),
437 - (% style="font-weight: bold; color: #008000;" %)"isAdult"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
438 - (% style="font-weight: bold; color: #008000;" %)"forwardBaggages"(%%): [
439 - {
440 - (% style="font-weight: bold; color: #008000;" %)"baggageCode"(%%): (% style="color: #BA2121;" %)"TOTAL_BAGGAGE"(%%),
441 - (% style="font-weight: bold; color: #008000;" %)"description"(%%): (% style="color: #BA2121;" %)"1 piece included, UP TO 50 POUNDS/23 KILOGRAMS, OVER 62 LINEAR INCHES/158 LINEAR CENTIMETERS"(%%),
442 - (% style="font-weight: bold; color: #008000;" %)"price"(%%): (% style="color: #666666;" %)45.00(%%),
443 - (% style="font-weight: bold; color: #008000;" %)"currency"(%%): (% style="color: #BA2121;" %)"USD"(%%),
444 - (% style="font-weight: bold; color: #008000;" %)"included"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%)
445 - }
446 - ],
447 - (% style="font-weight: bold; color: #008000;" %)"backwardBaggages"(%%): [
448 - {
449 - (% style="font-weight: bold; color: #008000;" %)"baggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED_IN_FORWARD"(%%),
450 - (% style="font-weight: bold; color: #008000;" %)"price"(%%): (% style="color: #666666;" %)0(%%),
451 - (% style="font-weight: bold; color: #008000;" %)"included"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%)
452 - }
453 - ]
454 - },
455 - {
456 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"42779531011000004-C1"(%%),
457 - (% style="font-weight: bold; color: #008000;" %)"isAdult"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%),
458 - (% style="font-weight: bold; color: #008000;" %)"forwardBaggages"(%%): [
459 - {
460 - (% style="font-weight: bold; color: #008000;" %)"baggageCode"(%%): (% style="color: #BA2121;" %)"TOTAL_BAGGAGE"(%%),
461 - (% style="font-weight: bold; color: #008000;" %)"description"(%%): (% style="color: #BA2121;" %)"1 piece included, UP TO 50 POUNDS/23 KILOGRAMS, OVER 62 LINEAR INCHES/158 LINEAR CENTIMETERS"(%%),
462 - (% style="font-weight: bold; color: #008000;" %)"price"(%%): (% style="color: #666666;" %)45.00(%%),
463 - (% style="font-weight: bold; color: #008000;" %)"currency"(%%): (% style="color: #BA2121;" %)"USD"(%%),
464 - (% style="font-weight: bold; color: #008000;" %)"included"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%)
465 - }
466 - ],
467 - (% style="font-weight: bold; color: #008000;" %)"backwardBaggages"(%%): [
468 - {
469 - (% style="font-weight: bold; color: #008000;" %)"baggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED_IN_FORWARD"(%%),
470 - (% style="font-weight: bold; color: #008000;" %)"price"(%%): (% style="color: #666666;" %)0(%%),
471 - (% style="font-weight: bold; color: #008000;" %)"included"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%)
472 - }
473 - ]
474 - }
475 - ]
476 - },
477 - (% style="font-weight: bold; color: #008000;" %)"extraServices"(%%): [],
478 - (% style="font-weight: bold; color: #008000;" %)"insurancePrice"(%%): {
479 - (% style="font-weight: bold; color: #008000;" %)"name"(%%): (% style="color: #BA2121;" %)"Medical INS (N10000)"(%%),
480 - (% style="font-weight: bold; color: #008000;" %)"price"(%%): (% style="color: #666666;" %)13.44(%%),
481 - (% style="font-weight: bold; color: #008000;" %)"priceSurcarge"(%%): (% style="color: #666666;" %)0.00(%%),
482 - (% style="font-weight: bold; color: #008000;" %)"actualStartDate"(%%): (% style="color: #BA2121;" %)"2024-02-15T20:00:00.000Z"(%%),
483 - (% style="font-weight: bold; color: #008000;" %)"actualEndDate"(%%): (% style="color: #BA2121;" %)"2024-02-17T20:00:00.000Z"(%%),
484 - (% style="font-weight: bold; color: #008000;" %)"optional"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%),
485 - (% style="font-weight: bold; color: #008000;" %)"includedInPackagePrice"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%)
486 - }
487 - },
488 - (% style="font-weight: bold; color: #008000;" %)"altPackages"(%%): [
178 + "packages": [
489 489   {
490 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"tour:1d0fa533-4261-4254-93bb-83599d581ffc:193990fa-41a5-46e6-9805-50f82c3c377f:63d79c94-1e19-443f-8a17-50e59e633ea8"(%%),
491 - (% style="font-weight: bold; color: #008000;" %)"priceCurrency"(%%): (% style="color: #BA2121;" %)"USD"(%%),
492 - (% style="font-weight: bold; color: #008000;" %)"totalPrice"(%%): (% style="color: #666666;" %)968.40(%%),
493 - (% style="font-weight: bold; color: #008000;" %)"agentCommissionPercent"(%%): (% style="color: #666666;" %)0.00(%%),
494 - (% style="font-weight: bold; color: #008000;" %)"agentCommissionAmount"(%%): (% style="color: #666666;" %)0.00(%%),
495 - (% style="font-weight: bold; color: #008000;" %)"includedExtrasAmount"(%%): (% style="color: #666666;" %)0(%%),
496 - (% style="font-weight: bold; color: #008000;" %)"priceDifference"(%%): (% style="color: #666666;" %)31.24(%%),
497 - (% style="font-weight: bold; color: #008000;" %)"hotel"(%%): {
498 - (% style="font-weight: bold; color: #008000;" %)"hotelPriceId"(%%): (% style="color: #BA2121;" %)"193990fa-41a5-46e6-9805-50f82c3c377f"(%%),
499 - (% style="font-weight: bold; color: #008000;" %)"providerId"(%%): (% style="color: #666666;" %)13(%%),
500 - (% style="font-weight: bold; color: #008000;" %)"hotelName"(%%): (% style="color: #BA2121;" %)"Mercure Dubai Barsha Heights Suites Apartments"(%%),
501 - (% style="font-weight: bold; color: #008000;" %)"hotelCode"(%%): (% style="color: #BA2121;" %)"5f125310-7025-4807-a4c6-49cd284c9c14"(%%),
502 - (% style="font-weight: bold; color: #008000;" %)"nigths"(%%): (% style="color: #666666;" %)2(%%),
503 - (% style="font-weight: bold; color: #008000;" %)"mealPlan"(%%): (% style="color: #BA2121;" %)"BB"(%%),
504 - (% style="font-weight: bold; color: #008000;" %)"hotelClass"(%%): (% style="color: #BA2121;" %)"4"(%%),
505 - (% style="font-weight: bold; color: #008000;" %)"availabilityType"(%%): (% style="color: #BA2121;" %)"StopSale"(%%),
506 - (% style="font-weight: bold; color: #008000;" %)"availableRoomsCount"(%%): (% style="color: #666666;" %)0(%%),
507 - (% style="font-weight: bold; color: #008000;" %)"fewRooms"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
508 - (% style="font-weight: bold; color: #008000;" %)"roomCategoryCode"(%%): (% style="color: #BA2121;" %)"f8e1ffe5-25cc-46a4-80e8-586d1c049de4"(%%),
509 - (% style="font-weight: bold; color: #008000;" %)"roomCategoryName"(%%): (% style="color: #BA2121;" %)"1 B/R Apartment City View"(%%),
510 - (% style="font-weight: bold; color: #008000;" %)"placementTypeName"(%%): (% style="color: #BA2121;" %)"SNGL + CHILD(2-5.99)sharing"(%%),
511 - (% style="font-weight: bold; color: #008000;" %)"checkInDate"(%%): (% style="color: #BA2121;" %)"2024-02-15T20:00:00.000Z"(%%),
512 - (% style="font-weight: bold; color: #008000;" %)"checkOutDate"(%%): (% style="color: #BA2121;" %)"2024-02-17T20:00:00.000Z"(%%),
513 - (% style="font-weight: bold; color: #008000;" %)"adults"(%%): (% style="color: #666666;" %)1(%%),
514 - (% style="font-weight: bold; color: #008000;" %)"children"(%%): (% style="color: #666666;" %)1(%%),
515 - (% style="font-weight: bold; color: #008000;" %)"districtUID"(%%): (% style="color: #BA2121;" %)"4c65f6ed-902b-4fd8-9419-af7884c22c5e"(%%),
516 - (% style="font-weight: bold; color: #008000;" %)"districtName"(%%): (% style="color: #BA2121;" %)"Al Barsha"(%%),
517 - (% style="font-weight: bold; color: #008000;" %)"cityUID"(%%): (% style="color: #BA2121;" %)"f5185fa3-3f56-44ed-bf6b-80386a33caa2"(%%),
518 - (% style="font-weight: bold; color: #008000;" %)"cityName"(%%): (% style="color: #BA2121;" %)"Dubai"(%%),
519 - (% style="font-weight: bold; color: #008000;" %)"countryCode"(%%): (% style="color: #BA2121;" %)"AE"(%%),
520 - (% style="font-weight: bold; color: #008000;" %)"countryName"(%%): (% style="color: #BA2121;" %)"United Arab Emirates"(%%),
521 - (% style="font-weight: bold; color: #008000;" %)"hasAlcohol"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%),
522 - (% style="font-weight: bold; color: #008000;" %)"hasFreeWifi"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
523 - (% style="font-weight: bold; color: #008000;" %)"hasMetro"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
524 - (% style="font-weight: bold; color: #008000;" %)"hasPool"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
525 - (% style="font-weight: bold; color: #008000;" %)"hasMall"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%),
526 - (% style="font-weight: bold; color: #008000;" %)"cancellationPolicyDescription"(%%): (% style="color: #BA2121;" %)"Cancellation Policy: 5 Day Before Arrival: 100.00 %, Early Departure: 100.00 %, NoShow: 100.00 %"(%%),
527 - (% style="font-weight: bold; color: #008000;" %)"cancellationPolicy"(%%): {
528 - (% style="font-weight: bold; color: #008000;" %)"noShowChargeValue"(%%): (% style="color: #666666;" %)100.00(%%),
529 - (% style="font-weight: bold; color: #008000;" %)"noShowChargeValueType"(%%): (% style="color: #BA2121;" %)"%"(%%),
530 - (% style="font-weight: bold; color: #008000;" %)"earlyDepartureChargeValue"(%%): (% style="color: #666666;" %)100.00(%%),
531 - (% style="font-weight: bold; color: #008000;" %)"earlyDepartureChargeValueType"(%%): (% style="color: #BA2121;" %)"%"(%%),
532 - (% style="font-weight: bold; color: #008000;" %)"conditions"(%%): [
180 + "id": "onlyhotel:c4e23e7e-3d54-4efa-a3db-88508230ce91:504f63ca-6dd5-4d84-8245-cf7e77ccff73",
181 + "priceCurrency": "USD",
182 + "totalPrice": 381.7,
183 + "agentCommissionPercent": 0.0,
184 + "agentCommissionAmount": 0.0,
185 + "hotel": {
186 + "hotelPriceId": "504f63ca-6dd5-4d84-8245-cf7e77ccff73",
187 + "providerId": 13,
188 + "hotelName": "Golden Tulip Al Barsha Hotel",
189 + "hotelCode": "ed0820c5-29b0-4e1b-8bcf-9f3c181e7961",
190 + "nigths": 4,
191 + "mealPlan": "RO",
192 + "hotelClass": "4",
193 + "availabilityType": "FreeSale",
194 + "availableRoomsCount": 0,
195 + "fewRooms": true,
196 + "roomCategoryCode": "e63ea5ac-4883-4059-bb0a-795a534bbbfb",
197 + "roomCategoryName": "Superior Twin",
198 + "placementTypeName": "SNGL + CHILD(6-11.99)sharing",
199 + "checkInDate": "2024-02-17T08:00:00.000Z",
200 + "checkOutDate": "2024-02-21T08:00:00.000Z",
201 + "adults": 1,
202 + "children": 1,
203 + "districtUID": "4c65f6ed-902b-4fd8-9419-af7884c22c5e",
204 + "districtName": "Al Barsha",
205 + "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2",
206 + "cityName": "Dubai",
207 + "countryCode": "AE",
208 + "countryName": "United Arab Emirates",
209 + "hasAlcohol": true,
210 + "hasFreeWifi": true,
211 + "hasMetro": false,
212 + "hasPool": true,
213 + "hasMall": false,
214 + "cancellationPolicyDescription": "Cancellation Policy: 15 Day Before Arrival: 100.00 %, Early Departure: 100.00 %, NoShow: 100.00 %",
215 + "cancellationPolicy": {
216 + "noShowChargeValue": 100.0,
217 + "noShowChargeValueType": "%",
218 + "earlyDepartureChargeValue": 100.0,
219 + "earlyDepartureChargeValueType": "%",
220 + "conditions": [
533 533   {
534 - (% style="font-weight: bold; color: #008000;" %)"timeunits"(%%): (% style="color: #666666;" %)5(%%),
535 - (% style="font-weight: bold; color: #008000;" %)"timeunitType"(%%): (% style="color: #BA2121;" %)"Day"(%%),
536 - (% style="font-weight: bold; color: #008000;" %)"timeOffsetTypeName"(%%): (% style="color: #BA2121;" %)"Before Arrival"(%%),
537 - (% style="font-weight: bold; color: #008000;" %)"chargeValue"(%%): (% style="color: #666666;" %)100.00(%%),
538 - (% style="font-weight: bold; color: #008000;" %)"chargeValueType"(%%): (% style="color: #BA2121;" %)"%"(%%)
222 + "timeunits": 15,
223 + "timeunitType": "Day",
224 + "timeOffsetTypeName": "Before Arrival",
225 + "chargeValue": 100.0,
226 + "chargeValueType": "%"
539 539   }
540 540   ]
541 541   }
542 542   },
543 - (% style="font-weight: bold; color: #008000;" %)"flight"(%%): {
544 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"63d79c94-1e19-443f-8a17-50e59e633ea8"(%%),
545 - (% style="font-weight: bold; color: #008000;" %)"departureDate"(%%): (% style="color: #BA2121;" %)"2024-02-15T20:00:00.000Z"(%%),
546 - (% style="font-weight: bold; color: #008000;" %)"returnDate"(%%): (% style="color: #BA2121;" %)"2024-02-17T20:00:00.000Z"(%%),
547 - (% style="font-weight: bold; color: #008000;" %)"departureTicketsLeft"(%%): (% style="color: #666666;" %)50(%%),
548 - (% style="font-weight: bold; color: #008000;" %)"returnTicketsLeft"(%%): (% style="color: #666666;" %)50(%%),
549 - (% style="font-weight: bold; color: #008000;" %)"departureAvailabilityType"(%%): (% style="color: #BA2121;" %)"FewPlaces"(%%),
550 - (% style="font-weight: bold; color: #008000;" %)"returnAvailabilityType"(%%): (% style="color: #BA2121;" %)"FewPlaces"(%%),
551 - (% style="font-weight: bold; color: #008000;" %)"isTwoWay"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
552 - (% style="font-weight: bold; color: #008000;" %)"sameBaggageForAll"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%),
553 - (% style="font-weight: bold; color: #008000;" %)"totalBaggage"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%),
554 - (% style="font-weight: bold; color: #008000;" %)"departureSegments"(%%): [
555 - {
556 - (% style="font-weight: bold; color: #008000;" %)"airlineCode"(%%): (% style="color: #BA2121;" %)"FZ"(%%),
557 - (% style="font-weight: bold; color: #008000;" %)"airlineName"(%%): (% style="color: #BA2121;" %)"Fly Dubai."(%%),
558 - (% style="font-weight: bold; color: #008000;" %)"flightCode"(%%): (% style="color: #BA2121;" %)"FZ1722"(%%),
559 - (% style="font-weight: bold; color: #008000;" %)"class"(%%): (% style="color: #BA2121;" %)"econom"(%%),
560 - (% style="font-weight: bold; color: #008000;" %)"lugageWeight"(%%): (% style="color: #666666;" %)20(%%),
561 - (% style="font-weight: bold; color: #008000;" %)"handLugageWeight"(%%): (% style="color: #666666;" %)6(%%),
562 - (% style="font-weight: bold; color: #008000;" %)"departureFlightDate"(%%): (% style="color: #BA2121;" %)"2024-02-15T20:00:00.000Z"(%%),
563 - (% style="font-weight: bold; color: #008000;" %)"departureCountryName"(%%): (% style="color: #BA2121;" %)"Kazakhstan"(%%),
564 - (% style="font-weight: bold; color: #008000;" %)"departureCityName"(%%): (% style="color: #BA2121;" %)"Almaty"(%%),
565 - (% style="font-weight: bold; color: #008000;" %)"departureAirportCode"(%%): (% style="color: #BA2121;" %)"ALA"(%%),
566 - (% style="font-weight: bold; color: #008000;" %)"departureAirportName"(%%): (% style="color: #BA2121;" %)"Almaty Intl Airport"(%%),
567 - (% style="font-weight: bold; color: #008000;" %)"departureTerminalCode"(%%): (% style="color: #BA2121;" %)"ALA"(%%),
568 - (% style="font-weight: bold; color: #008000;" %)"arrivalFlightDate"(%%): (% style="color: #BA2121;" %)"2024-02-15T20:00:00.000Z"(%%),
569 - (% style="font-weight: bold; color: #008000;" %)"arrivalCountryName"(%%): (% style="color: #BA2121;" %)"United Arab Emirates"(%%),
570 - (% style="font-weight: bold; color: #008000;" %)"arrivalCityName"(%%): (% style="color: #BA2121;" %)"Dubai"(%%),
571 - (% style="font-weight: bold; color: #008000;" %)"arrivalAirportCode"(%%): (% style="color: #BA2121;" %)"DXB"(%%),
572 - (% style="font-weight: bold; color: #008000;" %)"arrivalAirportName"(%%): (% style="color: #BA2121;" %)"Dubai Intl Airport"(%%),
573 - (% style="font-weight: bold; color: #008000;" %)"arrivalTerminalCode"(%%): (% style="color: #BA2121;" %)"DXB3"(%%),
574 - (% style="font-weight: bold; color: #008000;" %)"flightDuration"(%%): (% style="color: #BA2121;" %)"0h 55m"(%%)
575 - }
576 - ],
577 - (% style="font-weight: bold; color: #008000;" %)"returnSegments"(%%): [
578 - {
579 - (% style="font-weight: bold; color: #008000;" %)"airlineCode"(%%): (% style="color: #BA2121;" %)"FZ"(%%),
580 - (% style="font-weight: bold; color: #008000;" %)"airlineName"(%%): (% style="color: #BA2121;" %)"Fly Dubai."(%%),
581 - (% style="font-weight: bold; color: #008000;" %)"flightCode"(%%): (% style="color: #BA2121;" %)"FZ1721"(%%),
582 - (% style="font-weight: bold; color: #008000;" %)"class"(%%): (% style="color: #BA2121;" %)"econom"(%%),
583 - (% style="font-weight: bold; color: #008000;" %)"lugageWeight"(%%): (% style="color: #666666;" %)20(%%),
584 - (% style="font-weight: bold; color: #008000;" %)"handLugageWeight"(%%): (% style="color: #666666;" %)6(%%),
585 - (% style="font-weight: bold; color: #008000;" %)"departureFlightDate"(%%): (% style="color: #BA2121;" %)"2024-02-17T20:00:00.000Z"(%%),
586 - (% style="font-weight: bold; color: #008000;" %)"departureCountryName"(%%): (% style="color: #BA2121;" %)"United Arab Emirates"(%%),
587 - (% style="font-weight: bold; color: #008000;" %)"departureCityName"(%%): (% style="color: #BA2121;" %)"Dubai"(%%),
588 - (% style="font-weight: bold; color: #008000;" %)"departureAirportCode"(%%): (% style="color: #BA2121;" %)"DXB"(%%),
589 - (% style="font-weight: bold; color: #008000;" %)"departureAirportName"(%%): (% style="color: #BA2121;" %)"Dubai Intl Airport"(%%),
590 - (% style="font-weight: bold; color: #008000;" %)"departureTerminalCode"(%%): (% style="color: #BA2121;" %)"DXB3"(%%),
591 - (% style="font-weight: bold; color: #008000;" %)"arrivalFlightDate"(%%): (% style="color: #BA2121;" %)"2024-02-18T20:00:00.000Z"(%%),
592 - (% style="font-weight: bold; color: #008000;" %)"arrivalCountryName"(%%): (% style="color: #BA2121;" %)"Kazakhstan"(%%),
593 - (% style="font-weight: bold; color: #008000;" %)"arrivalCityName"(%%): (% style="color: #BA2121;" %)"Almaty"(%%),
594 - (% style="font-weight: bold; color: #008000;" %)"arrivalAirportCode"(%%): (% style="color: #BA2121;" %)"ALA"(%%),
595 - (% style="font-weight: bold; color: #008000;" %)"arrivalAirportName"(%%): (% style="color: #BA2121;" %)"Almaty Intl Airport"(%%),
596 - (% style="font-weight: bold; color: #008000;" %)"arrivalTerminalCode"(%%): (% style="color: #BA2121;" %)"DXB3"(%%),
597 - (% style="font-weight: bold; color: #008000;" %)"flightDuration"(%%): (% style="color: #BA2121;" %)"8h 10m"(%%)
598 - }
599 - ],
600 - (% style="font-weight: bold; color: #008000;" %)"passengers"(%%): [
601 - {
602 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"42779547001000004-A1"(%%),
603 - (% style="font-weight: bold; color: #008000;" %)"isAdult"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%),
604 - (% style="font-weight: bold; color: #008000;" %)"selectedForwardBaggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%),
605 - (% style="font-weight: bold; color: #008000;" %)"selectedBackwardBaggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%),
606 - (% style="font-weight: bold; color: #008000;" %)"forwardBaggages"(%%): [
607 - {
608 - (% style="font-weight: bold; color: #008000;" %)"baggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%),
609 - (% style="font-weight: bold; color: #008000;" %)"description"(%%): (% style="color: #BA2121;" %)"20 KG INCLUDED"(%%),
610 - (% style="font-weight: bold; color: #008000;" %)"price"(%%): (% style="color: #666666;" %)0.0(%%),
611 - (% style="font-weight: bold; color: #008000;" %)"currency"(%%): (% style="color: #BA2121;" %)"USD"(%%),
612 - (% style="font-weight: bold; color: #008000;" %)"included"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%)
613 - }
614 - ],
615 - (% style="font-weight: bold; color: #008000;" %)"backwardBaggages"(%%): [
616 - {
617 - (% style="font-weight: bold; color: #008000;" %)"baggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%),
618 - (% style="font-weight: bold; color: #008000;" %)"description"(%%): (% style="color: #BA2121;" %)"20 KG INCLUDED"(%%),
619 - (% style="font-weight: bold; color: #008000;" %)"price"(%%): (% style="color: #666666;" %)0.0(%%),
620 - (% style="font-weight: bold; color: #008000;" %)"currency"(%%): (% style="color: #BA2121;" %)"USD"(%%),
621 - (% style="font-weight: bold; color: #008000;" %)"included"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%)
622 - }
623 - ]
624 - },
625 - {
626 - (% style="font-weight: bold; color: #008000;" %)"id"(%%): (% style="color: #BA2121;" %)"42779547001000004-C1"(%%),
627 - (% style="font-weight: bold; color: #008000;" %)"isAdult"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%),
628 - (% style="font-weight: bold; color: #008000;" %)"selectedForwardBaggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%),
629 - (% style="font-weight: bold; color: #008000;" %)"selectedBackwardBaggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%),
630 - (% style="font-weight: bold; color: #008000;" %)"forwardBaggages"(%%): [
631 - {
632 - (% style="font-weight: bold; color: #008000;" %)"baggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%),
633 - (% style="font-weight: bold; color: #008000;" %)"description"(%%): (% style="color: #BA2121;" %)"20 KG INCLUDED"(%%),
634 - (% style="font-weight: bold; color: #008000;" %)"price"(%%): (% style="color: #666666;" %)0.0(%%),
635 - (% style="font-weight: bold; color: #008000;" %)"currency"(%%): (% style="color: #BA2121;" %)"USD"(%%),
636 - (% style="font-weight: bold; color: #008000;" %)"included"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%)
637 - }
638 - ],
639 - (% style="font-weight: bold; color: #008000;" %)"backwardBaggages"(%%): [
640 - {
641 - (% style="font-weight: bold; color: #008000;" %)"baggageCode"(%%): (% style="color: #BA2121;" %)"INCLUDED"(%%),
642 - (% style="font-weight: bold; color: #008000;" %)"description"(%%): (% style="color: #BA2121;" %)"20 KG INCLUDED"(%%),
643 - (% style="font-weight: bold; color: #008000;" %)"price"(%%): (% style="color: #666666;" %)0.0(%%),
644 - (% style="font-weight: bold; color: #008000;" %)"currency"(%%): (% style="color: #BA2121;" %)"USD"(%%),
645 - (% style="font-weight: bold; color: #008000;" %)"included"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%)
646 - }
647 - ]
648 - }
649 - ]
650 - },
651 - (% style="font-weight: bold; color: #008000;" %)"extraServices"(%%): [],
652 - (% style="font-weight: bold; color: #008000;" %)"insurancePrice"(%%): {
653 - (% style="font-weight: bold; color: #008000;" %)"name"(%%): (% style="color: #BA2121;" %)"Medical INS (N10000)"(%%),
654 - (% style="font-weight: bold; color: #008000;" %)"price"(%%): (% style="color: #666666;" %)13.44(%%),
655 - (% style="font-weight: bold; color: #008000;" %)"priceSurcarge"(%%): (% style="color: #666666;" %)0.00(%%),
656 - (% style="font-weight: bold; color: #008000;" %)"actualStartDate"(%%): (% style="color: #BA2121;" %)"2024-02-15T20:00:00.000Z"(%%),
657 - (% style="font-weight: bold; color: #008000;" %)"actualEndDate"(%%): (% style="color: #BA2121;" %)"2024-02-17T20:00:00.000Z"(%%),
658 - (% style="font-weight: bold; color: #008000;" %)"optional"(%%): (% style="font-weight: bold; color: #008000;" %)false(%%),
659 - (% style="font-weight: bold; color: #008000;" %)"includedInPackagePrice"(%%): (% style="font-weight: bold; color: #008000;" %)true(%%)
660 - }
231 + "extraServices": []
661 661   },
662 - {
663 -)))
664 -)))
233 +{{/code}}
665 665  
666 666  
667 667  === Schema ===
668 668  
669 -(% class="box successmessage" %)
670 -(((
671 -CheckoutFormIn{
238 +{{success}}
239 +SearchOnlyHotelPackagesResponse{
672 672  
673 -|reservationId|string($uuid)
674 -nullable: true
675 -|calcTourPackageRequests|[
676 -nullable: trueCalcTourPackageRequest{(((
677 -|packageId|string
678 -nullable: true
679 -|extraServicePriceCodes|[
680 -nullable: truestring]
681 -|flightPassengers|[
682 -nullable: trueFlightPassengerIn{(((
241 +|packages|[
242 +nullable: trueOnlyHotelPackage{(((
683 683  |id|string
684 684  nullable: true
685 -|selectedForwardBaggageCode|string
245 +|priceCurrency|string
686 686  nullable: true
687 -|selectedBackwardBaggageCode|string
247 +|totalPrice|number($double)
248 +|agentCommissionPercent|number($double)
249 +|agentCommissionAmount|number($double)
250 +|hotel|PackageHotel{(((
251 +|hotelPriceId|string
688 688  nullable: true
689 -
690 -}]
691 -)))
692 -|includeInsurance|boolean
253 +|providerId|integer($int32)
254 +|hotelName|string
693 693  nullable: true
694 -|refreshPrices|boolean
695 -
696 -}]
697 -)))
698 -|calcOnlyHotelPackageRequests|[
699 -nullable: trueCalcOnlyHotelPackageRequest{(((
700 -|packageId|string
256 +|hotelCode|string
701 701  nullable: true
702 -|extraServicePriceCodes|[
703 -nullable: truestring]
704 -|includeInsurance|boolean
705 -|refreshPrices|boolean
706 -
707 -}]
708 -)))
709 -|calcOnlyAviaPackageRequests|[
710 -nullable: trueCalcOnlyAviaPackageRequest{(((
711 -|packageId|string
258 +|nigths|integer($int32)
259 +|mealPlan|string
712 712  nullable: true
713 -|refreshPrices|boolean
714 -|flightPassengers|[
715 -nullable: trueFlightPassengerIn{(((
716 -|id|string
261 +|hotelClass|string
717 717  nullable: true
718 -|selectedForwardBaggageCode|string
263 +|availabilityType|RoomAvailabilityTypeEnumstringEnum:
264 +[ OnRequest, FreeSale, StopSale ]
265 +|availableRoomsCount|integer($int32)
266 +|fewRooms|boolean
267 +|roomCategoryCode|string
719 719  nullable: true
720 -|selectedBackwardBaggageCode|string
269 +|roomCategoryName|string
721 721  nullable: true
722 -
723 -}]
724 -)))
725 -
726 -}]
727 -)))
728 -|hotels|[
729 -nullable: trueCheckoutHotelIn{(((
730 -|hotelPriceId|string
271 +|placementTypeName|string
731 731  nullable: true
732 -|agentConfirmationNumber|string
273 +|placementDescription|string
733 733  nullable: true
734 -|note|string
275 +|checkInDate|string($date-time)
276 +|checkOutDate|string($date-time)
277 +|adults|integer($int32)
278 +|children|integer($int32)
279 +|districtUID|string($uuid)
735 735  nullable: true
736 -|touristIds|[
737 -nullable: truestring($uuid)]
738 -
739 -}]
740 -)))
741 -|tourists|[
742 -nullable: trueCheckoutTouristIn{(((
743 -|id|string($uuid)
744 -|firstName|string
281 +|districtName|string
745 745  nullable: true
746 -|lastName|string
283 +|cityUID|string($uuid)
747 747  nullable: true
748 -|birthDate|string($date-time)
285 +|cityName|string
749 749  nullable: true
750 -|passportNumber|string
287 +|countryCode|string
751 751  nullable: true
752 -|passportExpiry|string($date-time)
289 +|countryName|string
753 753  nullable: true
754 -|passportIssue|string($date-time)
291 +|hasAlcohol|boolean
292 +|hasFreeWifi|boolean
293 +|hasMetro|boolean
294 +|hasPool|boolean
295 +|hasMall|boolean
296 +|cancellationPolicyDescription|string
755 755  nullable: true
756 -|citizenship|string
298 +|cancellationPolicy|CancellationPolicyExchange{(((
299 +|cancellationPolicyCode|string
757 757  nullable: true
758 -|tin|string
301 +|noShowChargeValue|number($double)
759 759  nullable: true
760 -|isMale|boolean
303 +|noShowChargeValueType|string
761 761  nullable: true
762 -|flightIds|[
763 -nullable: truestring]
764 -|arrivalFlightInfo|ManualFlightInfo{(((
765 -|flightNumber|string
305 +|earlyDepartureChargeValue|number($double)
766 766  nullable: true
767 -|terminalCode|string
307 +|earlyDepartureChargeValueType|string
768 768  nullable: true
769 -|date|string($date-time)
309 +|conditions|[
310 +nullable: trueCancellationPolicyConditionExchange{(((
311 +|timeunits|integer($int32)
312 +|timeunitType|string
770 770  nullable: true
771 -|time|string
314 +|timeOffsetTypeName|string
772 772  nullable: true
773 -
774 -}
775 -)))
776 -|departureFlightInfo|ManualFlightInfo{(((
777 -|flightNumber|string
316 +|chargeValue|number($double)
778 778  nullable: true
779 -|terminalCode|string
318 +|chargeValueType|string
780 780  nullable: true
781 -|date|string($date-time)
782 -nullable: true
783 -|time|string
784 -nullable: true
785 785  
786 -}
787 -)))
788 -|selectedVisaId|string
789 -nullable: true
790 -|transfers|[
791 -nullable: trueCheckoutTransferIn{(((
792 -|id|string
793 -nullable: true
794 -|selectedTransferPriceId|string
795 -nullable: true
796 -
797 797  }]
798 798  )))
799 799  
800 -}]
324 +}
801 801  )))
802 -|note|string
803 -nullable: true
804 -|contactPhone|string
805 -nullable: true
806 806  
807 807  }
808 808  )))
809 -
810 -(% class="box successmessage" %)
811 -(((
812 -CheckoutFormOut{
813 -
814 -|error|boolean
815 -|errorCode|string
329 +|extraServices|[
330 +nullable: trueHotelExtraServiceBase{(((
331 +|extraServiceCode|string
816 816  nullable: true
817 -|errorDescription|string
333 +|extraServiceTypeCode|string
818 818  nullable: true
819 -|userErrorDescription|string
335 +|isMandatory|integer($int32)
336 +|extraServiceName|string
820 820  nullable: true
821 -|priceCurrency|string
338 +|minimalServiceAmount|number($double)
339 +|includedPriceCode|string
822 822  nullable: true
823 -|totalPrice|number($double)
824 -|agentCommissionPercent|number($double)
825 -|agentCommissionAmount|number($double)
826 -|requiredCitizenIdentifiers|[
827 -nullable: trueCitizenIdentifier{(((
828 -|countryCode|string
341 +|prices|[
342 +nullable: trueHotelExtraServicePriceBase{(((
343 +|extraServicePriceCode|string
829 829  nullable: true
830 -|identifierType|IdentifierTypeEnumstringEnum:
831 -[ TIN, FIN ]
832 -
833 -}]
834 -)))
835 -|hotels|[
836 -nullable: trueCheckoutHotelOut{(((
837 -|hotelPriceId|string
345 +|displayName|string
838 838  nullable: true
839 -|touristIds|[
840 -nullable: truestring($uuid)]
841 -|errorCode|string
347 +|restrictionInfo|string
842 842  nullable: true
843 -|errorMessage|string
349 +|additionalInfo|string
844 844  nullable: true
845 -|description|string
351 +|price|number($double)
352 +|extraPrice|number($double)
353 +|currency|string
846 846  nullable: true
847 847  
848 848  }]
849 849  )))
850 -|tourists|[
851 -nullable: trueCheckoutTouristOut{...}]
852 -|visas|[
853 -nullable: trueServicePrice{(((
854 -|prid|string($uuid)
855 -|prName|string
856 -nullable: true
857 -|prValue|number($double)
858 -|sortingOrder|integer($int32)
859 859  
860 860  }]
861 861  )))
862 -|terminals|[
863 -nullable: trueTerminal{(((
864 -|terminalCode|string
865 -nullable: true
866 -|cityUID|string($uuid)
867 -nullable: true
868 -|districtUID|string($uuid)
869 -nullable: true
870 -|terminalName|string
871 -nullable: true
872 -|countryCode|string
873 -nullable: true
874 -|note|string
875 -nullable: true
876 876  
877 877  }]
878 878  )))
879 -|containsError|boolean
880 -|refreshPriceResult|RefreshPriceResultEnumstringEnum:
881 -[ Success, HotelPriceNoMoreAvailable, FlightPriceNoMoreAvailable ]
882 -|reservationId|string($uuid)
883 -|reservationDetailsUnavailable|boolean
364 +|pagingId|string
365 +nullable: true
366 +|pageNumber|integer($int64)
367 +|pageCount|integer($int64)
884 884  
885 885  }
886 -)))
370 +{{/success}}
887 887  
888 888  
889 -== Descriptions ==
373 +== Definitions ==
890 890  
891 891  
892 -=== Request ===
376 +=== Paging and Caching ===
893 893  
894 -Here's a table describing each parameter of the JSON request:
378 +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:
895 895  
896 -(% class="table-bordered" %)
897 -|=Parameter|=Data Type|=Description
898 -|calcTourPackageRequests|Array|An array of objects, each representing a tour package request.
899 -|refreshPrices|Boolean|If true, the prices for the tour package will be refreshed.
900 -|packageId|String|A unique identifier for the tour package.
901 -|flightPassengers|Array|An array of objects, each representing a flight passenger.
902 -|id|String|A unique identifier for each flight passenger.
903 -|selectedForwardBaggageCode|String|The selected baggage option for the forward journey. there is two optoions ""
904 -|selectedBackwardBaggageCode|String|The selected baggage option for the backward journey.
905 -|extraServicePriceCodes|Array|An array of extra service price codes. If empty, no extra services are selected.
906 -|includeInsurance|Boolean|If true, insurance will be included in the tour package.
907 -|calcOnlyHotelPackageRequests|Array|An array of objects, each representing a hotel-only package request. If empty, no hotel-only packages are requested.
908 -|calcOnlyAviaPackageRequests|Array|An array of objects, each representing an avia-only package request. If empty, no avia-only packages are requested.
909 909  
910 -=== Response ===
381 +==== first request ====
911 911  
912 -(% class="table-bordered" %)
913 -|=Parameter|=Data Type|=Description
914 -|priceCurrency|String|The currency code (ISO 4217) for all prices mentioned in the response.
915 -|totalPrice|Number|The total price of the booking.
916 -|agentCommissionPercent|Number|The commission percentage for the agent.
917 -|agentCommissionAmount|Number|The total commission amount for the agent in priceCurrency.
918 -|requiredCitizenIdentifiers[*].countryCode|String|The ISO 3166-1 alpha-2 country code.
919 -|requiredCitizenIdentifiers[*].identifierType|String|The type of identifier required (e.g., "TIN", "FIN"). **TIN (Taxpayer Identification Number) & FIN (Financial Identification Number)**
920 -|hotels[*].hotelPriceId|String|Unique identifier for the hotel price.
921 -|hotels[*].touristIds[*]|String|List of tourist IDs that are booked in this hotel.
922 -|hotels[*].description|String|A brief description of the hotel.
923 -|tourists[*].id|String|Unique identifier for the tourist.
924 -|tourists[*].isAdult|Boolean|Indicates if the tourist is an adult.
925 -|tourists[*].flightIds[*]|String|Identifiers for flights associated with the tourist.
926 -|tourists[*].flights[*].flightId|String|Unique identifier for the flight.
927 -|tourists[*].flights[*].note|String|Additional information about the flight, such as baggage allowance.
928 -|tourists[*].insurancePrice.insuranceId|String|Unique identifier for the insurance product.
929 -|tourists[*].insurancePrice.insuranceServiceId|String|Identifier for the insurance service provider.
930 -|...|...|Additional fields for insurancePrice as detailed previously.
931 -|tourists[*].transfers[*].id|String|Unique identifier for the transfer service.
932 -|tourists[*].transfers[*].type|String|The type of transfer (e.g., "Arrival", "Departure").
933 -|tourists[*].transfers[*].flightId|String|Identifier of the flight associated with this transfer.
934 -|tourists[*].transfers[*].checkInHotelId|String|Hotel ID for check-in associated with this transfer (for arrival type).
935 -|tourists[*].transfers[*].checkOutHotelId|String|Hotel ID for check-out associated with this transfer (for departure type).
936 -|tourists[*].transfers[*].selectedTransferPriceId|String|The ID of the selected pricing option for the transfer.
937 -|tourists[*].transfers[*].transferPrices[*].id|String|Unique identifier for the transfer price option.
938 -|tourists[*].transfers[*].transferPrices[*].name|String|The name of the transfer service (e.g., "GROUP", "MINIVAN").
939 -|...|...|Additional fields for transferPrices as detailed previously.
940 -|visas[*].prid|String|Unique identifier for the visa option.
941 -|visas[*].prName|String|The name of the visa option.
942 -|visas[*].prValue|Number|The cost associated with this visa option.
943 -|visas[*].sortingOrder|Number|Used to sort visa options in the response or UI.
944 -|terminals[*].terminalCode|String|The code representing the terminal.
945 -|terminals[*].cityUID|String|Unique identifier for the city where the terminal is located.
946 -|...|...|Additional fields for terminals as detailed previously.
947 -|containsError|Boolean|Indicates if the response contains any errors.
948 -|refreshPriceResult|String|The result of attempting to refresh the price (e.g., "Success").
949 -|reservationId|String|Unique identifier for the reservation.
950 -|reservationDetailsUnavailable|Boolean|Indicates if the reservation details are currently unavailable.
951 -|error|Boolean|A generic error indicator, presumably redundant with containsError.
383 +{{code language="Json"}}
384 + {
385 + "pagingId": "",
386 + "pageNumber": 1,
387 + "pageRowCount":10
388 + }
389 +{{/code}}
952 952  
953 -
391 +
392 +==== Request with caching ====
393 +
394 +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
395 +
396 +{{code language="Json"}}
397 + {
398 + "pagingId": "80",
399 + "pageNumber": 1,
400 + "pageRowCount":10
401 + }
402 +{{/code}}
403 +
404 +
405 +**Overview:** The Paging and Caching mechanism is designed to efficiently manage data retrieval in a paginated format. This mechanism is essential for handling large datasets by dividing the data into manageable pages, thereby optimizing the performance and scalability of data retrieval operations.
406 +
407 +**Initial Request:**
408 +
409 +* **Purpose**: The first request initiates the paging process and is designed to fetch the initial set of data without utilizing a pagingId.
410 +* **Parameters**:
411 +** pagingId: Should be set to an empty string ("") to indicate that this is the initial request.
412 +** pageNumber: Indicates the specific page of data to retrieve, starting with 1.
413 +** pageRowCount: Specifies the number of results to be included on each page.
414 +
415 +**Example - First Request**:
416 +
417 +{{{{
418 + "pagingId": "",
419 +  "pageNumber": 1,
420 +  "pageRowCount": 10
421 +}
422 +}}}
423 +
424 +
425 +**Subsequent Requests with Caching:**
426 +
427 +* **Purpose**: Following the initial data retrieval, subsequent requests utilize the pagingId obtained from the previous response. This pagingId serves as a cache identifier, enabling the system to quickly access the relevant dataset and efficiently paginate through the data.
428 +* **Cache Utilization**:
429 +** Upon receiving a response, a pagingId value is provided. This pagingId should be used in subsequent requests to reference the cached data.
430 +** To navigate through the dataset, adjust the pageNumber while keeping the pagingId constant.
431 +** To refresh the dataset and clear the cache, initiate a new request without a pagingId.
432 +
433 +**Example - Request with Caching**:
434 +
435 +{{{ {
436 + "pagingId": "80",
437 + "pageNumber": 2, // Adjusted to fetch the next page
438 + "pageRowCount": 10
439 + }
440 +}}}
441 +
442 +
443 +**Cache Management:**
444 +
445 +* Clearing the cache and fetching a fresh set of data requires sending a new request with the pagingId parameter omitted or set to an empty string. This action resets the pagination and caching context.
446 +
447 +**Implementation Notes**:
448 +
449 +* The paging and caching mechanism significantly enhances data retrieval efficiency by minimizing server load and optimizing response times.
450 +* Developers should ensure that the pagingId is correctly managed between requests to maintain session continuity and data consistency.
451 +
452 +This documentation outlines the procedural framework for implementing a robust paging and caching strategy within data retrieval systems, detailing parameter usage and operational best practices for both initial and subsequent data fetch operations.
453 +
454 +
455 +== Important ==
456 +
457 +{{error}}
458 +=== Implementing Authorization in Subsequent Requests ===
459 +
460 +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:
461 +
462 +* **Header Key:** Authorization
463 +* **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.
464 +
465 +Additionally, to ensure your requests are properly formatted and recognized, include the following headers:
466 +
467 +* **Content-Type:** Specify this header as application/json to indicate the format of the request body.
468 +* **Header Key:** X-nugios-timezone
469 +* **Header Value:** 240 - Adjust this value to match your local timezone offset in minutes.
470 +
471 +Incorporating these headers with their respective values is essential for the successful processing of your API requests.
472 +{{/error}}