Changes for page 1. SearchTourPackages

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

From version 2.1
edited by Giorgi Mdivnishvili
on 2023/12/14 17:43
Change comment: There is no comment for this version
To version 13.1
edited by Giorgi Mdivnishvili
on 2023/12/19 18:05
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -SearchTourPackages
1 +1. SearchTourPackages
Content
... ... @@ -9,23 +9,17 @@
9 9  The initial method of the integration process is authorization. You will be provided with a test user username and password to generate the access token that you will need to pass in all the following methods.
10 10  
11 11  
12 -== Endpoint URL - [GET] ==
12 +== Endpoint URL - [POST] ==
13 13  
14 14  {{info}}
15 -[[http:~~/~~/online-api.kazunion.com/api/Catalogue/GetHotels>>http://online-api.kazunion.com/api/Catalogue/GetHotels]]
15 +[[https:~~/~~/online-api.kazunion.com/api/TourPackages/SearchTourPackages>>https://online-api.kazunion.com/api/TourPackages/SearchTourPackages]]
16 16  {{/info}}
17 17  
18 -
19 19  == Request Parameters ==
20 20  
21 21  (% class="box infomessage" %)
22 22  (((
23 -
24 -
25 -|**Key**|**Value**|**Request URL**
26 -|CountryCode|AE|[[http:~~/~~/online-api.kazunion.com/api/Catalogue/GetHotels?countryCode=AE>>http://online-api.kazunion.com/api/Catalogue/GetHotels?countryCode=AE]]
27 -
28 -
22 +None 
29 29  )))
30 30  
31 31  
... ... @@ -32,7 +32,62 @@
32 32  == Request Body ==
33 33  
34 34  {{code language="Json"}}
35 -none
29 +{
30 + "departureCountryCode": "string",
31 + "departureCityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
32 + "arrivalCountryCode": "string",
33 + "arrivalLocations": [
34 + {
35 + "type": "string",
36 + "parent": "string",
37 + "label": "string",
38 + "subLabel": "string",
39 + "value": "string",
40 + "tag": "string"
41 + }
42 + ],
43 + "checkInDate": "2023-12-14T13:43:54.766Z",
44 + "checkInDateTo": "2023-12-14T13:43:54.766Z",
45 + "checkOutDate": "2023-12-14T13:43:54.766Z",
46 + "stayDays": 0,
47 + "stayDaysTo": 0,
48 + "departureDate": "2023-12-14T13:43:54.766Z",
49 + "returnDate": "2023-12-14T13:43:54.766Z",
50 + "airlineCode": "string",
51 + "ticketType": "string",
52 + "directFlightsOnly": true,
53 + "longConnectTime": true,
54 + "adults": 0,
55 + "children": 0,
56 + "childrenAges": [
57 + 0
58 + ],
59 + "extendedSearch": true,
60 + "totalPriceFrom": 0,
61 + "totalPriceTo": 0,
62 + "recommended": true,
63 + "popular": true,
64 + "freeSale": true,
65 + "groupByHotel": true,
66 + "hotelCodes": [
67 + "string"
68 + ],
69 + "mealPlans": [
70 + "string"
71 + ],
72 + "hotelClasses": [
73 + "string"
74 + ],
75 + "hotelTypes": [
76 + "CityHotel"
77 + ],
78 + "hotelServices": [
79 + "HasAlcohol"
80 + ],
81 + "pagingId": "string",
82 + "pageNumber": 0,
83 + "pageRowCount": 0
84 +}
36 36  {{/code}}
37 37  
38 38  
... ... @@ -39,27 +39,179 @@
39 39  == Response Body ==
40 40  
41 41  {{code language="json"}}
42 -[
43 - {
44 - "hotelCode": "string",
45 - "hotelName": "string",
46 - "hotelClass": "string",
47 - "cityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
48 - "countryCode": "string",
49 - "countryName": "string",
50 - "districtUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
51 - "cityName": "string",
52 - "districtName": "string",
53 - "hotelType": "CityHotel",
54 - "latitude": "string",
55 - "longitude": "string",
56 - "hasAlcohol": true,
57 - "hasFreeWifi": true,
58 - "hasMetro": true,
59 - "hasPool": true,
60 - "hasMall": true
61 - }
62 -]
91 +{
92 + "error": true,
93 + "errorCode": "string",
94 + "errorDescription": "string",
95 + "userErrorDescription": "string",
96 + "packages": [
97 + {
98 + "cacheKey": "string",
99 + "id": "string",
100 + "priceCurrency": "string",
101 + "totalPrice": 0,
102 + "agentCommissionPercent": 0,
103 + "agentCommissionAmount": 0,
104 + "includedExtrasAmount": 0,
105 + "priceDifference": 0,
106 + "hotel": {
107 + "hotelPriceId": "string",
108 + "providerId": 0,
109 + "hotelName": "string",
110 + "hotelCode": "string",
111 + "nigths": 0,
112 + "mealPlan": "string",
113 + "hotelClass": "string",
114 + "availabilityType": "OnRequest",
115 + "availableRoomsCount": 0,
116 + "fewRooms": true,
117 + "roomCategoryCode": "string",
118 + "roomCategoryName": "string",
119 + "placementTypeName": "string",
120 + "placementDescription": "string",
121 + "checkInDate": "2023-12-14T13:47:13.396Z",
122 + "checkOutDate": "2023-12-14T13:47:13.396Z",
123 + "adults": 0,
124 + "children": 0,
125 + "districtUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
126 + "districtName": "string",
127 + "cityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
128 + "cityName": "string",
129 + "countryCode": "string",
130 + "countryName": "string",
131 + "hasAlcohol": true,
132 + "hasFreeWifi": true,
133 + "hasMetro": true,
134 + "hasPool": true,
135 + "hasMall": true,
136 + "cancellationPolicyDescription": "string",
137 + "cancellationPolicy": {
138 + "cancellationPolicyCode": "string",
139 + "noShowChargeValue": 0,
140 + "noShowChargeValueType": "string",
141 + "earlyDepartureChargeValue": 0,
142 + "earlyDepartureChargeValueType": "string",
143 + "conditions": [
144 + {
145 + "timeunits": 0,
146 + "timeunitType": "string",
147 + "timeOffsetTypeName": "string",
148 + "chargeValue": 0,
149 + "chargeValueType": "string"
150 + }
151 + ]
152 + }
153 + },
154 + "flight": {
155 + "id": "string",
156 + "departureDate": "2023-12-14T13:47:13.396Z",
157 + "returnDate": "2023-12-14T13:47:13.396Z",
158 + "departureTicketsLeft": 0,
159 + "returnTicketsLeft": 0,
160 + "departureAvailabilityType": "OnRequest",
161 + "returnAvailabilityType": "OnRequest",
162 + "isTwoWay": true,
163 + "departureSegments": [
164 + {
165 + "airlineCode": "string",
166 + "airlineName": "string",
167 + "flightCode": "string",
168 + "class": "string",
169 + "lugageWeight": 0,
170 + "handLugageWeight": 0,
171 + "departureFlightDate": "2023-12-14T13:47:13.396Z",
172 + "departureCountryName": "string",
173 + "departureCityName": "string",
174 + "departureAirportCode": "string",
175 + "departureAirportName": "string",
176 + "departureTerminalCode": "string",
177 + "arrivalFlightDate": "2023-12-14T13:47:13.396Z",
178 + "arrivalCountryName": "string",
179 + "arrivalCityName": "string",
180 + "arrivalAirportCode": "string",
181 + "arrivalAirportName": "string",
182 + "arrivalTerminalCode": "string",
183 + "flightDuration": "string",
184 + "baggages": [
185 + {
186 + "baggageCode": "string",
187 + "description": "string",
188 + "price": 0,
189 + "currency": "string",
190 + "included": true
191 + }
192 + ]
193 + }
194 + ],
195 + "returnSegments": [
196 + {
197 + "airlineCode": "string",
198 + "airlineName": "string",
199 + "flightCode": "string",
200 + "class": "string",
201 + "lugageWeight": 0,
202 + "handLugageWeight": 0,
203 + "departureFlightDate": "2023-12-14T13:47:13.396Z",
204 + "departureCountryName": "string",
205 + "departureCityName": "string",
206 + "departureAirportCode": "string",
207 + "departureAirportName": "string",
208 + "departureTerminalCode": "string",
209 + "arrivalFlightDate": "2023-12-14T13:47:13.396Z",
210 + "arrivalCountryName": "string",
211 + "arrivalCityName": "string",
212 + "arrivalAirportCode": "string",
213 + "arrivalAirportName": "string",
214 + "arrivalTerminalCode": "string",
215 + "flightDuration": "string",
216 + "baggages": [
217 + {
218 + "baggageCode": "string",
219 + "description": "string",
220 + "price": 0,
221 + "currency": "string",
222 + "included": true
223 + }
224 + ]
225 + }
226 + ]
227 + },
228 + "extraServices": [
229 + {
230 + "extraServiceCode": "string",
231 + "extraServiceTypeCode": "string",
232 + "isMandatory": 0,
233 + "extraServiceName": "string",
234 + "minimalServiceAmount": 0,
235 + "includedPriceCode": "string",
236 + "prices": [
237 + {
238 + "extraServicePriceCode": "string",
239 + "displayName": "string",
240 + "restrictionInfo": "string",
241 + "additionalInfo": "string",
242 + "price": 0,
243 + "extraPrice": 0,
244 + "currency": "string"
245 + }
246 + ]
247 + }
248 + ],
249 + "insurancePrice": {
250 + "name": "string",
251 + "price": 0,
252 + "priceSurcarge": 0,
253 + "actualStartDate": "2023-12-14T13:47:13.396Z",
254 + "actualEndDate": "2023-12-14T13:47:13.396Z",
255 + "optional": true,
256 + "includedInPackagePrice": true
257 + }
258 + }
259 + ],
260 + "pagingId": "string",
261 + "pageNumber": 0,
262 + "pageCount": 0
263 +}
63 63  {{/code}}
64 64  
65 65  
... ... @@ -66,78 +66,287 @@
66 66  === example ===
67 67  
68 68  {{code language="Json"}}
69 -{
70 - "hotelCode": "cfbca5b5-4090-4bcd-805a-463d83423b86",
71 - "hotelName": "Ramada Abu Dhabi Corniche",
72 - "hotelClass": "4",
73 - "cityUID": "28c794fe-3c7e-4da2-ba93-f24bd3d4730d",
74 - "countryCode": "AE",
75 - "districtUID": "ee402984-6d1d-4fcf-915d-f31b14fa8b0f",
76 - "cityName": "Abu Dhabi",
77 - "districtName": "Abu Dhabi",
78 - "hotelType": "CityHotel",
79 - "latitude": "24.503759",
80 - "longitude": "54.374577",
81 - "hasAlcohol": false,
82 - "hasFreeWifi": true,
83 - "hasMetro": false,
84 - "hasPool": true,
85 - "hasMall": false
86 - },
87 - {
88 - "hotelCode": "c64b6082-2337-4519-8c33-4bcdef76b16b",
89 - "hotelName": "Emirates Palace Mandarin Oriental, Abu Dhabi",
90 - "hotelClass": "5",
91 - "cityUID": "28c794fe-3c7e-4da2-ba93-f24bd3d4730d",
92 - "countryCode": "AE",
93 - "districtUID": "ee402984-6d1d-4fcf-915d-f31b14fa8b0f",
94 - "cityName": "Abu Dhabi",
95 - "districtName": "Abu Dhabi",
96 - "hotelType": "BeachHotel",
97 - "latitude": "24.461556",
98 - "longitude": "54.317404",
99 - "hasAlcohol": false,
100 - "hasFreeWifi": true,
101 - "hasMetro": false,
102 - "hasPool": true,
103 - "hasMall": false
104 - },
270 +X
105 105  {{/code}}
106 106  
107 107  
108 108  === Schema ===
109 109  
110 -{{code language="none"}}
111 -[Hotel{
112 -hotelCode string
113 -nullable: true
114 -hotelName string
115 -nullable: true
116 -hotelClass string
117 -nullable: true
118 -cityUID string($uuid)
119 -nullable: true
120 -countryCode string
121 -nullable: true
122 -countryName string
123 -nullable: true
124 -districtUID string($uuid)
125 -nullable: true
126 -cityName string
127 -nullable: true
128 -districtName string
129 -nullable: true
130 -hotelType HotelTypeEnumstring
131 -Enum:
132 -[ CityHotel, BeachHotel, SecondLineBeach ]
133 -latitude string
134 -nullable: true
135 -longitude string
136 -nullable: true
137 -hasAlcohol boolean
138 -hasFreeWifi boolean
139 -hasMetro boolean
140 -hasPool boolean
141 -hasMall boolean
276 +{{success}}
277 +SearchTourPackagesResponse{
278 +
279 +|error|boolean
280 +|errorCode|string
281 +nullable: true
282 +|errorDescription|string
283 +nullable: true
284 +|userErrorDescription|string
285 +nullable: true
286 +|packages|[
287 +nullable: trueTourPackage{(((
288 +|cacheKey|string
289 +nullable: true
290 +|id|string
291 +nullable: true
292 +|priceCurrency|string
293 +nullable: true
294 +|totalPrice|number($double)
295 +|agentCommissionPercent|number($double)
296 +|agentCommissionAmount|number($double)
297 +|includedExtrasAmount|number($double)
298 +|priceDifference|number($double)
299 +|hotel|PackageHotel{(((
300 +|hotelPriceId|string
301 +nullable: true
302 +|providerId|integer($int32)
303 +|hotelName|string
304 +nullable: true
305 +|hotelCode|string
306 +nullable: true
307 +|nigths|integer($int32)
308 +|mealPlan|string
309 +nullable: true
310 +|hotelClass|string
311 +nullable: true
312 +|availabilityType|RoomAvailabilityTypeEnumstringEnum:
313 +[ OnRequest, FreeSale, StopSale ]
314 +|availableRoomsCount|integer($int32)
315 +|fewRooms|boolean
316 +|roomCategoryCode|string
317 +nullable: true
318 +|roomCategoryName|string
319 +nullable: true
320 +|placementTypeName|string
321 +nullable: true
322 +|placementDescription|string
323 +nullable: true
324 +|checkInDate|string($date-time)
325 +|checkOutDate|string($date-time)
326 +|adults|integer($int32)
327 +|children|integer($int32)
328 +|districtUID|string($uuid)
329 +nullable: true
330 +|districtName|string
331 +nullable: true
332 +|cityUID|string($uuid)
333 +nullable: true
334 +|cityName|string
335 +nullable: true
336 +|countryCode|string
337 +nullable: true
338 +|countryName|string
339 +nullable: true
340 +|hasAlcohol|boolean
341 +|hasFreeWifi|boolean
342 +|hasMetro|boolean
343 +|hasPool|boolean
344 +|hasMall|boolean
345 +|cancellationPolicyDescription|string
346 +nullable: true
347 +|cancellationPolicy|CancellationPolicyExchange{(((
348 +|cancellationPolicyCode|string
349 +nullable: true
350 +|noShowChargeValue|number($double)
351 +nullable: true
352 +|noShowChargeValueType|string
353 +nullable: true
354 +|earlyDepartureChargeValue|number($double)
355 +nullable: true
356 +|earlyDepartureChargeValueType|string
357 +nullable: true
358 +|conditions|[
359 +nullable: trueCancellationPolicyConditionExchange{(((
360 +|timeunits|integer($int32)
361 +|timeunitType|string
362 +nullable: true
363 +|timeOffsetTypeName|string
364 +nullable: true
365 +|chargeValue|number($double)
366 +nullable: true
367 +|chargeValueType|string
368 +nullable: true
369 +
142 142  }]
143 -{{/code}}
371 +)))
372 +
373 +}
374 +)))
375 +
376 +}
377 +)))
378 +|flight|PackageFlight{(((
379 +|id|string
380 +nullable: true
381 +|departureDate|string($date-time)
382 +|returnDate|string($date-time)
383 +nullable: true
384 +|departureTicketsLeft|integer($int32)
385 +|returnTicketsLeft|integer($int32)
386 +|departureAvailabilityType|FlightAvailabilityTypestringEnum:
387 +[ OnRequest, FreeSale, FewPlaces, StopSale ]
388 +|returnAvailabilityType|FlightAvailabilityTypestringEnum:
389 +[ OnRequest, FreeSale, FewPlaces, StopSale ]
390 +|isTwoWay|boolean
391 +|departureSegments|[
392 +nullable: trueFlightSegment{(((
393 +|airlineCode|string
394 +nullable: true
395 +|airlineName|string
396 +nullable: true
397 +|flightCode|string
398 +nullable: true
399 +|class|string
400 +nullable: true
401 +|lugageWeight|number($double)
402 +|handLugageWeight|number($double)
403 +|departureFlightDate|string($date-time)
404 +|departureCountryName|string
405 +nullable: true
406 +|departureCityName|string
407 +nullable: true
408 +|departureAirportCode|string
409 +nullable: true
410 +|departureAirportName|string
411 +nullable: true
412 +|departureTerminalCode|string
413 +nullable: true
414 +|arrivalFlightDate|string($date-time)
415 +|arrivalCountryName|string
416 +nullable: true
417 +|arrivalCityName|string
418 +nullable: true
419 +|arrivalAirportCode|string
420 +nullable: true
421 +|arrivalAirportName|string
422 +nullable: true
423 +|arrivalTerminalCode|string
424 +nullable: true
425 +|flightDuration|string
426 +nullable: true
427 +|baggages|[
428 +nullable: trueBaggage{(((
429 +|baggageCode|string
430 +nullable: true
431 +|description|string
432 +nullable: true
433 +|price|number($double)
434 +|currency|string
435 +nullable: true
436 +|included|boolean
437 +
438 +}]
439 +)))
440 +
441 +}]
442 +)))
443 +|returnSegments|[
444 +nullable: trueFlightSegment{(((
445 +|airlineCode|string
446 +nullable: true
447 +|airlineName|string
448 +nullable: true
449 +|flightCode|string
450 +nullable: true
451 +|class|string
452 +nullable: true
453 +|lugageWeight|number($double)
454 +|handLugageWeight|number($double)
455 +|departureFlightDate|string($date-time)
456 +|departureCountryName|string
457 +nullable: true
458 +|departureCityName|string
459 +nullable: true
460 +|departureAirportCode|string
461 +nullable: true
462 +|departureAirportName|string
463 +nullable: true
464 +|departureTerminalCode|string
465 +nullable: true
466 +|arrivalFlightDate|string($date-time)
467 +|arrivalCountryName|string
468 +nullable: true
469 +|arrivalCityName|string
470 +nullable: true
471 +|arrivalAirportCode|string
472 +nullable: true
473 +|arrivalAirportName|string
474 +nullable: true
475 +|arrivalTerminalCode|string
476 +nullable: true
477 +|flightDuration|string
478 +nullable: true
479 +|baggages|[
480 +nullable: trueBaggage{(((
481 +|baggageCode|string
482 +nullable: true
483 +|description|string
484 +nullable: true
485 +|price|number($double)
486 +|currency|string
487 +nullable: true
488 +|included|boolean
489 +
490 +}]
491 +)))
492 +
493 +}]
494 +)))
495 +
496 +}
497 +)))
498 +|extraServices|[
499 +nullable: trueHotelExtraServiceBase{(((
500 +|extraServiceCode|string
501 +nullable: true
502 +|extraServiceTypeCode|string
503 +nullable: true
504 +|isMandatory|integer($int32)
505 +|extraServiceName|string
506 +nullable: true
507 +|minimalServiceAmount|number($double)
508 +|includedPriceCode|string
509 +nullable: true
510 +|prices|[
511 +nullable: trueHotelExtraServicePriceBase{(((
512 +|extraServicePriceCode|string
513 +nullable: true
514 +|displayName|string
515 +nullable: true
516 +|restrictionInfo|string
517 +nullable: true
518 +|additionalInfo|string
519 +nullable: true
520 +|price|number($double)
521 +|extraPrice|number($double)
522 +|currency|string
523 +nullable: true
524 +
525 +}]
526 +)))
527 +
528 +}]
529 +)))
530 +|insurancePrice|InsurancePrice{(((
531 +|name|string
532 +nullable: true
533 +|price|number($double)
534 +|priceSurcarge|number($double)
535 +|actualStartDate|string($date-time)
536 +|actualEndDate|string($date-time)
537 +|optional|boolean
538 +|includedInPackagePrice|boolean
539 +
540 +}
541 +)))
542 +
543 +}]
544 +)))
545 +|pagingId|string
546 +nullable: true
547 +|pageNumber|integer($int64)
548 +|pageCount|integer($int64)
549 +
550 +}
551 +{{/success}}
552 +
553 +