Changes for page 4. CalcCheckout

Last modified by Giorgi Mdivnishvili on 2024/04/11 16:59

From version 2.1
edited by Giorgi Mdivnishvili
on 2024/04/11 05:00
Change comment: There is no comment for this version
To version 8.1
edited by Giorgi Mdivnishvili
on 2024/04/11 12:48
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -CalcCheckout
1 +4. CalcCheckout
Content
... ... @@ -8,10 +8,11 @@
8 8  
9 9  This method is used to calculate full package with hotels and flights, to recheck prices, availability, prices and cancelation policy before book.
10 10  
11 +
11 11  == Endpoint URL - [POST] ==
12 12  
13 13  {{info}}
14 -[[https:~~/~~/integration.kazunion.com/api/TourPackages/CalcPackage>>https://integration.kazunion.com/api/TourPackages/CalcPackage]]
15 +[[https:~~/~~/integration.kazunion.com/api/Checkout/CalcCheckout>>https://integration.kazunion.com/api/Checkout/CalcCheckout]]
15 15  {{/info}}
16 16  
17 17  
... ... @@ -27,20 +27,97 @@
27 27  
28 28  {{code language="Json"}}
29 29  {
30 - "packageId": "string",
31 - "extraServicePriceCodes": [
32 - "string"
31 + "reservationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
32 + "calcTourPackageRequests": [
33 + {
34 + "packageId": "string",
35 + "extraServicePriceCodes": [
36 + "string"
37 + ],
38 + "flightPassengers": [
39 + {
40 + "id": "string",
41 + "selectedForwardBaggageCode": "string",
42 + "selectedBackwardBaggageCode": "string"
43 + }
44 + ],
45 + "includeInsurance": true,
46 + "refreshPrices": true
47 + }
33 33   ],
34 - "flightPassengers": [
49 + "calcOnlyHotelPackageRequests": [
35 35   {
36 - "id": "string",
37 - "selectedForwardBaggageCode": "string",
38 - "selectedBackwardBaggageCode": "string"
51 + "packageId": "string",
52 + "extraServicePriceCodes": [
53 + "string"
54 + ],
55 + "includeInsurance": true,
56 + "refreshPrices": true
39 39   }
40 40   ],
41 - "includeInsurance": true,
42 - "refreshPrices": true
59 + "calcOnlyAviaPackageRequests": [
60 + {
61 + "packageId": "string",
62 + "refreshPrices": true,
63 + "flightPassengers": [
64 + {
65 + "id": "string",
66 + "selectedForwardBaggageCode": "string",
67 + "selectedBackwardBaggageCode": "string"
68 + }
69 + ]
70 + }
71 + ],
72 + "hotels": [
73 + {
74 + "hotelPriceId": "string",
75 + "agentConfirmationNumber": "string",
76 + "note": "string",
77 + "touristIds": [
78 + "3fa85f64-5717-4562-b3fc-2c963f66afa6"
79 + ]
80 + }
81 + ],
82 + "tourists": [
83 + {
84 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
85 + "firstName": "string",
86 + "lastName": "string",
87 + "birthDate": "2024-04-11T03:34:15.828Z",
88 + "passportNumber": "string",
89 + "passportExpiry": "2024-04-11T03:34:15.828Z",
90 + "passportIssue": "2024-04-11T03:34:15.828Z",
91 + "citizenship": "string",
92 + "tin": "string",
93 + "isMale": true,
94 + "flightIds": [
95 + "string"
96 + ],
97 + "arrivalFlightInfo": {
98 + "flightNumber": "string",
99 + "terminalCode": "string",
100 + "date": "2024-04-11T03:34:15.828Z",
101 + "time": "string"
102 + },
103 + "departureFlightInfo": {
104 + "flightNumber": "string",
105 + "terminalCode": "string",
106 + "date": "2024-04-11T03:34:15.828Z",
107 + "time": "string"
108 + },
109 + "selectedVisaId": "string",
110 + "transfers": [
111 + {
112 + "id": "string",
113 + "selectedTransferPriceId": "string"
114 + }
115 + ]
116 + }
117 + ],
118 + "note": "string",
119 + "contactPhone": "string"
43 43  }
121 +
44 44  {{/code}}
45 45  
46 46  (% class="wikigeneratedid" id="HRequestBodyexample" %)
... ... @@ -52,19 +52,28 @@
52 52  
53 53  {{code language="Json"}}
54 54  {
55 - "packageId": "tour:1d0fa533-4261-4254-93bb-83599d581ffc:193990fa-41a5-46e6-9805-50f82c3c377f:0c299240-6fc6-4f79-ba99-3548f2de3f57",
56 - "extraServicePriceCodes": [
57 -
58 - ],
59 - "flightPassengers": [
60 - {
61 - "id": "42779531011000004-A1",
62 - "selectedForwardBaggageCode": "",
63 - "selectedBackwardBaggageCode": ""
64 - }
65 - ],
66 - "includeInsurance": true,
67 - "refreshPrices": true
133 + "calcTourPackageRequests": [
134 + {
135 + "refreshPrices": true,
136 + "packageId": "tour:7caef71d-25e3-4882-b0db-81e766af2b72:fa7a89d5-1c20-4004-b3d2-f8d08163827f:53552191-59ea-469d-ae9d-5b848da8839d",
137 + "flightPassengers": [
138 + {
139 + "id": "53552191-59ea-469d-ae9d-5b848da8839d-A1",
140 + "selectedForwardBaggageCode": "INCLUDED",
141 + "selectedBackwardBaggageCode": "INCLUDED"
142 + },
143 + {
144 + "id": "53552191-59ea-469d-ae9d-5b848da8839d-A2",
145 + "selectedForwardBaggageCode": "INCLUDED",
146 + "selectedBackwardBaggageCode": "INCLUDED"
147 + }
148 + ],
149 + "extraServicePriceCodes": [],
150 + "includeInsurance": true
151 + }
152 + ],
153 + "calcOnlyHotelPackageRequests": [],
154 + "calcOnlyAviaPackageRequests": []
68 68  }
69 69  {{/code}}
70 70  
... ... @@ -77,353 +77,126 @@
77 77   "errorCode": "string",
78 78   "errorDescription": "string",
79 79   "userErrorDescription": "string",
80 - "package": {
81 - "cacheKey": "string",
82 - "id": "string",
83 - "priceCurrency": "string",
84 - "totalPrice": 0,
85 - "agentCommissionPercent": 0,
86 - "agentCommissionAmount": 0,
87 - "includedExtrasAmount": 0,
88 - "priceDifference": 0,
89 - "hotel": {
90 - "hotelPriceId": "string",
91 - "providerId": 0,
92 - "hotelName": "string",
93 - "hotelCode": "string",
94 - "nigths": 0,
95 - "mealPlan": "string",
96 - "hotelClass": "string",
97 - "availabilityType": "OnRequest",
98 - "availableRoomsCount": 0,
99 - "fewRooms": true,
100 - "roomCategoryCode": "string",
101 - "roomCategoryName": "string",
102 - "placementTypeName": "string",
103 - "placementDescription": "string",
104 - "checkInDate": "2023-12-26T12:55:59.433Z",
105 - "checkOutDate": "2023-12-26T12:55:59.433Z",
106 - "adults": 0,
107 - "children": 0,
108 - "districtUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
109 - "districtName": "string",
110 - "cityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
111 - "cityName": "string",
167 + "priceCurrency": "string",
168 + "totalPrice": 0,
169 + "agentCommissionPercent": 0,
170 + "agentCommissionAmount": 0,
171 + "requiredCitizenIdentifiers": [
172 + {
112 112   "countryCode": "string",
113 - "countryName": "string",
114 - "hasAlcohol": true,
115 - "hasFreeWifi": true,
116 - "hasMetro": true,
117 - "hasPool": true,
118 - "hasMall": true,
119 - "cancellationPolicyDescription": "string",
120 - "cancellationPolicy": {
121 - "cancellationPolicyCode": "string",
122 - "noShowChargeValue": 0,
123 - "noShowChargeValueType": "string",
124 - "earlyDepartureChargeValue": 0,
125 - "earlyDepartureChargeValueType": "string",
126 - "conditions": [
127 - {
128 - "timeunits": 0,
129 - "timeunitType": "string",
130 - "timeOffsetTypeName": "string",
131 - "chargeValue": 0,
132 - "chargeValueType": "string"
133 - }
134 - ]
135 - }
136 - },
137 - "flight": {
138 - "id": "string",
139 - "departureDate": "2023-12-26T12:55:59.433Z",
140 - "returnDate": "2023-12-26T12:55:59.433Z",
141 - "departureTicketsLeft": 0,
142 - "returnTicketsLeft": 0,
143 - "departureAvailabilityType": "OnRequest",
144 - "returnAvailabilityType": "OnRequest",
145 - "isTwoWay": true,
146 - "sameBaggageForAll": true,
147 - "totalBaggage": true,
148 - "departureSegments": [
149 - {
150 - "airlineCode": "string",
151 - "airlineName": "string",
152 - "flightCode": "string",
153 - "class": "string",
154 - "lugageWeight": 0,
155 - "handLugageWeight": 0,
156 - "departureFlightDate": "2023-12-26T12:55:59.433Z",
157 - "departureCountryName": "string",
158 - "departureCityName": "string",
159 - "departureAirportCode": "string",
160 - "departureAirportName": "string",
161 - "departureTerminalCode": "string",
162 - "arrivalFlightDate": "2023-12-26T12:55:59.433Z",
163 - "arrivalCountryName": "string",
164 - "arrivalCityName": "string",
165 - "arrivalAirportCode": "string",
166 - "arrivalAirportName": "string",
167 - "arrivalTerminalCode": "string",
168 - "flightDuration": "string"
169 - }
174 + "identifierType": "TIN"
175 + }
176 + ],
177 + "hotels": [
178 + {
179 + "hotelPriceId": "string",
180 + "touristIds": [
181 + "3fa85f64-5717-4562-b3fc-2c963f66afa6"
170 170   ],
171 - "returnSegments": [
172 - {
173 - "airlineCode": "string",
174 - "airlineName": "string",
175 - "flightCode": "string",
176 - "class": "string",
177 - "lugageWeight": 0,
178 - "handLugageWeight": 0,
179 - "departureFlightDate": "2023-12-26T12:55:59.433Z",
180 - "departureCountryName": "string",
181 - "departureCityName": "string",
182 - "departureAirportCode": "string",
183 - "departureAirportName": "string",
184 - "departureTerminalCode": "string",
185 - "arrivalFlightDate": "2023-12-26T12:55:59.433Z",
186 - "arrivalCountryName": "string",
187 - "arrivalCityName": "string",
188 - "arrivalAirportCode": "string",
189 - "arrivalAirportName": "string",
190 - "arrivalTerminalCode": "string",
191 - "flightDuration": "string"
192 - }
183 + "errorCode": "string",
184 + "errorMessage": "string",
185 + "description": "string"
186 + }
187 + ],
188 + "tourists": [
189 + {
190 + "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
191 + "age": 0,
192 + "isAdult": true,
193 + "flightIds": [
194 + "string"
193 193   ],
194 - "passengers": [
196 + "flights": [
195 195   {
196 - "id": "string",
197 - "isAdult": true,
198 - "selectedForwardBaggageCode": "string",
199 - "selectedBackwardBaggageCode": "string",
200 - "forwardBaggages": [
201 - {
202 - "baggageCode": "string",
203 - "description": "string",
204 - "price": 0,
205 - "currency": "string",
206 - "included": true
207 - }
208 - ],
209 - "backwardBaggages": [
210 - {
211 - "baggageCode": "string",
212 - "description": "string",
213 - "price": 0,
214 - "currency": "string",
215 - "included": true
216 - }
217 - ]
198 + "flightId": "string",
199 + "note": "string"
218 218   }
219 - ]
220 - },
221 - "extraServices": [
222 - {
223 - "extraServiceCode": "string",
224 - "extraServiceTypeCode": "string",
225 - "isMandatory": 0,
226 - "extraServiceName": "string",
227 - "minimalServiceAmount": 0,
228 - "includedPriceCode": "string",
229 - "prices": [
230 - {
231 - "extraServicePriceCode": "string",
232 - "displayName": "string",
233 - "restrictionInfo": "string",
234 - "additionalInfo": "string",
235 - "price": 0,
236 - "extraPrice": 0,
237 - "currency": "string"
238 - }
239 - ]
240 - }
241 - ],
242 - "insurancePrice": {
243 - "name": "string",
244 - "price": 0,
245 - "priceSurcarge": 0,
246 - "actualStartDate": "2023-12-26T12:55:59.433Z",
247 - "actualEndDate": "2023-12-26T12:55:59.433Z",
248 - "optional": true,
249 - "includedInPackagePrice": true
250 - }
251 - },
252 - "altPackages": [
253 - {
254 - "cacheKey": "string",
255 - "id": "string",
256 - "priceCurrency": "string",
257 - "totalPrice": 0,
258 - "agentCommissionPercent": 0,
259 - "agentCommissionAmount": 0,
260 - "includedExtrasAmount": 0,
261 - "priceDifference": 0,
262 - "hotel": {
263 - "hotelPriceId": "string",
264 - "providerId": 0,
265 - "hotelName": "string",
266 - "hotelCode": "string",
267 - "nigths": 0,
268 - "mealPlan": "string",
269 - "hotelClass": "string",
270 - "availabilityType": "OnRequest",
271 - "availableRoomsCount": 0,
272 - "fewRooms": true,
273 - "roomCategoryCode": "string",
274 - "roomCategoryName": "string",
275 - "placementTypeName": "string",
276 - "placementDescription": "string",
277 - "checkInDate": "2023-12-26T12:55:59.433Z",
278 - "checkOutDate": "2023-12-26T12:55:59.433Z",
279 - "adults": 0,
280 - "children": 0,
281 - "districtUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
282 - "districtName": "string",
283 - "cityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
284 - "cityName": "string",
285 - "countryCode": "string",
286 - "countryName": "string",
287 - "hasAlcohol": true,
288 - "hasFreeWifi": true,
289 - "hasMetro": true,
290 - "hasPool": true,
291 - "hasMall": true,
292 - "cancellationPolicyDescription": "string",
293 - "cancellationPolicy": {
294 - "cancellationPolicyCode": "string",
295 - "noShowChargeValue": 0,
296 - "noShowChargeValueType": "string",
297 - "earlyDepartureChargeValue": 0,
298 - "earlyDepartureChargeValueType": "string",
299 - "conditions": [
300 - {
301 - "timeunits": 0,
302 - "timeunitType": "string",
303 - "timeOffsetTypeName": "string",
304 - "chargeValue": 0,
305 - "chargeValueType": "string"
306 - }
307 - ]
308 - }
201 + ],
202 + "arrivalFlightInfo": {
203 + "flightNumber": "string",
204 + "terminalCode": "string",
205 + "date": "2024-04-11T05:03:16.796Z",
206 + "time": "string"
309 309   },
310 - "flight": {
311 - "id": "string",
312 - "departureDate": "2023-12-26T12:55:59.433Z",
313 - "returnDate": "2023-12-26T12:55:59.433Z",
314 - "departureTicketsLeft": 0,
315 - "returnTicketsLeft": 0,
316 - "departureAvailabilityType": "OnRequest",
317 - "returnAvailabilityType": "OnRequest",
318 - "isTwoWay": true,
319 - "sameBaggageForAll": true,
320 - "totalBaggage": true,
321 - "departureSegments": [
322 - {
323 - "airlineCode": "string",
324 - "airlineName": "string",
325 - "flightCode": "string",
326 - "class": "string",
327 - "lugageWeight": 0,
328 - "handLugageWeight": 0,
329 - "departureFlightDate": "2023-12-26T12:55:59.433Z",
330 - "departureCountryName": "string",
331 - "departureCityName": "string",
332 - "departureAirportCode": "string",
333 - "departureAirportName": "string",
334 - "departureTerminalCode": "string",
335 - "arrivalFlightDate": "2023-12-26T12:55:59.433Z",
336 - "arrivalCountryName": "string",
337 - "arrivalCityName": "string",
338 - "arrivalAirportCode": "string",
339 - "arrivalAirportName": "string",
340 - "arrivalTerminalCode": "string",
341 - "flightDuration": "string"
342 - }
343 - ],
344 - "returnSegments": [
345 - {
346 - "airlineCode": "string",
347 - "airlineName": "string",
348 - "flightCode": "string",
349 - "class": "string",
350 - "lugageWeight": 0,
351 - "handLugageWeight": 0,
352 - "departureFlightDate": "2023-12-26T12:55:59.433Z",
353 - "departureCountryName": "string",
354 - "departureCityName": "string",
355 - "departureAirportCode": "string",
356 - "departureAirportName": "string",
357 - "departureTerminalCode": "string",
358 - "arrivalFlightDate": "2023-12-26T12:55:59.433Z",
359 - "arrivalCountryName": "string",
360 - "arrivalCityName": "string",
361 - "arrivalAirportCode": "string",
362 - "arrivalAirportName": "string",
363 - "arrivalTerminalCode": "string",
364 - "flightDuration": "string"
365 - }
366 - ],
367 - "passengers": [
368 - {
369 - "id": "string",
370 - "isAdult": true,
371 - "selectedForwardBaggageCode": "string",
372 - "selectedBackwardBaggageCode": "string",
373 - "forwardBaggages": [
374 - {
375 - "baggageCode": "string",
376 - "description": "string",
377 - "price": 0,
378 - "currency": "string",
379 - "included": true
380 - }
381 - ],
382 - "backwardBaggages": [
383 - {
384 - "baggageCode": "string",
385 - "description": "string",
386 - "price": 0,
387 - "currency": "string",
388 - "included": true
389 - }
390 - ]
391 - }
392 - ]
208 + "departureFlightInfo": {
209 + "flightNumber": "string",
210 + "terminalCode": "string",
211 + "date": "2024-04-11T05:03:16.796Z",
212 + "time": "string"
393 393   },
394 - "extraServices": [
214 + "insurancePrice": {
215 + "insuranceId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
216 + "insuranceServiceId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
217 + "insurancePriceId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
218 + "touristId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
219 + "insuranceName": "string",
220 + "insuranceDescription": "string",
221 + "contragentName": "string",
222 + "contragentFullName": "string",
223 + "actualStartDate": "2024-04-11T05:03:16.796Z",
224 + "actualEndDate": "2024-04-11T05:03:16.796Z",
225 + "costCurrencyCode": "string",
226 + "costAmount": 0,
227 + "priceCurrencyCode": "string",
228 + "priceAmount": 0,
229 + "coverageCurrencyCode": "string",
230 + "coverageAmount": 0
231 + },
232 + "selectedVisaId": "string",
233 + "transfers": [
395 395   {
396 - "extraServiceCode": "string",
397 - "extraServiceTypeCode": "string",
398 - "isMandatory": 0,
399 - "extraServiceName": "string",
400 - "minimalServiceAmount": 0,
401 - "includedPriceCode": "string",
402 - "prices": [
235 + "id": "string",
236 + "type": "Arrival",
237 + "flightId": "string",
238 + "flightInfo": {
239 + "flightNumber": "string",
240 + "terminalCode": "string",
241 + "date": "2024-04-11T05:03:16.796Z",
242 + "time": "string"
243 + },
244 + "checkInHotelId": "string",
245 + "checkOutHotelId": "string",
246 + "selectedTransferPriceId": "string",
247 + "transferPrices": [
403 403   {
404 - "extraServicePriceCode": "string",
405 - "displayName": "string",
406 - "restrictionInfo": "string",
407 - "additionalInfo": "string",
408 - "price": 0,
409 - "extraPrice": 0,
410 - "currency": "string"
249 + "id": "string",
250 + "name": "string",
251 + "adultPlaces": 0,
252 + "childPlaces": 0,
253 + "perPersonPrice": true,
254 + "adultPrice": 0,
255 + "childPrice": 0
411 411   }
412 412   ]
413 413   }
414 414   ],
415 - "insurancePrice": {
416 - "name": "string",
417 - "price": 0,
418 - "priceSurcarge": 0,
419 - "actualStartDate": "2023-12-26T12:55:59.433Z",
420 - "actualEndDate": "2023-12-26T12:55:59.433Z",
421 - "optional": true,
422 - "includedInPackagePrice": true
423 - }
260 + "errorCode": "string",
261 + "errorMessage": "string",
262 + "description": "string"
424 424   }
425 425   ],
426 - "refreshPriceResult": "Success"
265 + "visas": [
266 + {
267 + "prid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
268 + "prName": "string",
269 + "prValue": 0,
270 + "sortingOrder": 0
271 + }
272 + ],
273 + "terminals": [
274 + {
275 + "terminalCode": "string",
276 + "cityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
277 + "districtUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
278 + "terminalName": "string",
279 + "countryCode": "string",
280 + "note": "string"
281 + }
282 + ],
283 + "containsError": true,
284 + "refreshPriceResult": "Success",
285 + "reservationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
286 + "reservationDetailsUnavailable": true
427 427  }
428 428  {{/code}}
429 429  
... ... @@ -778,8 +778,6 @@
778 778  === Schema ===
779 779  
780 780  {{success}}
781 -CalcOnlyHotelPackageResponse{
782 -
783 783  |error|boolean
784 784  |errorCode|string
785 785  nullable: true
... ... @@ -787,128 +787,246 @@
787 787  nullable: true
788 788  |userErrorDescription|string
789 789  nullable: true
790 -|package|OnlyHotelPackage{(((
791 -|id|string
792 -nullable: true
793 793  |priceCurrency|string
794 794  nullable: true
795 795  |totalPrice|number($double)
796 796  |agentCommissionPercent|number($double)
797 797  |agentCommissionAmount|number($double)
798 -|hotel|PackageHotel{(((
653 +|requiredCitizenIdentifiers|[
654 +nullable: trueCitizenIdentifier{(((
655 +|countryCode|[...]
656 +|identifierType|IdentifierTypeEnumstringEnum:
657 +[ TIN, FIN ]
658 +
659 +}]
660 +)))
661 +|hotels|[
662 +nullable: trueCheckoutHotelOut{(((
799 799  |hotelPriceId|string
800 800  nullable: true
801 -|providerId|integer($int32)
802 -|hotelName|string
665 +|touristIds|[
666 +nullable: truestring($uuid)]
667 +|errorCode|string
803 803  nullable: true
804 -|hotelCode|string
669 +|errorMessage|string
805 805  nullable: true
806 -|nigths|integer($int32)
807 -|mealPlan|string
671 +|description|string
808 808  nullable: true
809 -|hotelClass|string
673 +
674 +}]
675 +)))
676 +|tourists|[
677 +nullable: trueCheckoutTouristOut{(((
678 +|id|[...]
679 +|age|[...]
680 +|isAdult|[...]
681 +|flightIds|[...]
682 +|flights|[...]
683 +|arrivalFlightInfo|ManualFlightInfo{(((
684 +|flightNumber|string
810 810  nullable: true
811 -|availabilityType|RoomAvailabilityTypeEnumstringEnum:
812 -[ OnRequest, FreeSale, StopSale ]
813 -|availableRoomsCount|integer($int32)
814 -|fewRooms|boolean
815 -|roomCategoryCode|string
686 +|terminalCode|string
816 816  nullable: true
817 -|roomCategoryName|string
688 +|date|string($date-time)
818 818  nullable: true
819 -|placementTypeName|string
690 +|time|string
820 820  nullable: true
821 -|placementDescription|string
692 +
693 +}
694 +)))
695 +|departureFlightInfo|ManualFlightInfo{(((
696 +|flightNumber|string
822 822  nullable: true
823 -|checkInDate|string($date-time)
824 -|checkOutDate|string($date-time)
825 -|adults|integer($int32)
826 -|children|integer($int32)
827 -|districtUID|string($uuid)
698 +|terminalCode|string
828 828  nullable: true
829 -|districtName|string
700 +|date|string($date-time)
830 830  nullable: true
831 -|cityUID|string($uuid)
702 +|time|string
832 832  nullable: true
833 -|cityName|string
704 +
705 +}
706 +)))
707 +|insurancePrice|InsurancePriceForTourist{(((
708 +|insuranceId|string($uuid)
709 +|insuranceServiceId|string($uuid)
710 +|insurancePriceId|string($uuid)
711 +|touristId|string($uuid)
712 +|insuranceName|string
834 834  nullable: true
835 -|countryCode|string
714 +|insuranceDescription|string
836 836  nullable: true
837 -|countryName|string
716 +|contragentName|string
838 838  nullable: true
839 -|hasAlcohol|boolean
840 -|hasFreeWifi|boolean
841 -|hasMetro|boolean
842 -|hasPool|boolean
843 -|hasMall|boolean
844 -|cancellationPolicyDescription|string
718 +|contragentFullName|string
845 845  nullable: true
846 -|cancellationPolicy|CancellationPolicyExchange{(((
847 -|cancellationPolicyCode|string
720 +|actualStartDate|string($date-time)
721 +|actualEndDate|string($date-time)
722 +|costCurrencyCode|string
848 848  nullable: true
849 -|noShowChargeValue|number($double)
724 +|costAmount|number($double)
725 +|priceCurrencyCode|string
850 850  nullable: true
851 -|noShowChargeValueType|string
727 +|priceAmount|number($double)
728 +|coverageCurrencyCode|string
852 852  nullable: true
853 -|earlyDepartureChargeValue|number($double)
730 +|coverageAmount|number($double)
731 +
732 +}
733 +)))
734 +|selectedVisaId|string
854 854  nullable: true
855 -|earlyDepartureChargeValueType|string
736 +|transfers|[
737 +nullable: trueCheckoutTransferOut{(((
738 +|id|string
856 856  nullable: true
857 -|conditions|[
858 -nullable: trueCancellationPolicyConditionExchange{(((
859 -|timeunits|integer($int32)
860 -|timeunitType|string
740 +|type|CheckoutTransferTypeEnumstringEnum:
741 +[ Arrival, Departure, HotelToHotel ]
742 +|flightId|string
861 861  nullable: true
862 -|timeOffsetTypeName|string
744 +|flightInfo|ManualFlightInfo{(((
745 +|flightNumber|string
863 863  nullable: true
864 -|chargeValue|number($double)
747 +|terminalCode|string
865 865  nullable: true
866 -|chargeValueType|string
749 +|date|string($date-time)
867 867  nullable: true
751 +|time|string
752 +nullable: true
868 868  
869 -}]
870 -)))
871 -
872 872  }
873 873  )))
874 -
875 -}
876 -)))
877 -|extraServices|[
878 -nullable: trueHotelExtraServiceBase{(((
879 -|extraServiceCode|string
756 +|checkInHotelId|string
880 880  nullable: true
881 -|extraServiceTypeCode|string
758 +|checkOutHotelId|string
882 882  nullable: true
883 -|isMandatory|integer($int32)
884 -|extraServiceName|string
760 +|selectedTransferPriceId|string
885 885  nullable: true
886 -|minimalServiceAmount|number($double)
887 -|includedPriceCode|string
762 +|transferPrices|[
763 +nullable: trueCheckoutTransferPrice{(((
764 +|id|string
888 888  nullable: true
889 -|prices|[
890 -nullable: trueHotelExtraServicePriceBase{(((
891 -|extraServicePriceCode|string
766 +|name|string
892 892  nullable: true
893 -|displayName|string
768 +|adultPlaces|integer($int32)
769 +|childPlaces|integer($int32)
770 +|perPersonPrice|boolean
771 +|adultPrice|number($double)
772 +|childPrice|number($double)
773 +
774 +}]
775 +)))
776 +
777 +}]
778 +)))
779 +|errorCode|string
894 894  nullable: true
895 -|restrictionInfo|string
781 +|errorMessage|string
896 896  nullable: true
897 -|additionalInfo|string
783 +|description|string
898 898  nullable: true
899 -|price|number($double)
900 -|extraPrice|number($double)
901 -|currency|string
902 -nullable: true
903 903  
904 904  }]
905 905  )))
788 +|visas|[
789 +nullable: trueServicePrice{(((
790 +|prid|string($uuid)
791 +|prName|string
792 +nullable: true
793 +|prValue|number($double)
794 +|sortingOrder|integer($int32)
906 906  
907 907  }]
908 908  )))
798 +|terminals|[
799 +nullable: trueTerminal{(((
800 +|terminalCode|string
801 +nullable: true
802 +|cityUID|string($uuid)
803 +nullable: true
804 +|districtUID|string($uuid)
805 +nullable: true
806 +|terminalName|string
807 +nullable: true
808 +|countryCode|string
809 +nullable: true
810 +|note|string
811 +nullable: true
909 909  
910 -}
813 +}]
911 911  )))
815 +|containsError|boolean
816 +|refreshPriceResult|RefreshPriceResultEnumstringEnum:
817 +[ Success, HotelPriceNoMoreAvailable, FlightPriceNoMoreAvailable ]
818 +|reservationId|string($uuid)
819 +|reservationDetailsUnavailable|boolean
912 912  
913 913  }
914 914  {{/success}}
823 +
824 +
825 +== Descriptions ==
826 +
827 +
828 +=== Request ===
829 +
830 +Here's a table describing each parameter of the JSON request:
831 +
832 +(% class="table-bordered" %)
833 +|=Parameter|=Data Type|=Description
834 +|calcTourPackageRequests|Array|An array of objects, each representing a tour package request.
835 +|refreshPrices|Boolean|If true, the prices for the tour package will be refreshed.
836 +|packageId|String|A unique identifier for the tour package.
837 +|flightPassengers|Array|An array of objects, each representing a flight passenger.
838 +|id|String|A unique identifier for each flight passenger.
839 +|selectedForwardBaggageCode|String|The selected baggage option for the forward journey.
840 +|selectedBackwardBaggageCode|String|The selected baggage option for the backward journey.
841 +|extraServicePriceCodes|Array|An array of extra service price codes. If empty, no extra services are selected.
842 +|includeInsurance|Boolean|If true, insurance will be included in the tour package.
843 +|calcOnlyHotelPackageRequests|Array|An array of objects, each representing a hotel-only package request. If empty, no hotel-only packages are requested.
844 +|calcOnlyAviaPackageRequests|Array|An array of objects, each representing an avia-only package request. If empty, no avia-only packages are requested.
845 +
846 +
847 +=== Response ===
848 +
849 +(% class="table-bordered" %)
850 +|=Parameter|=Data Type|=Description
851 +|priceCurrency|String|The currency code (ISO 4217) for all prices mentioned in the response.
852 +|totalPrice|Number|The total price of the booking.
853 +|agentCommissionPercent|Number|The commission percentage for the agent.
854 +|agentCommissionAmount|Number|The total commission amount for the agent in priceCurrency.
855 +|requiredCitizenIdentifiers[*].countryCode|String|The ISO 3166-1 alpha-2 country code.
856 +|requiredCitizenIdentifiers[*].identifierType|String|The type of identifier required (e.g., "TIN", "FIN").
857 +|hotels[*].hotelPriceId|String|Unique identifier for the hotel price.
858 +|hotels[*].touristIds[*]|String|List of tourist IDs that are booked in this hotel.
859 +|hotels[*].description|String|A brief description of the hotel.
860 +|tourists[*].id|String|Unique identifier for the tourist.
861 +|tourists[*].isAdult|Boolean|Indicates if the tourist is an adult.
862 +|tourists[*].flightIds[*]|String|Identifiers for flights associated with the tourist.
863 +|tourists[*].flights[*].flightId|String|Unique identifier for the flight.
864 +|tourists[*].flights[*].note|String|Additional information about the flight, such as baggage allowance.
865 +|tourists[*].insurancePrice.insuranceId|String|Unique identifier for the insurance product.
866 +|tourists[*].insurancePrice.insuranceServiceId|String|Identifier for the insurance service provider.
867 +|...|...|Additional fields for insurancePrice as detailed previously.
868 +|tourists[*].transfers[*].id|String|Unique identifier for the transfer service.
869 +|tourists[*].transfers[*].type|String|The type of transfer (e.g., "Arrival", "Departure").
870 +|tourists[*].transfers[*].flightId|String|Identifier of the flight associated with this transfer.
871 +|tourists[*].transfers[*].checkInHotelId|String|Hotel ID for check-in associated with this transfer (for arrival type).
872 +|tourists[*].transfers[*].checkOutHotelId|String|Hotel ID for check-out associated with this transfer (for departure type).
873 +|tourists[*].transfers[*].selectedTransferPriceId|String|The ID of the selected pricing option for the transfer.
874 +|tourists[*].transfers[*].transferPrices[*].id|String|Unique identifier for the transfer price option.
875 +|tourists[*].transfers[*].transferPrices[*].name|String|The name of the transfer service (e.g., "GROUP", "MINIVAN").
876 +|...|...|Additional fields for transferPrices as detailed previously.
877 +|visas[*].prid|String|Unique identifier for the visa option.
878 +|visas[*].prName|String|The name of the visa option.
879 +|visas[*].prValue|Number|The cost associated with this visa option.
880 +|visas[*].sortingOrder|Number|Used to sort visa options in the response or UI.
881 +|terminals[*].terminalCode|String|The code representing the terminal.
882 +|terminals[*].cityUID|String|Unique identifier for the city where the terminal is located.
883 +|...|...|Additional fields for terminals as detailed previously.
884 +|containsError|Boolean|Indicates if the response contains any errors.
885 +|refreshPriceResult|String|The result of attempting to refresh the price (e.g., "Success").
886 +|reservationId|String|Unique identifier for the reservation.
887 +|reservationDetailsUnavailable|Boolean|Indicates if the reservation details are currently unavailable.
888 +|error|Boolean|A generic error indicator, presumably redundant with containsError.
889 +
890 +