Changes for page 3. CalcCheckout
Last modified by Giorgi Mdivnishvili on 2025/02/03 12:34
From version 1.5
edited by Giorgi Mdivnishvili
on 2024/04/12 18:56
on 2024/04/12 18:56
Change comment:
There is no comment for this version
To version 1.2
edited by Giorgi Mdivnishvili
on 2024/04/12 18:43
on 2024/04/12 18:43
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -7,13 +7,36 @@ 7 7 = Method Description = 8 8 9 9 10 - Once the desiredtourvariation hasbeenselected, the next stepinvolvescalculatingthepackagepricein greaterdetail,typicallyjustbeforeproceedingwith thereservation.Toaccomplishthis,the**CalcCheckout **methodmustbeutilized. Thisstagemarksthepre-bookingphaseof theprocess.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. 11 11 12 +**Parameters:** 12 12 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 + 13 13 == Endpoint URL - [POST] == 14 14 15 15 {{info}} 16 -[[https:~~/~~/integration.kazunion.com/api/OnlyHotelPackages/ CalcPackage>>https://integration.kazunion.com/api/OnlyHotelPackages/CalcPackage]]39 +[[https:~~/~~/integration.kazunion.com/api/OnlyHotelPackages/SearchHotelPrices>>https://integration.kazunion.com/api/OnlyHotelPackages/SearchHotelPrices]] 17 17 {{/info}} 18 18 19 19 ... ... @@ -24,861 +24,157 @@ 24 24 None 25 25 ))) 26 26 27 - 28 28 == Request Body == 29 29 30 30 {{code language="Json"}} 31 31 { 32 - " reservationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",33 - " calcTourPackageRequests": [54 + "countryCode": "string", 55 + "locations": [ 34 34 { 35 - "packageId": "string", 36 - "extraServicePriceCodes": [ 37 - "string" 38 - ], 39 - "flightPassengers": [ 40 - { 41 - "id": "string", 42 - "selectedForwardBaggageCode": "string", 43 - "selectedBackwardBaggageCode": "string" 44 - } 45 - ], 46 - "includeInsurance": true, 47 - "refreshPrices": true 57 + "type": "string", 58 + "parent": "string", 59 + "label": "string", 60 + "subLabel": "string", 61 + "value": "string", 62 + "tag": "string" 48 48 } 49 49 ], 50 - "c alcOnlyHotelPackageRequests":[51 - {52 - "packageId": "string",53 - "extraServicePriceCodes":[54 - "string"55 - ],56 - "includeInsurance":true,57 - "refreshPrices":true58 - }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 59 59 ], 60 - "calcOnlyAviaPackageRequests": [ 61 - { 62 - "packageId": "string", 63 - "refreshPrices": true, 64 - "flightPassengers": [ 65 - { 66 - "id": "string", 67 - "selectedForwardBaggageCode": "string", 68 - "selectedBackwardBaggageCode": "string" 69 - } 70 - ] 71 - } 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" 72 72 ], 73 - "hotels": [ 74 - { 75 - "hotelPriceId": "string", 76 - "agentConfirmationNumber": "string", 77 - "note": "string", 78 - "touristIds": [ 79 - "3fa85f64-5717-4562-b3fc-2c963f66afa6" 80 - ] 81 - } 85 + "mealPlans": [ 86 + "string" 82 82 ], 83 - "tourists": [ 84 - { 85 - "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 86 - "firstName": "string", 87 - "lastName": "string", 88 - "birthDate": "2024-04-11T03:34:15.828Z", 89 - "passportNumber": "string", 90 - "passportExpiry": "2024-04-11T03:34:15.828Z", 91 - "passportIssue": "2024-04-11T03:34:15.828Z", 92 - "citizenship": "string", 93 - "tin": "string", 94 - "isMale": true, 95 - "flightIds": [ 96 - "string" 97 - ], 98 - "arrivalFlightInfo": { 99 - "flightNumber": "string", 100 - "terminalCode": "string", 101 - "date": "2024-04-11T03:34:15.828Z", 102 - "time": "string" 103 - }, 104 - "departureFlightInfo": { 105 - "flightNumber": "string", 106 - "terminalCode": "string", 107 - "date": "2024-04-11T03:34:15.828Z", 108 - "time": "string" 109 - }, 110 - "selectedVisaId": "string", 111 - "transfers": [ 112 - { 113 - "id": "string", 114 - "selectedTransferPriceId": "string" 115 - } 116 - ] 117 - } 88 + "hotelClasses": [ 89 + "string" 118 118 ], 119 - "note": "string", 120 - "contactPhone": "string" 91 + "hotelTypes": [ 92 + "CityHotel" 93 + ], 94 + "hotelServices": [ 95 + "HasAlcohol" 96 + ], 97 + "pagingId": "string", 98 + "pageNumber": 0, 99 + "pageRowCount": 0 121 121 } 122 - 123 123 {{/code}} 124 124 125 -(% class="wikigeneratedid" id="HRequestBodyexample" %) 126 -(% id="cke_bm_10575S" style="display:none" %) 127 - 128 - 129 - 130 130 == Request Body example == 131 131 105 + 132 132 {{code language="Json"}} 133 133 { 134 - "calcTourPackageRequests": [], 135 - "calcOnlyHotelPackageRequests": [ 136 - { 137 - "refreshPrices": true, 138 - "packageId": "onlyhotel:25a0ce83-047e-485a-8fd7-f2b5a7a1fa37:9963330c-2346-4330-b9cf-7abbb0f64636", 139 - "extraServicePriceCodes": [], 140 - "includeInsurance": false 141 - } 142 - ], 143 - "calcOnlyAviaPackageRequests": [] 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 118 + ], 119 + "extendedSearch": false, 120 + "totalPriceFrom": 10, 121 + "totalPriceTo": 10000, 122 + "recommended": false, 123 + "popular": true, 124 + "freeSale": true, 125 + "groupByHotel": true, 126 + "hotelCodes": [ 127 + 128 + ], 129 + "mealPlans": [ 130 + 131 + ], 132 + "hotelClasses": [ 133 + 134 + ], 135 + "hotelTypes": [ 136 + 137 + ], 138 + "hotelServices": [ 139 + 140 + ], 141 + "pagingId": "", 142 + "pageNumber": 3, 143 + "pageRowCount": 10 144 144 } 145 145 {{/code}} 146 146 147 +== Response Body == 147 147 148 -== Response == 149 - 150 150 {{code language="json"}} 151 -{ 152 - "priceCurrency": "USD", 153 - "totalPrice": 47, 154 - "agentCommissionPercent": 0.00, 155 - "agentCommissionAmount": 0, 156 - "requiredCitizenIdentifiers": [ 157 - { 158 - "countryCode": "KZ", 159 - "identifierType": "TIN" 160 - }, 161 - { 162 - "countryCode": "AZ", 163 - "identifierType": "FIN" 164 - } 165 - ], 166 - "hotels": [ 167 - { 168 - "hotelPriceId": "9963330c-2346-4330-b9cf-7abbb0f64636", 169 - "touristIds": [ 170 - "5652e3ba-23d1-4392-bcd9-03442b48e385", 171 - "5e395a1b-982b-4686-b078-b8ffd3332c0e" 172 - ], 173 - "description": "Royal Continental Hotel" 174 - } 175 - ], 176 - "tourists": [ 177 - { 178 - "id": "5652e3ba-23d1-4392-bcd9-03442b48e385", 179 - "isAdult": true, 180 - "flightIds": [], 181 - "flights": [], 182 - "arrivalFlightInfo": { 183 - "terminalCode": "DXB2", 184 - "date": "2024-06-30T00:00:00.000" 185 - }, 186 - "departureFlightInfo": { 187 - "terminalCode": "DXB2", 188 - "date": "2024-07-01T00:00:00.000" 189 - }, 190 - "selectedVisaId": "00000000-0000-0000-0000-000000000000", 191 - "transfers": [ 192 - { 193 - "id": "DXB2-03cf038c-df96-4926-af5f-0f285e600405", 194 - "type": "Arrival", 195 - "flightInfo": { 196 - "terminalCode": "DXB2", 197 - "date": "2024-06-30T00:00:00.000" 198 - }, 199 - "checkInHotelId": "9963330c-2346-4330-b9cf-7abbb0f64636", 200 - "selectedTransferPriceId": "9b4d2a8e-1f85-4d0d-8b39-c3b516d15c01", 201 - "transferPrices": [ 202 - { 203 - "id": "9b4d2a8e-1f85-4d0d-8b39-c3b516d15c01", 204 - "name": "WITHOUT", 205 - "adultPlaces": 0, 206 - "childPlaces": 0, 207 - "perPersonPrice": false, 208 - "adultPrice": 0.00000000, 209 - "childPrice": 0 210 - }, 211 - { 212 - "id": "9bc3625d-017e-4e72-a4bc-b1e57dc2a146", 213 - "name": "MINIVAN", 214 - "adultPlaces": 5, 215 - "childPlaces": 0, 216 - "perPersonPrice": false, 217 - "adultPrice": 45.00000000, 218 - "childPrice": 0 219 - }, 220 - { 221 - "id": "fc3815bb-af00-4733-9134-4b6334ce3854", 222 - "name": "TOYOTA HIACE", 223 - "adultPlaces": 9, 224 - "childPlaces": 0, 225 - "perPersonPrice": false, 226 - "adultPrice": 50.00000000, 227 - "childPrice": 0 228 - }, 229 - { 230 - "id": "1df09212-11e3-44b1-b615-fbb6338efaf2", 231 - "name": "HIGER BUS (27 SEATERS)", 232 - "adultPlaces": 27, 233 - "childPlaces": 0, 234 - "perPersonPrice": false, 235 - "adultPrice": 85.00000000, 236 - "childPrice": 0 237 - }, 238 - { 239 - "id": "bd26e2cf-15ed-41c0-8e6f-743834b12dfb", 240 - "name": "HIGER 53", 241 - "adultPlaces": 51, 242 - "childPlaces": 0, 243 - "perPersonPrice": false, 244 - "adultPrice": 120.00000000, 245 - "childPrice": 0 246 - }, 247 - { 248 - "id": "5d67ad4f-5e8a-4dd2-abc0-74e5389e8c04", 249 - "name": "MERCEDES S CLASS 400", 250 - "adultPlaces": 3, 251 - "childPlaces": 0, 252 - "perPersonPrice": false, 253 - "adultPrice": 140.00000000, 254 - "childPrice": 0 255 - }, 256 - { 257 - "id": "f6fe44b2-574d-47b5-a15c-b0560cfc71a6", 258 - "name": "MERCEDES V CLASS", 259 - "adultPlaces": 7, 260 - "childPlaces": 0, 261 - "perPersonPrice": false, 262 - "adultPrice": 140.00000000, 263 - "childPrice": 0 264 - }, 265 - { 266 - "id": "50cf907a-2145-4b46-bb67-0dde2e7b7326", 267 - "name": "MERCEDES S CLASS 500", 268 - "adultPlaces": 3, 269 - "childPlaces": 0, 270 - "perPersonPrice": false, 271 - "adultPrice": 165.00000000, 272 - "childPrice": 0 273 - } 274 - ] 275 - }, 276 - { 277 - "id": "03cf038c-df96-4926-af5f-0f285e600405-DXB2", 278 - "type": "Departure", 279 - "flightInfo": { 280 - "terminalCode": "DXB2", 281 - "date": "2024-07-01T00:00:00.000" 282 - }, 283 - "checkOutHotelId": "9963330c-2346-4330-b9cf-7abbb0f64636", 284 - "selectedTransferPriceId": "9b4d2a8e-1f85-4d0d-8b39-c3b516d15c01", 285 - "transferPrices": [ 286 - { 287 - "id": "9b4d2a8e-1f85-4d0d-8b39-c3b516d15c01", 288 - "name": "WITHOUT", 289 - "adultPlaces": 0, 290 - "childPlaces": 0, 291 - "perPersonPrice": false, 292 - "adultPrice": 0.00000000, 293 - "childPrice": 0 294 - }, 295 - { 296 - "id": "9bc3625d-017e-4e72-a4bc-b1e57dc2a146", 297 - "name": "MINIVAN", 298 - "adultPlaces": 5, 299 - "childPlaces": 0, 300 - "perPersonPrice": false, 301 - "adultPrice": 45.00000000, 302 - "childPrice": 0 303 - }, 304 - { 305 - "id": "fc3815bb-af00-4733-9134-4b6334ce3854", 306 - "name": "TOYOTA HIACE", 307 - "adultPlaces": 9, 308 - "childPlaces": 0, 309 - "perPersonPrice": false, 310 - "adultPrice": 50.00000000, 311 - "childPrice": 0 312 - }, 313 - { 314 - "id": "1df09212-11e3-44b1-b615-fbb6338efaf2", 315 - "name": "HIGER BUS (27 SEATERS)", 316 - "adultPlaces": 27, 317 - "childPlaces": 0, 318 - "perPersonPrice": false, 319 - "adultPrice": 85.00000000, 320 - "childPrice": 0 321 - }, 322 - { 323 - "id": "bd26e2cf-15ed-41c0-8e6f-743834b12dfb", 324 - "name": "HIGER 53", 325 - "adultPlaces": 51, 326 - "childPlaces": 0, 327 - "perPersonPrice": false, 328 - "adultPrice": 120.00000000, 329 - "childPrice": 0 330 - }, 331 - { 332 - "id": "5d67ad4f-5e8a-4dd2-abc0-74e5389e8c04", 333 - "name": "MERCEDES S CLASS 400", 334 - "adultPlaces": 3, 335 - "childPlaces": 0, 336 - "perPersonPrice": false, 337 - "adultPrice": 140.00000000, 338 - "childPrice": 0 339 - }, 340 - { 341 - "id": "f6fe44b2-574d-47b5-a15c-b0560cfc71a6", 342 - "name": "MERCEDES V CLASS", 343 - "adultPlaces": 7, 344 - "childPlaces": 0, 345 - "perPersonPrice": false, 346 - "adultPrice": 140.00000000, 347 - "childPrice": 0 348 - }, 349 - { 350 - "id": "50cf907a-2145-4b46-bb67-0dde2e7b7326", 351 - "name": "MERCEDES S CLASS 500", 352 - "adultPlaces": 3, 353 - "childPlaces": 0, 354 - "perPersonPrice": false, 355 - "adultPrice": 165.00000000, 356 - "childPrice": 0 357 - } 358 - ] 359 - } 360 - ], 361 - "description": " " 362 - }, 363 - { 364 - "id": "5e395a1b-982b-4686-b078-b8ffd3332c0e", 365 - "isAdult": true, 366 - "flightIds": [], 367 - "flights": [], 368 - "arrivalFlightInfo": { 369 - "terminalCode": "DXB2", 370 - "date": "2024-06-30T00:00:00.000" 371 - }, 372 - "departureFlightInfo": { 373 - "terminalCode": "DXB2", 374 - "date": "2024-07-01T00:00:00.000" 375 - }, 376 - "selectedVisaId": "00000000-0000-0000-0000-000000000000", 377 - "transfers": [ 378 - { 379 - "id": "DXB2-03cf038c-df96-4926-af5f-0f285e600405", 380 - "type": "Arrival", 381 - "flightInfo": { 382 - "terminalCode": "DXB2", 383 - "date": "2024-06-30T00:00:00.000" 384 - }, 385 - "checkInHotelId": "9963330c-2346-4330-b9cf-7abbb0f64636", 386 - "selectedTransferPriceId": "9b4d2a8e-1f85-4d0d-8b39-c3b516d15c01", 387 - "transferPrices": [ 388 - { 389 - "id": "9b4d2a8e-1f85-4d0d-8b39-c3b516d15c01", 390 - "name": "WITHOUT", 391 - "adultPlaces": 0, 392 - "childPlaces": 0, 393 - "perPersonPrice": false, 394 - "adultPrice": 0.00000000, 395 - "childPrice": 0 396 - }, 397 - { 398 - "id": "9bc3625d-017e-4e72-a4bc-b1e57dc2a146", 399 - "name": "MINIVAN", 400 - "adultPlaces": 5, 401 - "childPlaces": 0, 402 - "perPersonPrice": false, 403 - "adultPrice": 45.00000000, 404 - "childPrice": 0 405 - }, 406 - { 407 - "id": "fc3815bb-af00-4733-9134-4b6334ce3854", 408 - "name": "TOYOTA HIACE", 409 - "adultPlaces": 9, 410 - "childPlaces": 0, 411 - "perPersonPrice": false, 412 - "adultPrice": 50.00000000, 413 - "childPrice": 0 414 - }, 415 - { 416 - "id": "1df09212-11e3-44b1-b615-fbb6338efaf2", 417 - "name": "HIGER BUS (27 SEATERS)", 418 - "adultPlaces": 27, 419 - "childPlaces": 0, 420 - "perPersonPrice": false, 421 - "adultPrice": 85.00000000, 422 - "childPrice": 0 423 - }, 424 - { 425 - "id": "bd26e2cf-15ed-41c0-8e6f-743834b12dfb", 426 - "name": "HIGER 53", 427 - "adultPlaces": 51, 428 - "childPlaces": 0, 429 - "perPersonPrice": false, 430 - "adultPrice": 120.00000000, 431 - "childPrice": 0 432 - }, 433 - { 434 - "id": "5d67ad4f-5e8a-4dd2-abc0-74e5389e8c04", 435 - "name": "MERCEDES S CLASS 400", 436 - "adultPlaces": 3, 437 - "childPlaces": 0, 438 - "perPersonPrice": false, 439 - "adultPrice": 140.00000000, 440 - "childPrice": 0 441 - }, 442 - { 443 - "id": "f6fe44b2-574d-47b5-a15c-b0560cfc71a6", 444 - "name": "MERCEDES V CLASS", 445 - "adultPlaces": 7, 446 - "childPlaces": 0, 447 - "perPersonPrice": false, 448 - "adultPrice": 140.00000000, 449 - "childPrice": 0 450 - }, 451 - { 452 - "id": "50cf907a-2145-4b46-bb67-0dde2e7b7326", 453 - "name": "MERCEDES S CLASS 500", 454 - "adultPlaces": 3, 455 - "childPlaces": 0, 456 - "perPersonPrice": false, 457 - "adultPrice": 165.00000000, 458 - "childPrice": 0 459 - } 460 - ] 461 - }, 462 - { 463 - "id": "03cf038c-df96-4926-af5f-0f285e600405-DXB2", 464 - "type": "Departure", 465 - "flightInfo": { 466 - "terminalCode": "DXB2", 467 - "date": "2024-07-01T00:00:00.000" 468 - }, 469 - "checkOutHotelId": "9963330c-2346-4330-b9cf-7abbb0f64636", 470 - "selectedTransferPriceId": "9b4d2a8e-1f85-4d0d-8b39-c3b516d15c01", 471 - "transferPrices": [ 472 - { 473 - "id": "9b4d2a8e-1f85-4d0d-8b39-c3b516d15c01", 474 - "name": "WITHOUT", 475 - "adultPlaces": 0, 476 - "childPlaces": 0, 477 - "perPersonPrice": false, 478 - "adultPrice": 0.00000000, 479 - "childPrice": 0 480 - }, 481 - { 482 - "id": "9bc3625d-017e-4e72-a4bc-b1e57dc2a146", 483 - "name": "MINIVAN", 484 - "adultPlaces": 5, 485 - "childPlaces": 0, 486 - "perPersonPrice": false, 487 - "adultPrice": 45.00000000, 488 - "childPrice": 0 489 - }, 490 - { 491 - "id": "fc3815bb-af00-4733-9134-4b6334ce3854", 492 - "name": "TOYOTA HIACE", 493 - "adultPlaces": 9, 494 - "childPlaces": 0, 495 - "perPersonPrice": false, 496 - "adultPrice": 50.00000000, 497 - "childPrice": 0 498 - }, 499 - { 500 - "id": "1df09212-11e3-44b1-b615-fbb6338efaf2", 501 - "name": "HIGER BUS (27 SEATERS)", 502 - "adultPlaces": 27, 503 - "childPlaces": 0, 504 - "perPersonPrice": false, 505 - "adultPrice": 85.00000000, 506 - "childPrice": 0 507 - }, 508 - { 509 - "id": "bd26e2cf-15ed-41c0-8e6f-743834b12dfb", 510 - "name": "HIGER 53", 511 - "adultPlaces": 51, 512 - "childPlaces": 0, 513 - "perPersonPrice": false, 514 - "adultPrice": 120.00000000, 515 - "childPrice": 0 516 - }, 517 - { 518 - "id": "5d67ad4f-5e8a-4dd2-abc0-74e5389e8c04", 519 - "name": "MERCEDES S CLASS 400", 520 - "adultPlaces": 3, 521 - "childPlaces": 0, 522 - "perPersonPrice": false, 523 - "adultPrice": 140.00000000, 524 - "childPrice": 0 525 - }, 526 - { 527 - "id": "f6fe44b2-574d-47b5-a15c-b0560cfc71a6", 528 - "name": "MERCEDES V CLASS", 529 - "adultPlaces": 7, 530 - "childPlaces": 0, 531 - "perPersonPrice": false, 532 - "adultPrice": 140.00000000, 533 - "childPrice": 0 534 - }, 535 - { 536 - "id": "50cf907a-2145-4b46-bb67-0dde2e7b7326", 537 - "name": "MERCEDES S CLASS 500", 538 - "adultPlaces": 3, 539 - "childPlaces": 0, 540 - "perPersonPrice": false, 541 - "adultPrice": 165.00000000, 542 - "childPrice": 0 543 - } 544 - ] 545 - } 546 - ], 547 - "description": " " 548 - } 549 - ], 550 - "visas": [ 551 - { 552 - "prid": "00000000-0000-0000-0000-000000000000", 553 - "prName": "WITHOUT VISA", 554 - "prValue": 0.00000000, 555 - "sortingOrder": 4 556 - }, 557 - { 558 - "prid": "40d3b511-c5b3-4395-b51f-11fb1b8e555b", 559 - "prName": "TOURIST VISA", 560 - "prValue": 80.01000000, 561 - "sortingOrder": 2 562 - }, 563 - { 564 - "prid": "80490edd-a7ef-43dc-98cf-3f709efe68cb", 565 - "prName": "SERVICE VISA", 566 - "prValue": 120.08000000, 567 - "sortingOrder": 3 568 - } 569 - ], 570 - "terminals": [ 571 - { 572 - "terminalCode": "DXB2", 573 - "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2", 574 - "districtUID": "e6ce358e-22d4-413f-a39f-983a14a8e28e", 575 - "terminalName": "DXB2", 576 - "countryCode": "AE" 577 - }, 578 - { 579 - "terminalCode": "DXB", 580 - "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2", 581 - "districtUID": "e6ce358e-22d4-413f-a39f-983a14a8e28e", 582 - "terminalName": "DXB", 583 - "countryCode": "AE" 584 - }, 585 - { 586 - "terminalCode": "SHJ", 587 - "cityUID": "f78ac3bc-f040-46d0-8319-2c52083080a6", 588 - "districtUID": "18a915ca-74de-4613-a2fb-616ea300d16d", 589 - "terminalName": "SHJ", 590 - "countryCode": "AE" 591 - }, 592 - { 593 - "terminalCode": "AUH3", 594 - "cityUID": "28c794fe-3c7e-4da2-ba93-f24bd3d4730d", 595 - "districtUID": "5460739a-fb6e-4d94-a35b-6f4e0612581b", 596 - "terminalName": "AUH3", 597 - "countryCode": "AE" 598 - }, 599 - { 600 - "terminalCode": "AUH", 601 - "cityUID": "28c794fe-3c7e-4da2-ba93-f24bd3d4730d", 602 - "districtUID": "5460739a-fb6e-4d94-a35b-6f4e0612581b", 603 - "terminalName": "AUH", 604 - "countryCode": "AE" 605 - }, 606 - { 607 - "terminalCode": "QIW", 608 - "cityUID": "9aabae22-f2f8-408c-b295-55cce1393c88", 609 - "districtUID": "9834149a-17ef-431e-b1f2-ab093bd55d94", 610 - "terminalName": "Um Al Quwain Terminal ", 611 - "countryCode": "AE" 612 - }, 613 - { 614 - "terminalCode": "QAJ", 615 - "cityUID": "a7e023c1-c654-4e1d-8a83-7e571bd3a78d", 616 - "districtUID": "70e57708-9de2-4505-b550-f4627ae40877", 617 - "terminalName": "Ajman Terminal ", 618 - "countryCode": "AE" 619 - }, 620 - { 621 - "terminalCode": "RKT", 622 - "cityUID": "607fbe3a-68e6-4523-bf6e-e419fac86a8b", 623 - "districtUID": "7f82fcc7-65ee-48d8-b0ea-200fa2ffdb42", 624 - "terminalName": "Ras Al Khaimah Terminal ", 625 - "countryCode": "AE" 626 - }, 627 - { 628 - "terminalCode": "FJR", 629 - "cityUID": "857a6d87-d1e4-4a17-a867-c65307559222", 630 - "districtUID": "3a894ed3-8021-45c9-ae0c-aa5e7379bb82", 631 - "terminalName": "Fujairah Terminal ", 632 - "countryCode": "AE" 633 - }, 634 - { 635 - "terminalCode": "DXB3", 636 - "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2", 637 - "districtUID": "e6ce358e-22d4-413f-a39f-983a14a8e28e", 638 - "terminalName": "DXB3", 639 - "countryCode": "AE" 640 - }, 641 - { 642 - "terminalCode": "Etihad Bus Station", 643 - "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2", 644 - "districtUID": "1fa8bb75-707b-40e6-8212-f705eeeaa16b", 645 - "terminalName": "Etihad Bus Station", 646 - "countryCode": "AE" 647 - }, 648 - { 649 - "terminalCode": "ETD", 650 - "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2", 651 - "districtUID": "1fa8bb75-707b-40e6-8212-f705eeeaa16b", 652 - "terminalName": "Etihad Main Office Dubai", 653 - "countryCode": "AE", 654 - "note": "Noor Islamic Bank MS" 655 - }, 656 - { 657 - "terminalCode": "XGD", 658 - "cityUID": "28c794fe-3c7e-4da2-ba93-f24bd3d4730d", 659 - "districtUID": "88ece1b0-cb91-49f3-86a0-eedc6c8e5aaf", 660 - "terminalName": "Dnata - Clock Tower", 661 - "countryCode": "AE" 662 - }, 663 - { 664 - "terminalCode": "DXB1", 665 - "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2", 666 - "districtUID": "e6ce358e-22d4-413f-a39f-983a14a8e28e", 667 - "terminalName": "DXB1", 668 - "countryCode": "AE" 669 - }, 670 - { 671 - "terminalCode": "DWC", 672 - "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2", 673 - "districtUID": "42ace7f3-c109-4e81-8959-9c5adf193444", 674 - "terminalName": "DWC", 675 - "countryCode": "AE", 676 - "note": "Al Maktoum intl. airport" 677 - } 678 - ], 679 - "containsError": false, 680 - "refreshPriceResult": "Success", 681 - "reservationId": "39b50207-50b0-4b86-8a5d-a026866acf6d", 682 - "reservationDetailsUnavailable": false, 683 - "error": false 684 -} 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 +] 685 685 {{/code}} 686 686 687 687 688 -=== Response example === 174 +=== Response Body example === 689 689 690 690 {{code language="Json"}} 691 691 { 692 - "package": { 693 - "id": "tour:1d0fa533-4261-4254-93bb-83599d581ffc:193990fa-41a5-46e6-9805-50f82c3c377f:0c299240-6fc6-4f79-ba99-3548f2de3f57", 694 - "priceCurrency": "USD", 695 - "totalPrice": 937.16, 696 - "agentCommissionPercent": 0.00, 697 - "agentCommissionAmount": 0.00, 698 - "includedExtrasAmount": 0, 699 - "priceDifference": 0, 700 - "hotel": { 701 - "hotelPriceId": "193990fa-41a5-46e6-9805-50f82c3c377f", 702 - "providerId": 13, 703 - "hotelName": "Mercure Dubai Barsha Heights Suites Apartments", 704 - "hotelCode": "5f125310-7025-4807-a4c6-49cd284c9c14", 705 - "nigths": 2, 706 - "mealPlan": "BB", 707 - "hotelClass": "4", 708 - "availabilityType": "StopSale", 709 - "availableRoomsCount": 0, 710 - "fewRooms": true, 711 - "roomCategoryCode": "f8e1ffe5-25cc-46a4-80e8-586d1c049de4", 712 - "roomCategoryName": "1 B/R Apartment City View", 713 - "placementTypeName": "SNGL + CHILD(2-5.99)sharing", 714 - "checkInDate": "2024-02-15T20:00:00.000Z", 715 - "checkOutDate": "2024-02-17T20:00:00.000Z", 716 - "adults": 1, 717 - "children": 1, 718 - "districtUID": "4c65f6ed-902b-4fd8-9419-af7884c22c5e", 719 - "districtName": "Al Barsha", 720 - "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2", 721 - "cityName": "Dubai", 722 - "countryCode": "AE", 723 - "countryName": "United Arab Emirates", 724 - "hasAlcohol": false, 725 - "hasFreeWifi": true, 726 - "hasMetro": true, 727 - "hasPool": true, 728 - "hasMall": false, 729 - "cancellationPolicyDescription": "Cancellation Policy: 5 Day Before Arrival: 100.00 %, Early Departure: 100.00 %, NoShow: 100.00 %", 730 - "cancellationPolicy": { 731 - "noShowChargeValue": 100.00, 732 - "noShowChargeValueType": "%", 733 - "earlyDepartureChargeValue": 100.00, 734 - "earlyDepartureChargeValueType": "%", 735 - "conditions": [ 736 - { 737 - "timeunits": 5, 738 - "timeunitType": "Day", 739 - "timeOffsetTypeName": "Before Arrival", 740 - "chargeValue": 100.00, 741 - "chargeValueType": "%" 742 - } 743 - ] 744 - } 745 - }, 746 - "flight": { 747 - "id": "0c299240-6fc6-4f79-ba99-3548f2de3f57", 748 - "departureDate": "2024-02-15T20:00:00.000Z", 749 - "returnDate": "2024-02-17T20:00:00.000Z", 750 - "departureTicketsLeft": 7, 751 - "returnTicketsLeft": 7, 752 - "departureAvailabilityType": "FewPlaces", 753 - "returnAvailabilityType": "FewPlaces", 754 - "isTwoWay": true, 755 - "sameBaggageForAll": false, 756 - "totalBaggage": true, 757 - "departureSegments": [ 758 - { 759 - "airlineCode": "KC", 760 - "airlineName": "Air Astana-", 761 - "flightCode": "KC899", 762 - "class": "econom", 763 - "lugageWeight": 20, 764 - "handLugageWeight": 6, 765 - "departureFlightDate": "2024-02-15T20:00:00.000Z", 766 - "departureCountryName": "Kazakhstan", 767 - "departureCityName": "Almaty", 768 - "departureAirportCode": "ALA", 769 - "departureAirportName": "Almaty Intl Airport", 770 - "departureTerminalCode": "ALA", 771 - "arrivalFlightDate": "2024-02-15T20:00:00.000Z", 772 - "arrivalCountryName": "United Arab Emirates", 773 - "arrivalCityName": "Dubai", 774 - "arrivalAirportCode": "DXB", 775 - "arrivalAirportName": "Dubai Intl Airport", 776 - "arrivalTerminalCode": "DXB1", 777 - "flightDuration": "0h 50m" 778 - } 779 - ], 780 - "returnSegments": [ 781 - { 782 - "airlineCode": "KC", 783 - "airlineName": "Air Astana-", 784 - "flightCode": "KC900", 785 - "class": "econom", 786 - "lugageWeight": 20, 787 - "handLugageWeight": 6, 788 - "departureFlightDate": "2024-02-17T20:00:00.000Z", 789 - "departureCountryName": "United Arab Emirates", 790 - "departureCityName": "Dubai", 791 - "departureAirportCode": "DXB", 792 - "departureAirportName": "Dubai Intl Airport", 793 - "departureTerminalCode": "DXB1", 794 - "arrivalFlightDate": "2024-02-17T20:00:00.000Z", 795 - "arrivalCountryName": "Kazakhstan", 796 - "arrivalCityName": "Almaty", 797 - "arrivalAirportCode": "ALA", 798 - "arrivalAirportName": "Almaty Intl Airport", 799 - "arrivalTerminalCode": "ALA", 800 - "flightDuration": "8h 15m" 801 - } 802 - ], 803 - "passengers": [ 804 - { 805 - "id": "42779531011000004-A1", 806 - "isAdult": true, 807 - "forwardBaggages": [ 808 - { 809 - "baggageCode": "TOTAL_BAGGAGE", 810 - "description": "1 piece included, UP TO 50 POUNDS/23 KILOGRAMS, OVER 62 LINEAR INCHES/158 LINEAR CENTIMETERS", 811 - "price": 45.00, 812 - "currency": "USD", 813 - "included": false 814 - } 815 - ], 816 - "backwardBaggages": [ 817 - { 818 - "baggageCode": "INCLUDED_IN_FORWARD", 819 - "price": 0, 820 - "included": false 821 - } 822 - ] 823 - }, 824 - { 825 - "id": "42779531011000004-C1", 826 - "isAdult": false, 827 - "forwardBaggages": [ 828 - { 829 - "baggageCode": "TOTAL_BAGGAGE", 830 - "description": "1 piece included, UP TO 50 POUNDS/23 KILOGRAMS, OVER 62 LINEAR INCHES/158 LINEAR CENTIMETERS", 831 - "price": 45.00, 832 - "currency": "USD", 833 - "included": false 834 - } 835 - ], 836 - "backwardBaggages": [ 837 - { 838 - "baggageCode": "INCLUDED_IN_FORWARD", 839 - "price": 0, 840 - "included": false 841 - } 842 - ] 843 - } 844 - ] 845 - }, 846 - "extraServices": [], 847 - "insurancePrice": { 848 - "name": "Medical INS (N10000)", 849 - "price": 13.44, 850 - "priceSurcarge": 0.00, 851 - "actualStartDate": "2024-02-15T20:00:00.000Z", 852 - "actualEndDate": "2024-02-17T20:00:00.000Z", 853 - "optional": false, 854 - "includedInPackagePrice": true 855 - } 856 - }, 857 - "altPackages": [ 178 + "packages": [ 858 858 { 859 - "id": " tour:1d0fa533-4261-4254-93bb-83599d581ffc:193990fa-41a5-46e6-9805-50f82c3c377f:63d79c94-1e19-443f-8a17-50e59e633ea8",180 + "id": "onlyhotel:c4e23e7e-3d54-4efa-a3db-88508230ce91:504f63ca-6dd5-4d84-8245-cf7e77ccff73", 860 860 "priceCurrency": "USD", 861 - "totalPrice": 968.40, 862 - "agentCommissionPercent": 0.00, 863 - "agentCommissionAmount": 0.00, 864 - "includedExtrasAmount": 0, 865 - "priceDifference": 31.24, 182 + "totalPrice": 381.7, 183 + "agentCommissionPercent": 0.0, 184 + "agentCommissionAmount": 0.0, 866 866 "hotel": { 867 - "hotelPriceId": " 193990fa-41a5-46e6-9805-50f82c3c377f",186 + "hotelPriceId": "504f63ca-6dd5-4d84-8245-cf7e77ccff73", 868 868 "providerId": 13, 869 - "hotelName": " MercureDubai Barsha Heights Suites Apartments",870 - "hotelCode": " 5f125310-7025-4807-a4c6-49cd284c9c14",871 - "nigths": 2,872 - "mealPlan": " BB",188 + "hotelName": "Golden Tulip Al Barsha Hotel", 189 + "hotelCode": "ed0820c5-29b0-4e1b-8bcf-9f3c181e7961", 190 + "nigths": 4, 191 + "mealPlan": "RO", 873 873 "hotelClass": "4", 874 - "availabilityType": "S topSale",193 + "availabilityType": "FreeSale", 875 875 "availableRoomsCount": 0, 876 876 "fewRooms": true, 877 - "roomCategoryCode": " f8e1ffe5-25cc-46a4-80e8-586d1c049de4",878 - "roomCategoryName": " 1 B/R Apartment CityView",879 - "placementTypeName": "SNGL + CHILD( 2-5.99)sharing",880 - "checkInDate": "2024-02-1 5T20:00:00.000Z",881 - "checkOutDate": "2024-02-1 7T20:00:00.000Z",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", 882 882 "adults": 1, 883 883 "children": 1, 884 884 "districtUID": "4c65f6ed-902b-4fd8-9419-af7884c22c5e", ... ... @@ -887,148 +887,30 @@ 887 887 "cityName": "Dubai", 888 888 "countryCode": "AE", 889 889 "countryName": "United Arab Emirates", 890 - "hasAlcohol": false,209 + "hasAlcohol": true, 891 891 "hasFreeWifi": true, 892 - "hasMetro": true,211 + "hasMetro": false, 893 893 "hasPool": true, 894 894 "hasMall": false, 895 - "cancellationPolicyDescription": "Cancellation Policy: 5 Day Before Arrival: 100.00 %, Early Departure: 100.00 %, NoShow: 100.00 %", 214 + "cancellationPolicyDescription": "Cancellation Policy: 15 Day Before Arrival: 100.00 %, Early Departure: 100.00 %, NoShow: 100.00 %", 896 896 "cancellationPolicy": { 897 - "noShowChargeValue": 100.0 0,216 + "noShowChargeValue": 100.0, 898 898 "noShowChargeValueType": "%", 899 - "earlyDepartureChargeValue": 100.0 0,218 + "earlyDepartureChargeValue": 100.0, 900 900 "earlyDepartureChargeValueType": "%", 901 901 "conditions": [ 902 902 { 903 - "timeunits": 5, 222 + "timeunits": 15, 904 904 "timeunitType": "Day", 905 905 "timeOffsetTypeName": "Before Arrival", 906 - "chargeValue": 100.0 0,225 + "chargeValue": 100.0, 907 907 "chargeValueType": "%" 908 908 } 909 909 ] 910 910 } 911 911 }, 912 - "flight": { 913 - "id": "63d79c94-1e19-443f-8a17-50e59e633ea8", 914 - "departureDate": "2024-02-15T20:00:00.000Z", 915 - "returnDate": "2024-02-17T20:00:00.000Z", 916 - "departureTicketsLeft": 50, 917 - "returnTicketsLeft": 50, 918 - "departureAvailabilityType": "FewPlaces", 919 - "returnAvailabilityType": "FewPlaces", 920 - "isTwoWay": true, 921 - "sameBaggageForAll": false, 922 - "totalBaggage": false, 923 - "departureSegments": [ 924 - { 925 - "airlineCode": "FZ", 926 - "airlineName": "Fly Dubai.", 927 - "flightCode": "FZ1722", 928 - "class": "econom", 929 - "lugageWeight": 20, 930 - "handLugageWeight": 6, 931 - "departureFlightDate": "2024-02-15T20:00:00.000Z", 932 - "departureCountryName": "Kazakhstan", 933 - "departureCityName": "Almaty", 934 - "departureAirportCode": "ALA", 935 - "departureAirportName": "Almaty Intl Airport", 936 - "departureTerminalCode": "ALA", 937 - "arrivalFlightDate": "2024-02-15T20:00:00.000Z", 938 - "arrivalCountryName": "United Arab Emirates", 939 - "arrivalCityName": "Dubai", 940 - "arrivalAirportCode": "DXB", 941 - "arrivalAirportName": "Dubai Intl Airport", 942 - "arrivalTerminalCode": "DXB3", 943 - "flightDuration": "0h 55m" 944 - } 945 - ], 946 - "returnSegments": [ 947 - { 948 - "airlineCode": "FZ", 949 - "airlineName": "Fly Dubai.", 950 - "flightCode": "FZ1721", 951 - "class": "econom", 952 - "lugageWeight": 20, 953 - "handLugageWeight": 6, 954 - "departureFlightDate": "2024-02-17T20:00:00.000Z", 955 - "departureCountryName": "United Arab Emirates", 956 - "departureCityName": "Dubai", 957 - "departureAirportCode": "DXB", 958 - "departureAirportName": "Dubai Intl Airport", 959 - "departureTerminalCode": "DXB3", 960 - "arrivalFlightDate": "2024-02-18T20:00:00.000Z", 961 - "arrivalCountryName": "Kazakhstan", 962 - "arrivalCityName": "Almaty", 963 - "arrivalAirportCode": "ALA", 964 - "arrivalAirportName": "Almaty Intl Airport", 965 - "arrivalTerminalCode": "DXB3", 966 - "flightDuration": "8h 10m" 967 - } 968 - ], 969 - "passengers": [ 970 - { 971 - "id": "42779547001000004-A1", 972 - "isAdult": true, 973 - "selectedForwardBaggageCode": "INCLUDED", 974 - "selectedBackwardBaggageCode": "INCLUDED", 975 - "forwardBaggages": [ 976 - { 977 - "baggageCode": "INCLUDED", 978 - "description": "20 KG INCLUDED", 979 - "price": 0.0, 980 - "currency": "USD", 981 - "included": true 982 - } 983 - ], 984 - "backwardBaggages": [ 985 - { 986 - "baggageCode": "INCLUDED", 987 - "description": "20 KG INCLUDED", 988 - "price": 0.0, 989 - "currency": "USD", 990 - "included": true 991 - } 992 - ] 993 - }, 994 - { 995 - "id": "42779547001000004-C1", 996 - "isAdult": false, 997 - "selectedForwardBaggageCode": "INCLUDED", 998 - "selectedBackwardBaggageCode": "INCLUDED", 999 - "forwardBaggages": [ 1000 - { 1001 - "baggageCode": "INCLUDED", 1002 - "description": "20 KG INCLUDED", 1003 - "price": 0.0, 1004 - "currency": "USD", 1005 - "included": true 1006 - } 1007 - ], 1008 - "backwardBaggages": [ 1009 - { 1010 - "baggageCode": "INCLUDED", 1011 - "description": "20 KG INCLUDED", 1012 - "price": 0.0, 1013 - "currency": "USD", 1014 - "included": true 1015 - } 1016 - ] 1017 - } 1018 - ] 1019 - }, 1020 - "extraServices": [], 1021 - "insurancePrice": { 1022 - "name": "Medical INS (N10000)", 1023 - "price": 13.44, 1024 - "priceSurcarge": 0.00, 1025 - "actualStartDate": "2024-02-15T20:00:00.000Z", 1026 - "actualEndDate": "2024-02-17T20:00:00.000Z", 1027 - "optional": false, 1028 - "includedInPackagePrice": true 1029 - } 231 + "extraServices": [] 1030 1030 }, 1031 - { 1032 1032 {{/code}} 1033 1033 1034 1034 ... ... @@ -1035,289 +1035,222 @@ 1035 1035 === Schema === 1036 1036 1037 1037 {{success}} 1038 - CheckoutFormIn{239 +SearchOnlyHotelPackagesResponse{ 1039 1039 1040 -|reservationId|string($uuid) 1041 -nullable: true 1042 -|calcTourPackageRequests|[ 1043 -nullable: trueCalcTourPackageRequest{((( 1044 -|packageId|string 1045 -nullable: true 1046 -|extraServicePriceCodes|[ 1047 -nullable: truestring] 1048 -|flightPassengers|[ 1049 -nullable: trueFlightPassengerIn{((( 241 +|packages|[ 242 +nullable: trueOnlyHotelPackage{((( 1050 1050 |id|string 1051 1051 nullable: true 1052 -| selectedForwardBaggageCode|string245 +|priceCurrency|string 1053 1053 nullable: true 1054 -|selectedBackwardBaggageCode|string 247 +|totalPrice|number($double) 248 +|agentCommissionPercent|number($double) 249 +|agentCommissionAmount|number($double) 250 +|hotel|PackageHotel{((( 251 +|hotelPriceId|string 1055 1055 nullable: true 1056 - 1057 -}] 1058 -))) 1059 -|includeInsurance|boolean 253 +|providerId|integer($int32) 254 +|hotelName|string 1060 1060 nullable: true 1061 -|refreshPrices|boolean 1062 - 1063 -}] 1064 -))) 1065 -|calcOnlyHotelPackageRequests|[ 1066 -nullable: trueCalcOnlyHotelPackageRequest{((( 1067 -|packageId|string 256 +|hotelCode|string 1068 1068 nullable: true 1069 -|extraServicePriceCodes|[ 1070 -nullable: truestring] 1071 -|includeInsurance|boolean 1072 -|refreshPrices|boolean 1073 - 1074 -}] 1075 -))) 1076 -|calcOnlyAviaPackageRequests|[ 1077 -nullable: trueCalcOnlyAviaPackageRequest{((( 1078 -|packageId|string 258 +|nigths|integer($int32) 259 +|mealPlan|string 1079 1079 nullable: true 1080 -|refreshPrices|boolean 1081 -|flightPassengers|[ 1082 -nullable: trueFlightPassengerIn{((( 1083 -|id|string 261 +|hotelClass|string 1084 1084 nullable: true 1085 -|selectedForwardBaggageCode|string 263 +|availabilityType|RoomAvailabilityTypeEnumstringEnum: 264 +[ OnRequest, FreeSale, StopSale ] 265 +|availableRoomsCount|integer($int32) 266 +|fewRooms|boolean 267 +|roomCategoryCode|string 1086 1086 nullable: true 1087 -| selectedBackwardBaggageCode|string269 +|roomCategoryName|string 1088 1088 nullable: true 1089 - 1090 -}] 1091 -))) 1092 - 1093 -}] 1094 -))) 1095 -|hotels|[ 1096 -nullable: trueCheckoutHotelIn{((( 1097 -|hotelPriceId|string 271 +|placementTypeName|string 1098 1098 nullable: true 1099 -|a gentConfirmationNumber|string273 +|placementDescription|string 1100 1100 nullable: true 1101 -|note|string 275 +|checkInDate|string($date-time) 276 +|checkOutDate|string($date-time) 277 +|adults|integer($int32) 278 +|children|integer($int32) 279 +|districtUID|string($uuid) 1102 1102 nullable: true 1103 -|touristIds|[ 1104 -nullable: truestring($uuid)] 1105 - 1106 -}] 1107 -))) 1108 -|tourists|[ 1109 -nullable: trueCheckoutTouristIn{((( 1110 -|id|string($uuid) 1111 -|firstName|string 281 +|districtName|string 1112 1112 nullable: true 1113 -| lastName|string283 +|cityUID|string($uuid) 1114 1114 nullable: true 1115 -| birthDate|string($date-time)285 +|cityName|string 1116 1116 nullable: true 1117 -| passportNumber|string287 +|countryCode|string 1118 1118 nullable: true 1119 -| passportExpiry|string($date-time)289 +|countryName|string 1120 1120 nullable: true 1121 -|passportIssue|string($date-time) 291 +|hasAlcohol|boolean 292 +|hasFreeWifi|boolean 293 +|hasMetro|boolean 294 +|hasPool|boolean 295 +|hasMall|boolean 296 +|cancellationPolicyDescription|string 1122 1122 nullable: true 1123 -|citizenship|string 298 +|cancellationPolicy|CancellationPolicyExchange{((( 299 +|cancellationPolicyCode|string 1124 1124 nullable: true 1125 -| tin|string301 +|noShowChargeValue|number($double) 1126 1126 nullable: true 1127 -| isMale|boolean303 +|noShowChargeValueType|string 1128 1128 nullable: true 1129 -|flightIds|[ 1130 -nullable: truestring] 1131 -|arrivalFlightInfo|ManualFlightInfo{((( 1132 -|flightNumber|string 305 +|earlyDepartureChargeValue|number($double) 1133 1133 nullable: true 1134 -|ter minalCode|string307 +|earlyDepartureChargeValueType|string 1135 1135 nullable: true 1136 -|date|string($date-time) 309 +|conditions|[ 310 +nullable: trueCancellationPolicyConditionExchange{((( 311 +|timeunits|integer($int32) 312 +|timeunitType|string 1137 1137 nullable: true 1138 -|time|string 314 +|timeOffsetTypeName|string 1139 1139 nullable: true 1140 - 1141 -} 1142 -))) 1143 -|departureFlightInfo|ManualFlightInfo{((( 1144 -|flightNumber|string 316 +|chargeValue|number($double) 1145 1145 nullable: true 1146 -| terminalCode|string318 +|chargeValueType|string 1147 1147 nullable: true 1148 -|date|string($date-time) 1149 -nullable: true 1150 -|time|string 1151 -nullable: true 1152 1152 1153 -} 1154 -))) 1155 -|selectedVisaId|string 1156 -nullable: true 1157 -|transfers|[ 1158 -nullable: trueCheckoutTransferIn{((( 1159 -|id|string 1160 -nullable: true 1161 -|selectedTransferPriceId|string 1162 -nullable: true 1163 - 1164 1164 }] 1165 1165 ))) 1166 1166 1167 -} ]324 +} 1168 1168 ))) 1169 -|note|string 1170 -nullable: true 1171 -|contactPhone|string 1172 -nullable: true 1173 1173 1174 1174 } 1175 -{{/success}} 1176 - 1177 -{{success}} 1178 -CheckoutFormOut{ 1179 - 1180 -|error|boolean 1181 -|errorCode|string 328 +))) 329 +|extraServices|[ 330 +nullable: trueHotelExtraServiceBase{((( 331 +|extraServiceCode|string 1182 1182 nullable: true 1183 -|er rorDescription|string333 +|extraServiceTypeCode|string 1184 1184 nullable: true 1185 -|userErrorDescription|string 335 +|isMandatory|integer($int32) 336 +|extraServiceName|string 1186 1186 nullable: true 1187 -|priceCurrency|string 338 +|minimalServiceAmount|number($double) 339 +|includedPriceCode|string 1188 1188 nullable: true 1189 -|totalPrice|number($double) 1190 -|agentCommissionPercent|number($double) 1191 -|agentCommissionAmount|number($double) 1192 -|requiredCitizenIdentifiers|[ 1193 -nullable: trueCitizenIdentifier{((( 1194 -|countryCode|string 341 +|prices|[ 342 +nullable: trueHotelExtraServicePriceBase{((( 343 +|extraServicePriceCode|string 1195 1195 nullable: true 1196 -|identifierType|IdentifierTypeEnumstringEnum: 1197 -[ TIN, FIN ] 1198 - 1199 -}] 1200 -))) 1201 -|hotels|[ 1202 -nullable: trueCheckoutHotelOut{((( 1203 -|hotelPriceId|string 345 +|displayName|string 1204 1204 nullable: true 1205 -|touristIds|[ 1206 -nullable: truestring($uuid)] 1207 -|errorCode|string 347 +|restrictionInfo|string 1208 1208 nullable: true 1209 -| errorMessage|string349 +|additionalInfo|string 1210 1210 nullable: true 1211 -|description|string 351 +|price|number($double) 352 +|extraPrice|number($double) 353 +|currency|string 1212 1212 nullable: true 1213 1213 1214 1214 }] 1215 1215 ))) 1216 -|tourists|[ 1217 -nullable: trueCheckoutTouristOut{...}] 1218 -|visas|[ 1219 -nullable: trueServicePrice{((( 1220 -|prid|string($uuid) 1221 -|prName|string 1222 -nullable: true 1223 -|prValue|number($double) 1224 -|sortingOrder|integer($int32) 1225 1225 1226 1226 }] 1227 1227 ))) 1228 -|terminals|[ 1229 -nullable: trueTerminal{((( 1230 -|terminalCode|string 1231 -nullable: true 1232 -|cityUID|string($uuid) 1233 -nullable: true 1234 -|districtUID|string($uuid) 1235 -nullable: true 1236 -|terminalName|string 1237 -nullable: true 1238 -|countryCode|string 1239 -nullable: true 1240 -|note|string 1241 -nullable: true 1242 1242 1243 1243 }] 1244 1244 ))) 1245 -|containsError|boolean 1246 -|refreshPriceResult|RefreshPriceResultEnumstringEnum: 1247 -[ Success, HotelPriceNoMoreAvailable, FlightPriceNoMoreAvailable ] 1248 -|reservationId|string($uuid) 1249 -|reservationDetailsUnavailable|boolean 364 +|pagingId|string 365 +nullable: true 366 +|pageNumber|integer($int64) 367 +|pageCount|integer($int64) 1250 1250 1251 1251 } 1252 1252 {{/success}} 1253 1253 1254 1254 1255 -== De scriptions ==373 +== Definitions == 1256 1256 1257 1257 1258 -=== Request===376 +=== Paging and Caching === 1259 1259 1260 - Here's a table describingeachparameter oftheJSONrequest: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: 1261 1261 1262 -(% class="table-bordered" %) 1263 -|=Parameter|=Data Type|=Description 1264 -|calcTourPackageRequests|Array|An array of objects, each representing a tour package request. 1265 -|refreshPrices|Boolean|If true, the prices for the tour package will be refreshed. 1266 -|packageId|String|A unique identifier for the tour package. 1267 -|flightPassengers|Array|An array of objects, each representing a flight passenger. 1268 -|id|String|A unique identifier for each flight passenger. 1269 -|selectedForwardBaggageCode|String|The selected baggage option for the forward journey. there is two optoions "" 1270 -|selectedBackwardBaggageCode|String|The selected baggage option for the backward journey. 1271 -|extraServicePriceCodes|Array|An array of extra service price codes. If empty, no extra services are selected. 1272 -|includeInsurance|Boolean|If true, insurance will be included in the tour package. 1273 -|calcOnlyHotelPackageRequests|Array|An array of objects, each representing a hotel-only package request. If empty, no hotel-only packages are requested. 1274 -|calcOnlyAviaPackageRequests|Array|An array of objects, each representing an avia-only package request. If empty, no avia-only packages are requested. 1275 1275 1276 -=== Response ===381 +==== first request ==== 1277 1277 1278 -(% class="table-bordered" %) 1279 -|=Parameter|=Data Type|=Description 1280 -|priceCurrency|String|The currency code (ISO 4217) for all prices mentioned in the response. 1281 -|totalPrice|Number|The total price of the booking. 1282 -|agentCommissionPercent|Number|The commission percentage for the agent. 1283 -|agentCommissionAmount|Number|The total commission amount for the agent in priceCurrency. 1284 -|requiredCitizenIdentifiers[*].countryCode|String|The ISO 3166-1 alpha-2 country code. 1285 -|requiredCitizenIdentifiers[*].identifierType|String|The type of identifier required (e.g., "TIN", "FIN"). **TIN (Taxpayer Identification Number) & FIN (Financial Identification Number)** 1286 -|hotels[*].hotelPriceId|String|Unique identifier for the hotel price. 1287 -|hotels[*].touristIds[*]|String|List of tourist IDs that are booked in this hotel. 1288 -|hotels[*].description|String|A brief description of the hotel. 1289 -|tourists[*].id|String|Unique identifier for the tourist. 1290 -|tourists[*].isAdult|Boolean|Indicates if the tourist is an adult. 1291 -|tourists[*].flightIds[*]|String|Identifiers for flights associated with the tourist. 1292 -|tourists[*].flights[*].flightId|String|Unique identifier for the flight. 1293 -|tourists[*].flights[*].note|String|Additional information about the flight, such as baggage allowance. 1294 -|tourists[*].insurancePrice.insuranceId|String|Unique identifier for the insurance product. 1295 -|tourists[*].insurancePrice.insuranceServiceId|String|Identifier for the insurance service provider. 1296 -|...|...|Additional fields for insurancePrice as detailed previously. 1297 -|tourists[*].transfers[*].id|String|Unique identifier for the transfer service. 1298 -|tourists[*].transfers[*].type|String|The type of transfer (e.g., "Arrival", "Departure"). 1299 -|tourists[*].transfers[*].flightId|String|Identifier of the flight associated with this transfer. 1300 -|tourists[*].transfers[*].checkInHotelId|String|Hotel ID for check-in associated with this transfer (for arrival type). 1301 -|tourists[*].transfers[*].checkOutHotelId|String|Hotel ID for check-out associated with this transfer (for departure type). 1302 -|tourists[*].transfers[*].selectedTransferPriceId|String|The ID of the selected pricing option for the transfer. 1303 -|tourists[*].transfers[*].transferPrices[*].id|String|Unique identifier for the transfer price option. 1304 -|tourists[*].transfers[*].transferPrices[*].name|String|The name of the transfer service (e.g., "GROUP", "MINIVAN"). 1305 -|...|...|Additional fields for transferPrices as detailed previously. 1306 -|visas[*].prid|String|Unique identifier for the visa option. 1307 -|visas[*].prName|String|The name of the visa option. 1308 -|visas[*].prValue|Number|The cost associated with this visa option. 1309 -|visas[*].sortingOrder|Number|Used to sort visa options in the response or UI. 1310 -|terminals[*].terminalCode|String|The code representing the terminal. 1311 -|terminals[*].cityUID|String|Unique identifier for the city where the terminal is located. 1312 -|...|...|Additional fields for terminals as detailed previously. 1313 -|containsError|Boolean|Indicates if the response contains any errors. 1314 -|refreshPriceResult|String|The result of attempting to refresh the price (e.g., "Success"). 1315 -|reservationId|String|Unique identifier for the reservation. 1316 -|reservationDetailsUnavailable|Boolean|Indicates if the reservation details are currently unavailable. 1317 -|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}} 1318 1318 1319 -== == 1320 1320 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 + 1321 1321 == Important == 1322 1322 1323 1323 {{error}} ... ... @@ -1325,14 +1325,14 @@ 1325 1325 1326 1326 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: 1327 1327 1328 -* **Header Key:** Authorization1329 -* **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.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. 1330 1330 1331 1331 Additionally, to ensure your requests are properly formatted and recognized, include the following headers: 1332 1332 1333 -* **Content-Type:** Specify this header as application/json to indicate the format of the request body.1334 -* **Header Key:** X-nugios-timezone1335 -* **Header Value:** 240 - Adjust this value to match your local timezone offset in minutes.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. 1336 1336 1337 1337 Incorporating these headers with their respective values is essential for the successful processing of your API requests. 1338 1338 {{/error}}