The sample code covers the following business scenarios:
- Jane wishes to stay tomorrow night at a hotel in Dallas TX. She has a specific property in mind. This is the task performed:
- The property code of the property Jane requests is used to shop for a room for tomorrow night (Single property shop)
- John wishes to stay next week at a hotel in Memphis TN. He is open to staying at any hotel in the area. This is the task performed:
- The property codes of properties in the area are used to shop for a room for tomorrow night (Multiple property shop)
Hilton allows properties to update their content at any time. Please make your best effort to provide the most up-to-date information to customers. Our Partner shop API provides the most current information available for available rooms and rates. No static data (property address, star ratings, geo info, etc) is returned. Only availability and rate-related data is provided.
Single Property Shop
The Partner shop resource returns rates and availability on all room types for the specified property. The response includes rate details such as promos, guarantee requirements, cancellation penalties and a full price breakdown.
There is no limit on the number of response records returned. The response size depends on how many rates were requested and many room types are available at the property. It is possible to see 100+ products return which would result in response body size of approximately 10KB.
The nightly array includes each individual night’s charges. When the total price includes fees, charges, or adjustments that are not divided by night, these amounts will be included in the stay rate array, which details charges applied to the entire stay (each check-in).
POST https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT
Content-Type: application/json
accept: application/json
Authorization: "Basic YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET"
Request Body:
{
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
}
Response 200:
{
"adultAge": 18,
"ageBasedPricing": true,
"arrivalDate": "2020-11-26",
"brandCode": "DT",
"currencyCode": "USD",
"departureDate": "2020-11-28",
"highRate": 199.0,
"lengthOfStay": 2,
"lowRate": 114.08,
"numAdults": 2,
"propCode": "CHIDT",
"propName": "D TREE Chicago Ohare Rosemon",
"statusCode": 0,
"clientAccounts": {
"0560079228": {
"clientId": "0560079228",
"clientName": "OTA COM DIRECT CONNECT",
"clientRatePlanFound": true,
"clientType": "corporate"
},
"0009876464": {
"clientId": "0009876464",
"clientName": "FHR",
"clientRatePlanFound": false,
"clientType": "corporate"
},
"0007518206": {
"clientId": "0007518206",
"clientName": "AAA COMMISSIONABLE RATE",
"clientType": "travelAgent"
}
},
"ratePlans": {
"LDT3XF": {
"clientIdRequired": true,
"commissionable": false,
"currencyCode": "USD",
"cxlPolicyCode": "04D",
"cxlPolicyDeadline": "2023-10-19T05:00:00Z",
"cxlPolicyLocalDeadline": "2023-10-06T23:59",
"cxlPolicyDesc": "4 DAY CANCELLATION REQUIRED",
"displayCurrency": "USD",
"guarPolicyCode": "GTD",
"guarPolicyDesc": "Hold for Arrival",
"highRate": 168.78,
"lowRate": 120.28,
"ratePlanCode": "LDT3XF",
"ratePlanOrder": 1,
"serviceChargesAndTaxesIncluded": false,
"ratePlanCategory": "corporate",
"clientIds": [
"0560079228"
],
"guaranteeMethods": [
"TA",
"CC",
"CR",
"CD",
"FP"
],
"ratePlanDesc": [
"OTA ST SEMI FLEX"
]
},
"SDTAH1": {
"clientIdRequired": true,
"commissionable": false,
"currencyCode": "USD",
"cxlPolicyCode": "NCXL",
"cxlPolicyDeadline": "2023-10-19T05:00:00Z",
"cxlPolicyLocalDeadline": "2023-10-06T23:59",
"cxlPolicyDesc": "NON-CANCELABLE",
"displayCurrency": "USD",
"guarPolicyCode": "6PM",
"guarPolicyDesc": "HOLD UNTIL 6PM",
"highRate": 160.08,
"lowRate": 114.08,
"ratePlanCode": "SDTAH1",
"ratePlanOrder": 6,
"serviceChargesAndTaxesIncluded": false,
"ratePlanCategory": "corporate",
"clientIds": [
"0560079228"
],
"guaranteeMethods": [
"TA",
"CC",
"CR",
"CD",
"FP"
],
"ratePlanDesc": [
"EXP HRN NREF"
]
},
"LDTAO1": {
"clientIdRequired": true,
"commissionable": false,
"currencyCode": "USD",
"cxlPolicyCode": "24H",
"cxlPolicyDeadline": "2023-10-19T05:00:00Z",
"cxlPolicyLocalDeadline": "2023-10-06T23:59",
"cxlPolicyDesc": "24 HR CANCEL REQUIRED",
"displayCurrency": "USD",
"guarPolicyCode": "6PM",
"guarPolicyDesc": "HOLD UNTIL 6PM",
"highRate": 199.0,
"lowRate": 149.0,
"ratePlanCode": "LDTAO1",
"ratePlanOrder": 3,
"serviceChargesAndTaxesIncluded": false,
"ratePlanCategory": "corporate",
"clientIds": [
"0560079228"
],
"guaranteeMethods": [
"TA",
"CC",
"CR",
"CD",
"FP"
],
"ratePlanDesc": [
"EXP HRN BED BKFST VP"
]
},
"SDTXBB": {
"clientIdRequired": true,
"commissionable": true,
"commissionAmount": 10.0,
"currencyCode": "USD",
"cxlPolicyCode": "48H",
"cxlPolicyDeadline": "2023-10-19T05:00:00Z",
"cxlPolicyLocalDeadline": "2023-10-06T23:59",
"cxlPolicyDesc": "48 HR CANCELLATION REQUIRED",
"displayCurrency": "USD",
"guarPolicyCode": "GTD",
"guarPolicyDesc": "Hold for Arrival",
"highRate": 199.0,
"lowRate": 149.0,
"ratePlanCode": "SDTXBB",
"ratePlanOrder": 7,
"serviceChargesAndTaxesIncluded": false,
"commissionType": "percent",
"ratePlanCategory": "corporate",
"clientIds": [
"0560079228"
],
"guaranteeMethods": [
"TA",
"CC",
"CR",
"CD",
"FP"
],
"ratePlanDesc": [
"OTA BB",
"HRCC OR HOTELS",
"DO NOT MODIFY ADJUST OR CANCEL"
]
},
"SDTXR1": {
"clientIdRequired": true,
"commissionable": true,
"commissionAmount": 13.5,
"currencyCode": "USD",
"cxlPolicyCode": "24H",
"cxlPolicyDeadline": "2023-10-19T05:00:00Z",
"cxlPolicyLocalDeadline": "2023-10-06T23:59",
"cxlPolicyDesc": "24 HR CANCEL REQUIRED",
"displayCurrency": "USD",
"guarPolicyCode": "GTD",
"guarPolicyDesc": "Hold for Arrival",
"highRate": 174.0,
"lowRate": 124.0,
"ratePlanCode": "SDTXR1",
"ratePlanOrder": 8,
"serviceChargesAndTaxesIncluded": false,
"commissionType": "percent",
"ratePlanCategory": "corporate",
"clientIds": [
"0560079228"
],
"guaranteeMethods": [
"TA",
"CC",
"CR",
"CD",
"FP"
],
"ratePlanDesc": [
"OTA RETAIL"
]
},
"SDTAC1": {
"clientIdRequired": true,
"commissionable": false,
"currencyCode": "USD",
"cxlPolicyCode": "48H",
"cxlPolicyDeadline": "2023-10-19T05:00:00Z",
"cxlPolicyLocalDeadline": "2023-10-06T23:59",
"cxlPolicyDesc": "48 HR CANCELLATION REQUIRED",
"displayCurrency": "USD",
"guarPolicyCode": "GTD",
"guarPolicyDesc": "Hold for Arrival",
"highRate": 174.0,
"lowRate": 124.0,
"ratePlanCode": "SDTAC1",
"ratePlanOrder": 4,
"serviceChargesAndTaxesIncluded": false,
"ratePlanCategory": "corporate",
"clientIds": [
"0560079228"
],
"guaranteeMethods": [
"TA",
"CC",
"CR",
"CD",
"FP"
],
"ratePlanDesc": [
"EXP HRN VAC PKG"
]
},
"SDTAD1": {
"clientIdRequired": true,
"commissionable": false,
"currencyCode": "USD",
"cxlPolicyCode": "48H",
"cxlPolicyDeadline": "2023-10-19T05:00:00Z",
"cxlPolicyLocalDeadline": "2023-10-06T23:59",
"cxlPolicyDesc": "48 HR CANCELLATION REQUIRED",
"displayCurrency": "USD",
"guarPolicyCode": "GTD",
"guarPolicyDesc": "Hold for Arrival",
"highRate": 174.0,
"lowRate": 124.0,
"ratePlanCode": "SDTAD1",
"ratePlanOrder": 5,
"serviceChargesAndTaxesIncluded": false,
"ratePlanCategory": "corporate",
"clientIds": [
"0560079228"
],
"guaranteeMethods": [
"TA",
"CC",
"CR",
"CD",
"FP"
],
"ratePlanDesc": [
"EXP HRN RM ONLY"
]
},
"LDTAK1": {
"clientIdRequired": true,
"commissionable": false,
"currencyCode": "USD",
"cxlPolicyCode": "48H",
"cxlPolicyDeadline": "2023-10-19T05:00:00Z",
"cxlPolicyLocalDeadline": "2023-10-06T23:59",
"cxlPolicyDesc": "48 HR CANCELLATION REQUIRED",
"displayCurrency": "USD",
"guarPolicyCode": "6PM",
"guarPolicyDesc": "HOLD UNTIL 6PM",
"highRate": 199.0,
"lowRate": 149.0,
"ratePlanCode": "LDTAK1",
"ratePlanOrder": 2,
"serviceChargesAndTaxesIncluded": false,
"ratePlanCategory": "corporate",
"clientIds": [
"0560079228"
],
"guaranteeMethods": [
"TA",
"CC",
"CR",
"CD",
"FP"
],
"ratePlanDesc": [
"EXP HRN BED BKFST RO"
]
}
},
"roomTypes": {
"NKRCZ": {
"adaAccessibleRoom": false,
"extraBedPermitted": false,
"extraPersonsAllowed": false,
"numBeds": 1,
"roomDisplayOrder": 50,
"roomOccupancy": 4,
"roomTypeCode": "NKRCZ",
"smokingRoom": false,
"bedType": "king",
"roomTypeDesc": [
"1 KING YOGA RM W/EXTRA SPACE/YOGA EQUIPMENT",
"JALA MAT-CORK BRICKS-STRETCH STRAP-FOAM ROLLR",
"STABILITY BALL-ON DEMAND YOGA CONTENT ON TV"
]
},
"NK1D": {
"adaAccessibleRoom": false,
"extraBedPermitted": false,
"extraPersonsAllowed": false,
"numBeds": 1,
"roomDisplayOrder": 30,
"roomOccupancy": 4,
"roomTypeCode": "NK1D",
"smokingRoom": false,
"bedType": "king",
"roomTypeDesc": [
"1 KING BED CORNER ROOM-SOFABED-NONSMOKING",
"457 SQ FT - MINI-FRIDGE -INTERNET 12.95/DAY",
"FLAT SCREEN TV - SEPARATE SHOWER/TUB"
]
},
"NKRCX": {
"adaAccessibleRoom": false,
"extraBedPermitted": false,
"extraPersonsAllowed": false,
"numBeds": 1,
"roomDisplayOrder": 40,
"roomOccupancy": 4,
"roomTypeCode": "NKRCX",
"smokingRoom": false,
"bedType": "king",
"roomTypeDesc": [
"1 KING CARDIO ROOM W/PRECOR TRAINER",
"CUSTOM WORK BENCH-HAND WEIGHTS-STRETCH MAT",
"RESIST BANDS-STABLTY BALL-ON DEMAND TV CONTNT"
]
},
"NKRQF": {
"adaAccessibleRoom": true,
"extraBedPermitted": false,
"extraPersonsAllowed": false,
"numBeds": 1,
"roomDisplayOrder": 998,
"roomOccupancy": 4,
"roomTypeCode": "NKRQF",
"smokingRoom": false,
"bedType": "king",
"roomTypeDesc": [
"1KG MOBILITY/HEARING ACCESS 3X3SHW NO SMOK",
"VIS FIREALRM/DOOR/PHN ALRT",
"MINI-FRIDGE-INTERNET 12.95/DAY-FLAT SCRN TV"
]
},
"NK1": {
"adaAccessibleRoom": false,
"extraBedPermitted": false,
"extraPersonsAllowed": false,
"numBeds": 1,
"roomDisplayOrder": 20,
"roomOccupancy": 4,
"roomTypeCode": "NK1",
"smokingRoom": false,
"bedType": "king",
"roomTypeDesc": [
"1 KING W-SOFABED 275 SQ FT NON SMOKING",
"MINI-FRIDGE-INTERNET 12.95/DAY-FLAT SCRN TV",
"SEPARATE SHOWER/TUB"
]
},
"NKRQG": {
"adaAccessibleRoom": true,
"extraBedPermitted": false,
"extraPersonsAllowed": false,
"numBeds": 1,
"roomDisplayOrder": 998,
"roomOccupancy": 4,
"roomTypeCode": "NKRQG",
"smokingRoom": false,
"bedType": "king",
"roomTypeDesc": [
"1 KING HEARING ACCESSIBLE NO SMOK",
"VIS FIREALRM/DOOR/PHN ALRT",
"MINI-FRIDGE-INTERNET 12.95/DAY-FLAT SCRN TV"
]
},
"NKRQD": {
"adaAccessibleRoom": true,
"extraBedPermitted": false,
"extraPersonsAllowed": false,
"numBeds": 1,
"roomDisplayOrder": 998,
"roomOccupancy": 4,
"roomTypeCode": "NKRQD",
"smokingRoom": false,
"bedType": "king",
"roomTypeDesc": [
"1 KING MOBILITY/HEARING ACCESS TUB NO SMOK",
"VIS FIREALRM/DOOR/PHN ALRT",
"MINI-FRIDGE-INTERNET 12.95/DAY-FLAT SCRN TV"
]
},
"ND2": {
"adaAccessibleRoom": false,
"extraBedPermitted": false,
"extraPersonsAllowed": false,
"numBeds": 2,
"roomDisplayOrder": 10,
"roomOccupancy": 4,
"roomTypeCode": "ND2",
"smokingRoom": false,
"bedType": "double",
"roomTypeDesc": [
"2 DOUBLE BEDS 320 SQ FT NON SMOKING",
"MINI-FRIDGE-INTERNET 12.95/DAY-FLAT SCRN TV",
"SEPARATE SHOWER/TUB -BLACKOUT CURTAINS"
]
}
},
"roomRates": [
{
"amountAfterTax": 274.24,
"amountBeforeTax": 240.56,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 9,
"rateAmount": 120.28,
"rateChangeIndicator": true,
"ratePlanCode": "LDT3XF",
"rollawayRate": 0.0,
"roomTypeCode": "ND2",
"totalServiceCharges": 0.0,
"totalTaxes": 33.68,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 121.52,
"rate2Person": 121.52,
"rate3Person": 131.32,
"rate4Person": 141.12,
"rollawayRate": 0.0
},
{
"cribRate": 0.0,
"effectiveDate": "2020-11-27",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 119.04,
"rate2Person": 119.04,
"rate3Person": 128.64,
"rate4Person": 138.24,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 274.24,
"amountBeforeTax": 240.56,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 9,
"rateAmount": 120.28,
"rateChangeIndicator": true,
"ratePlanCode": "LDT3XF",
"rollawayRate": 0.0,
"roomTypeCode": "NK1",
"totalServiceCharges": 0.0,
"totalTaxes": 33.68,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 121.52,
"rate2Person": 121.52,
"rate3Person": 131.32,
"rate4Person": 141.12,
"rollawayRate": 0.0
},
{
"cribRate": 0.0,
"effectiveDate": "2020-11-27",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 119.04,
"rate2Person": 119.04,
"rate3Person": 128.64,
"rate4Person": 138.24,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 384.82,
"amountBeforeTax": 337.56,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 5,
"rateAmount": 168.78,
"rateChangeIndicator": true,
"ratePlanCode": "LDT3XF",
"rollawayRate": 0.0,
"roomTypeCode": "NK1D",
"totalServiceCharges": 0.0,
"totalTaxes": 47.26,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 170.52,
"rate2Person": 170.52,
"rate3Person": 180.32,
"rate4Person": 190.12,
"rollawayRate": 0.0
},
{
"cribRate": 0.0,
"effectiveDate": "2020-11-27",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 167.04,
"rate2Person": 167.04,
"rate3Person": 176.64,
"rate4Person": 186.24,
"rollawayRate": 0.0
}
]
}
{
"amountAfterTax": 274.24,
"amountBeforeTax": 240.56,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 8,
"rateAmount": 120.28,
"rateChangeIndicator": true,
"ratePlanCode": "LDT3XF",
"rollawayRate": 0.0,
"roomTypeCode": "NKRQF",
"totalServiceCharges": 0.0,
"totalTaxes": 33.68,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 121.52,
"rate2Person": 121.52,
"rate3Person": 131.32,
"rate4Person": 141.12,
"rollawayRate": 0.0
},
{
"cribRate": 0.0,
"effectiveDate": "2020-11-27",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 119.04,
"rate2Person": 119.04,
"rate3Person": 128.64,
"rate4Person": 138.24,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 339.72,
"amountBeforeTax": 298.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 8,
"rateAmount": 149.0,
"rateChangeIndicator": false,
"ratePlanCode": "LDTAK1",
"rollawayRate": 0.0,
"roomTypeCode": "NKRQF",
"totalServiceCharges": 0.0,
"totalTaxes": 41.72,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 136.0,
"rate2Person": 149.0,
"rate3Person": 170.0,
"rate4Person": 194.0,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 339.72,
"amountBeforeTax": 298.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 8,
"rateAmount": 149.0,
"rateChangeIndicator": false,
"ratePlanCode": "LDTAK1",
"rollawayRate": 0.0,
"roomTypeCode": "NKRQG",
"totalServiceCharges": 0.0,
"totalTaxes": 41.72,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 136.0,
"rate2Person": 149.0,
"rate3Person": 170.0,
"rate4Person": 194.0,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 339.72,
"amountBeforeTax": 298.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 9,
"rateAmount": 149.0,
"rateChangeIndicator": false,
"ratePlanCode": "LDTAO1",
"rollawayRate": 0.0,
"roomTypeCode": "ND2",
"totalServiceCharges": 0.0,
"totalTaxes": 41.72,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 136.0,
"rate2Person": 149.0,
"rate3Person": 170.0,
"rate4Person": 194.0,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 339.72,
"amountBeforeTax": 298.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 9,
"rateAmount": 149.0,
"rateChangeIndicator": false,
"ratePlanCode": "LDTAO1",
"rollawayRate": 0.0,
"roomTypeCode": "NK1",
"totalServiceCharges": 0.0,
"totalTaxes": 41.72,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 136.0,
"rate2Person": 149.0,
"rate3Person": 170.0,
"rate4Person": 194.0,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 453.72,
"amountBeforeTax": 398.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 5,
"rateAmount": 199.0,
"rateChangeIndicator": false,
"ratePlanCode": "LDTAO1",
"rollawayRate": 0.0,
"roomTypeCode": "NK1D",
"totalServiceCharges": 0.0,
"totalTaxes": 55.72,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 186.0,
"rate2Person": 199.0,
"rate3Person": 220.0,
"rate4Person": 244.0,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 385.32,
"amountBeforeTax": 338.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 1,
"rateAmount": 169.0,
"rateChangeIndicator": false,
"ratePlanCode": "LDTAO1",
"rollawayRate": 0.0,
"roomTypeCode": "NKRCX",
"totalServiceCharges": 0.0,
"totalTaxes": 47.32,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 156.0,
"rate2Person": 169.0,
"rate3Person": 190.0,
"rate4Person": 214.0,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 385.32,
"amountBeforeTax": 338.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 1,
"rateAmount": 169.0,
"rateChangeIndicator": false,
"ratePlanCode": "LDTAO1",
"rollawayRate": 0.0,
"roomTypeCode": "NKRCZ",
"totalServiceCharges": 0.0,
"totalTaxes": 47.32,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 156.0,
"rate2Person": 169.0,
"rate3Person": 190.0,
"rate4Person": 214.0,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 339.72,
"amountBeforeTax": 298.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 4,
"rateAmount": 149.0,
"rateChangeIndicator": false,
"ratePlanCode": "LDTAO1",
"rollawayRate": 0.0,
"roomTypeCode": "NKRQD",
"totalServiceCharges": 0.0,
"totalTaxes": 41.72,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 136.0,
"rate2Person": 149.0,
"rate3Person": 170.0,
"rate4Person": 194.0,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 339.72,
"amountBeforeTax": 298.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 8,
"rateAmount": 149.0,
"rateChangeIndicator": false,
"ratePlanCode": "LDTAO1",
"rollawayRate": 0.0,
"roomTypeCode": "NKRQF",
"totalServiceCharges": 0.0,
"totalTaxes": 41.72,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 136.0,
"rate2Person": 149.0,
"rate3Person": 170.0,
"rate4Person": 194.0,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 339.72,
"amountBeforeTax": 298.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 8,
"rateAmount": 149.0,
"rateChangeIndicator": false,
"ratePlanCode": "LDTAO1",
"rollawayRate": 0.0,
"roomTypeCode": "NKRQG",
"totalServiceCharges": 0.0,
"totalTaxes": 41.72,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 136.0,
"rate2Person": 149.0,
"rate3Person": 170.0,
"rate4Person": 194.0,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 282.72,
"amountBeforeTax": 248.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 9,
"rateAmount": 124.0,
"rateChangeIndicator": false,
"ratePlanCode": "SDTAC1",
"rollawayRate": 0.0,
"roomTypeCode": "ND2",
"totalServiceCharges": 0.0,
"totalTaxes": 34.72,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 124.0,
"rate2Person": 124.0,
"rate3Person": 134.0,
"rate4Person": 144.0,
"rollawayRate": 0.0
}
]
},
{
"amountAfterTax": 339.72,
"amountBeforeTax": 298.0,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 8,
"rateAmount": 149.0,
"rateChangeIndicator": false,
"ratePlanCode": "SDTXBB",
"rollawayRate": 0.0,
"roomTypeCode": "NKRQG",
"totalServiceCharges": 0.0,
"totalTaxes": 41.72,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 136.0,
"rate2Person": 149.0,
"rate3Person": 170.0,
"rate4Person": 194.0,
"rollawayRate": 0.0
}
]
}
],
"taxPeriods": [
{
"effectiveDate": "2020-11-26",
"taxes": [
{
"amount": 14.0,
"basis": "perRoom",
"period": "perNight",
"type": "percent"
}
]
}
]
}
curl -d '{
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
}
' -H "Content-Type: application/json" -H "Authorization: Basic YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET" -X POST https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT
// your token
String token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
String endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
String payload = \"{\"arrivalDate\":\"2020-11-26\",\"departureDate\":\"2020-11-28\",\"numAdults\": 2,\"numChildren\": 0,\"displayCurrency\": \"USD\",\"maxRateQualifier\":350.00,\"minRateQualifier\":75.00,\"roomAmenities\":[\"nonSmoking\"],\"travelAgentId\":\"07518206\",\"ratePlanCandidates\":[{\"ratePlanCategory\":\"corporate\",\"ratePlanId\":\"FHR\"}]}\";
// jersey client
ClientConfig client = new DefaultClientConfig();
client.getClasses().add(JacksonJsonProvider.class);
Client clientWithJacksonSerializer = Client.create(client);
WebResource webResource = clientWithJacksonSerializer.resource(endpointUrl);
ClientResponse jsonResponse = webResource.header("Authorization", "Basic " + this.token).type("application/json")
.post(ClientResponse.class, payload);
// retrieve the parsed JSONObject from the response
String value = jsonResponse.getEntity(String.class);
// convert the response to a JSONObject
JSONObject jsonObject = new JSONObject(value);
// get status message from response
String statusMessage = jsonObject.getString("statusMessage");
// get high rate from response
Double highRate = jsonObject.getDouble("highRate");
// get low rate from response
Double lowRate = jsonObject.getDouble("lowRate");
// get rate plans object from response
JSONObject rateplanObject = jsonObject.getJSONObject("ratePlans");
// your token
String token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
String endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
String payload = \"{\"arrivalDate\":\"2020-11-26\",\"departureDate\":\"2020-11-28\",\"numAdults\": 2,\"numChildren\": 0,\"displayCurrency\": \"USD\",\"maxRateQualifier\":350.00,\"minRateQualifier\":75.00,\"roomAmenities\":[\"nonSmoking\"],\"travelAgentId\":\"07518206\",\"ratePlanCandidates\":[{\"ratePlanCategory\":\"corporate\",\"ratePlanId\":\"FHR\"}]}\";
// resteasy client
ResteasyClient client = new ResteasyClientBuilder().build();
ResteasyWebTarget target = client.target(endpointUrl);
Response jsonResponse = target.request()
.header("Content-Type","application/json").header("accept","application/json")
.header("Authorization", "Basic " + this.token).post(Entity.json(payload));
// retrieve the parsed JSONObject from the response
String value = jsonResponse.readEntity(String.class);
// convert the response to a JSONObject
JSONObject jsonObject = new JSONObject(value);
// get status message from response
String statusMessage = jsonObject.getString("statusMessage");
// get high rate from response
Double highRate = jsonObject.getDouble("highRate");
// get low rate from response
Double lowRate = jsonObject.getDouble("lowRate");
// get rate plans object from response
JSONObject rateplanObject = jsonObject.getJSONObject("ratePlans");
// your token
String token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
String endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
String payload = \"{\"arrivalDate\":\"2020-11-26\",\"departureDate\":\"2020-11-28\",\"numAdults\": 2,\"numChildren\": 0,\"displayCurrency\": \"USD\",\"maxRateQualifier\":350.00,\"minRateQualifier\":75.00,\"roomAmenities\":[\"nonSmoking\"],\"travelAgentId\":\"07518206\",\"ratePlanCandidates\":[{\"ratePlanCategory\":\"corporate\",\"ratePlanId\":\"FHR\"}]}\";
// unirest client
HttpResponse jsonResponse =
Unirest.post(endpointUrl).header("Content-Type", "application/json")
.header("accept", "application/json")
.header("Authorization", "Basic " + this.token).body(payload).asJson();
// retrieve the parsed JSONObject from the response
JSONObject jsonObject = jsonResponse.getBody().getObject();
// get status message from response
String statusMessage = jsonObject.getString("statusMessage");
// get high rate from response
Double highRate = jsonObject.getDouble("highRate");
// get low rate from response
Double lowRate = jsonObject.getDouble("lowRate");
// get rate plans object from response
JSONObject rateplanObject = jsonObject.getJSONObject("ratePlans");
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
var endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
var payload = {
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
};
// xhttp client
var xhttp = new XMLHttpRequest();
xhttp.open("POST", endpointUrl, true);
xhttp.setRequestHeader("Content-type", "application/json");
xhttp.setRequestHeader("Authorization", "Basic " + token);
xhttp.onreadystatechange = function() {
// retrieve the parsed JSONObject from the response
var jsonObject = JSON.parse(xhttp.responseText);
// get status message from response
var statusMessage = jsonObject["statusMessage"];
// get high rate from response
var highRate = jsonObject["highRate"];
// get low rate from response
var lowRate = jsonObject["lowRate"];
// get rate plans object from response
var rateplanObject = jsonObject["ratePlans"];
}
// do the POST call to the endpoint, passing in the payload
xhttp.send(JSON.stringify(payload));
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
var endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
var payload = {
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
};
// ajax client
$.ajax({
type: "POST",
url: endpointUrl,
beforeSend: function(xhr){
xhr.setRequestHeader('Authorization', 'Basic ' + token);
xhr.setRequestHeader('Accept', 'application/json')
},
data: JSON.stringify(payload),
contentType: 'application/json',
success: function(data, statusText, xhr) {
// get status message from response
var statusMessage = data.statusMessage;
// get high rate from response
var highRate = data.highRate;
// get low rate from response
var lowRate = data.lowRate;
// get rate plans object from response
var rateplanObject = data.ratePlans;
}
});
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
var endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
var payload = {
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
};
// http client
return $http({
url: endpointUrl,
headers: {
'Content-Type': 'application/json',
'Authorization': 'Basic ' + token
},
data: payload
}).then(function(response) {
// retrieve the response
var data = response.data;
// get status message from response
var statusMessage = data.statusMessage;
// get high rate from response
var highRate = data.highRate;
// get low rate from response
var lowRate = data.lowRate;
// get rate plans object from response
var rateplanObject = data.ratePlans;
}
})
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// host address
var host = "kapip-s.hilton.io";
var basePath = "/hospitality-partner/v2";
// create http object
var http = require('https');
// token endpoint path
var endpointPath = basePath + "/dcshop/props/CHIDT";
// build the payload
var payload = {
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
};
// An object of options to indicate where to post to
var post_options = {
host: host,
path: endpointPath,
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Accept' : 'application/json',
'Authorization': 'Basic ' + token
}
};
// Set up post the request
var post_req = http.request(post_options, function(response) {
response.setEncoding("utf8");
var rawData = '';
// process the response object to json
response.on('data', (chunk) => {
rawData += chunk;
});
// parse the json and print the objects
response.on('end', () => {
// retrieve the parsed JSONObject from the response
var jsonObject = JSON.parse(rawData);
// get status message from response
var statusMessage = jsonObject.statusMessage;
// get high rate from response
var highRate = jsonObject.highRate;
// get low rate from response
var lowRate = jsonObject.lowRate;
// get rate plans object from response
var rateplanObject = jsonObject.ratePlans;
});
});
// post the data
post_req.write(JSON.stringify(payload));
post_req.end();
Single Property Shop - Specific Product
The availability request can include a specific rate plan and room type that can be requested. This is most useful for caching partners who manage initial availability from their cache and wish to validate the product’s rate and inventory against Hilton prior to the booking.
POST https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT
Content-Type: application/json
accept: application/json
Authorization: "Basic YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET"
Request Body:
{
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
],
"singleProduct": {
"roomTypeCode": "ND2",
"ratePlanCode": "LDT3XF"
}
}
Response 200:
{
"adultAge": 18,
"ageBasedPricing": true,
"arrivalDate": "2020-11-26",
"brandCode": "DT",
"currencyCode": "USD",
"departureDate": "2020-11-28",
"highRate": 120.28,
"lengthOfStay": 2,
"lowRate": 120.28,
"numAdults": 2,
"propCode": "CHIDT",
"propName": "Doubletree TREE Chicago Ohare Rosemon",
"statusCode": 0,
"clientAccounts": {
"0560079228": {
"clientId": "0560079228",
"clientName": "OTA COM DIRECT CONNECT",
"clientRatePlanFound": true,
"clientType": "corporate"
},
"0009876464": {
"clientId": "0009876464",
"clientName": "FHR",
"clientRatePlanFound": false,
"clientType": "corporate"
},
"0007518206": {
"clientId": "0007518206",
"clientName": "AAA COMMISSIONABLE RATE",
"clientType": "travelAgent"
}
},
"ratePlans": {
"LDT3XF": {
"clientIdRequired": true,
"commissionable": false,
"currencyCode": "USD",
"cxlPolicyCode": "04D",
"cxlPolicyDeadline": "2023-10-19T05:00:00Z",
"cxlPolicyLocalDeadline": "2023-10-06T23:59",
"cxlPolicyDesc": "4 DAY CANCELLATION REQUIRED",
"displayCurrency": "USD",
"guarPolicyCode": "GTD",
"guarPolicyDesc": "Hold for Arrival",
"highRate": 120.28,
"lowRate": 120.28,
"ratePlanCode": "LDT3XF",
"ratePlanOrder": 1,
"serviceChargesAndTaxesIncluded": false,
"ratePlanCategory": "corporate",
"clientIds": [
"0560079228"
],
"guaranteeMethods": [
"TA",
"CC",
"CR",
"CD",
"FP"
],
"ratePlanDesc": [
"OTA ST SEMI FLEX"
]
}
},
"roomTypes": {
"ND2": {
"adaAccessibleRoom": false,
"extraBedPermitted": false,
"extraPersonsAllowed": false,
"numBeds": 2,
"roomDisplayOrder": 10,
"roomOccupancy": 4,
"roomTypeCode": "ND2",
"smokingRoom": false,
"bedType": "double",
"roomTypeDesc": [
"2 DOUBLE BEDS 320 SQ FT NON SMOKING",
"MINI-FRIDGE-INTERNET 12.95/DAY-FLAT SCRN TV",
"SEPARATE SHOWER/TUB -BLACKOUT CURTAINS"
]
}
},
"roomRates": [
{
"amountAfterTax": 274.24,
"amountBeforeTax": 240.56,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 9,
"rateAmount": 120.28,
"rateChangeIndicator": true,
"ratePlanCode": "LDT3XF",
"rollawayRate": 0.0,
"roomTypeCode": "ND2",
"totalServiceCharges": 0.0,
"totalTaxes": 33.68,
"meals": {
"mealPlan": "N"
},
"rateDetails": [
{
"cribRate": 0.0,
"effectiveDate": "2020-11-26",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 121.52,
"rate2Person": 121.52,
"rate3Person": 131.32,
"rate4Person": 141.12,
"rollawayRate": 0.0
},
{
"cribRate": 0.0,
"effectiveDate": "2020-11-27",
"extraChildRate": 0.0,
"extraPersonRate": 0.0,
"rate1Person": 119.04,
"rate2Person": 119.04,
"rate3Person": 128.64,
"rate4Person": 138.24,
"rollawayRate": 0.0
}
]
}
],
"taxPeriods": [
{
"effectiveDate": "2020-11-26",
"taxes": [
{
"amount": 14.0,
"basis": "perRoom",
"period": "perNight",
"type": "percent"
}
]
}
]
}
curl -d '{
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
],
"singleProduct": {
"roomTypeCode": "ND2",
"ratePlanCode": "LDT3XF"
}
}
' -H "Content-Type: application/json" -H "Authorization: Basic YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET" -X POST https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT
// your token
String token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
String endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
String payload = \"{\"arrivalDate\":\"2020-11-26\",\"departureDate\":\"2020-11-28\",\"numAdults\": 2,\"numChildren\": 0,\"displayCurrency\": \"USD\",\"maxRateQualifier\":350.00,\"minRateQualifier\":75.00,\"roomAmenities\":[\"nonSmoking\"],\"travelAgentId\":\"07518206\",\"ratePlanCandidates\":[{\"ratePlanCategory\":\"corporate\",\"ratePlanId\":\"FHR\"}],\"singleProduct\":{\"roomTypeCode\":\"ND2",\"ratePlanCode\":\"LDT3XF\"}}\";
// jersey client
ClientConfig client = new DefaultClientConfig();
client.getClasses().add(JacksonJsonProvider.class);
Client clientWithJacksonSerializer = Client.create(client);
WebResource webResource = clientWithJacksonSerializer.resource(endpointUrl);
ClientResponse jsonResponse = webResource.header("Authorization", "Basic " + this.token).type("application/json")
.post(ClientResponse.class, payload);
// retrieve the parsed JSONObject from the response
String value = jsonResponse.getEntity(String.class);
// convert the response to a JSONObject
JSONObject jsonObject = new JSONObject(value);
// get status message from response
String statusMessage = jsonObject.getString("statusMessage");
// get high rate from response
Double highRate = jsonObject.getDouble("highRate");
// get low rate from response
Double lowRate = jsonObject.getDouble("lowRate");
// get rate plans object from response
JSONObject rateplanObject = jsonObject.getJSONObject("ratePlans");
// your token
String token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
String endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
String payload = \"{\"arrivalDate\":\"2020-11-26\",\"departureDate\":\"2020-11-28\",\"numAdults\": 2,\"numChildren\": 0,\"displayCurrency\": \"USD\",\"maxRateQualifier\":350.00,\"minRateQualifier\":75.00,\"roomAmenities\":[\"nonSmoking\"],\"travelAgentId\":\"07518206\",\"ratePlanCandidates\":[{\"ratePlanCategory\":\"corporate\",\"ratePlanId\":\"FHR\"}],\"singleProduct\":{\"roomTypeCode\":\"ND2",\"ratePlanCode\":\"LDT3XF\"}}\";
// resteasy client
ResteasyClient client = new ResteasyClientBuilder().build();
ResteasyWebTarget target = client.target(endpointUrl);
Response jsonResponse = target.request()
.header("Content-Type","application/json").header("accept","application/json")
.header("Authorization", "Basic " + this.token).post(Entity.json(payload));
// retrieve the parsed JSONObject from the response
String value = jsonResponse.readEntity(String.class);
// convert the response to a JSONObject
JSONObject jsonObject = new JSONObject(value);
// get status message from response
String statusMessage = jsonObject.getString("statusMessage");
// get high rate from response
Double highRate = jsonObject.getDouble("highRate");
// get low rate from response
Double lowRate = jsonObject.getDouble("lowRate");
// get rate plans object from response
JSONObject rateplanObject = jsonObject.getJSONObject("ratePlans");
// your token
String token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
String endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
String payload = \"{\"arrivalDate\":\"2020-11-26\",\"departureDate\":\"2020-11-28\",\"numAdults\": 2,\"numChildren\": 0,\"displayCurrency\": \"USD\",\"maxRateQualifier\":350.00,\"minRateQualifier\":75.00,\"roomAmenities\":[\"nonSmoking\"],\"travelAgentId\":\"07518206\",\"ratePlanCandidates\":[{\"ratePlanCategory\":\"corporate\",\"ratePlanId\":\"FHR\"}],\"singleProduct\":{\"roomTypeCode\":\"ND2",\"ratePlanCode\":\"LDT3XF\"}}\";
// unirest client
HttpResponse jsonResponse =
Unirest.post(endpointUrl).header("Content-Type", "application/json")
.header("accept", "application/json")
.header("Authorization", "Basic " + this.token).body(payload).asJson();
// retrieve the parsed JSONObject from the response
JSONObject jsonObject = jsonResponse.getBody().getObject();
// get status message from response
String statusMessage = jsonObject.getString("statusMessage");
// get high rate from response
Double highRate = jsonObject.getDouble("highRate");
// get low rate from response
Double lowRate = jsonObject.getDouble("lowRate");
// get rate plans object from response
JSONObject rateplanObject = jsonObject.getJSONObject("ratePlans");
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
var endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
var payload = {
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
],
"singleProduct": {
"roomTypeCode": "ND2",
"ratePlanCode": "LDT3XF"
}
};
// xhttp client
var xhttp = new XMLHttpRequest();
xhttp.open("POST", endpointUrl, true);
xhttp.setRequestHeader("Content-type", "application/json");
xhttp.setRequestHeader("Authorization", "Basic " + token);
xhttp.onreadystatechange = function() {
// retrieve the parsed JSONObject from the response
var jsonObject = JSON.parse(xhttp.responseText);
// get status message from response
var statusMessage = jsonObject["statusMessage"];
// get high rate from response
var highRate = jsonObject["highRate"];
// get low rate from response
var lowRate = jsonObject["lowRate"];
// get rate plans object from response
var rateplanObject = jsonObject["ratePlans"];
}
// do the POST call to the endpoint, passing in the payload
xhttp.send(JSON.stringify(payload));
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
var endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
var payload = {
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
],
"singleProduct": {
"roomTypeCode": "ND2",
"ratePlanCode": "LDT3XF"
}
};
// ajax client
$.ajax({
type: "POST",
url: endpointUrl,
beforeSend: function(xhr){
xhr.setRequestHeader('Authorization', 'Basic ' + token);
xhr.setRequestHeader('Accept', 'application/json')
},
data: JSON.stringify(payload),
contentType: 'application/json',
success: function(data, statusText, xhr) {
// get status message from response
var statusMessage = data.statusMessage;
// get high rate from response
var highRate = data.highRate;
// get low rate from response
var lowRate = data.lowRate;
// get rate plans object from response
var rateplanObject = data.ratePlans;
}
});
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
var endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props/CHIDT";
// build the payload
var payload = {
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
],
"singleProduct": {
"roomTypeCode": "ND2",
"ratePlanCode": "LDT3XF"
}
};
// http client
return $http({
url: endpointUrl,
headers: {
'Content-Type': 'application/json',
'Authorization': 'Basic ' + token
},
data: payload
}).then(function(response) {
// retrieve the response
var data = response.data;
// get status message from response
var statusMessage = data.statusMessage;
// get high rate from response
var highRate = data.highRate;
// get low rate from response
var lowRate = data.lowRate;
// get rate plans object from response
var rateplanObject = data.ratePlans;
}
})
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// host address
var host = "kapip-s.hilton.io";
var basePath = "/hospitality-partner/v2";
// create http object
var http = require('https');
// token endpoint path
var endpointPath = basePath + "/dcshop/props/CHIDT";
// build the payload
var payload = {
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
],
"singleProduct": {
"roomTypeCode": "ND2",
"ratePlanCode": "LDT3XF"
}
};
// An object of options to indicate where to post to
var post_options = {
host: host,
path: endpointPath,
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Accept' : 'application/json',
'Authorization': 'Basic ' + token
}
};
// Set up post the request
var post_req = http.request(post_options, function(response) {
response.setEncoding("utf8");
var rawData = '';
// process the response object to json
response.on('data', (chunk) => {
rawData += chunk;
});
// parse the json and print the objects
response.on('end', () => {
// retrieve the parsed JSONObject from the response
var jsonObject = JSON.parse(rawData);
// get status message from response
var statusMessage = jsonObject.statusMessage;
// get high rate from response
var highRate = jsonObject.highRate;
// get low rate from response
var lowRate = jsonObject.lowRate;
// get rate plans object from response
var rateplanObject = jsonObject.ratePlans;
});
});
// post the data
post_req.write(JSON.stringify(payload));
post_req.end();
Multi Property Shop
The multiple property request is designed to shop a maximum of 30 properties per request and return the lowest product per rate plan at each property. This is normally used as an area search in which a client can then pick a specific property to investigate further as a single property request and see a complete list of rates at the property.
Multiproperty shop does not provide the complete list of product details as a single availability request. Either the lowest rate or multi-rates are returned in the response based on the configuration. If you require the full list of products for each property you will need to send a single property request separately for each property
POST https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props
Content-Type: application/json
accept: application/json
Authorization: "Basic YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET"
Request Body:
{
"props": [
{
"propCode": "CHIDT"
},
{
"propCode": "CHIFF"
}
],
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
}
Response 200:
[
{
"adultAge": 18,
"ageBasedPricing": true,
"arrivalDate": "2020-11-26",
"brandCode": "DT",
"currencyCode": "USD",
"departureDate": "2020-11-28",
"highRate": 199.0,
"lengthOfStay": 2,
"lowRate": 120.28,
"numAdults": 2,
"propCode": "CHIDT",
"propName": "D TREE Chicago Ohare Rosemon",
"statusCode": 0,
"clientAccounts": {
"0560079228": {
"clientId": "0560079228",
"clientName": "OTA COM DIRECT CONNECT",
"clientRatePlanFound": true,
"clientType": "corporate"
},
"0009876464": {
"clientId": "0009876464",
"clientName": "FHR",
"clientRatePlanFound": false,
"clientType": "corporate"
},
"0007518206": {
"clientId": "0007518206",
"clientName": "AAA COMMISSIONABLE RATE",
"clientType": "travelAgent"
}
},
"ratePlans": {
"LDT3XF": {
"clientIdRequired": true,
"commissionable": false,
"currencyCode": "USD",
"cxlPolicyCode": "04D",
"cxlPolicyDeadline": "2023-10-19T05:00:00Z",
"cxlPolicyLocalDeadline": "2023-10-06T23:59",
"cxlPolicyDesc": "4 DAY CANCELLATION REQUIRED",
"displayCurrency": "USD",
"guarPolicyCode": "GTD",
"guarPolicyDesc": "Hold for Arrival",
"highRate": 168.78,
"lowRate": 120.28,
"ratePlanCode": "LDT3XF",
"ratePlanOrder": 1,
"serviceChargesAndTaxesIncluded": false,
"ratePlanCategory": "corporate",
"clientIds": [
"0560079228"
],
"guaranteeMethods": [
"TA",
"CC",
"CR",
"CD",
"FP"
],
"ratePlanDesc": [
"OTA ST SEMI FLEX"
]
}
},
"roomTypes": {
"ND2": {
"adaAccessibleRoom": false,
"extraBedPermitted": false,
"extraPersonsAllowed": false,
"numBeds": 2,
"roomDisplayOrder": 10,
"roomOccupancy": 4,
"roomTypeCode": "ND2",
"smokingRoom": false,
"bedType": "double",
"roomTypeDesc": [
"2 DOUBLE BEDS 320 SQ FT NON SMOKING",
"MINI-FRIDGE-INTERNET 12.95/DAY-FLAT SCRN TV",
"SEPARATE SHOWER/TUB -BLACKOUT CURTAINS"
]
}
},
"roomRates": [
{
"amountAfterTax": 274.24,
"amountBeforeTax": 240.56,
"cribRate": 0.0,
"depositAmount": 0.0,
"numRoomsAvail": 9,
"rateAmount": 120.28,
"rateChangeIndicator": true,
"ratePlanCode": "LDT3XF",
"rollawayRate": 0.0,
"roomTypeCode": "ND2",
"totalServiceCharges": 0.0,
"totalTaxes": 33.68
}
]
},
{
"adultAge": 18,
"ageBasedPricing": true,
"arrivalDate": "2020-11-26",
"brandCode": "HH",
"departureDate": "2020-11-28",
"lengthOfStay": 2,
"numAdults": 2,
"propCode": "CHIFF",
"propName": "Chicago - Saint Charles",
"statusCode": 1740,
"statusMessage": "REQUESTED RATE PLANS ARE NOT AVAILABLE",
"clientAccounts": {
"0560079228": {
"clientId": "0560079228",
"clientName": "OTA COM DIRECT CONNECT",
"clientRatePlanFound": true,
"clientType": "corporate"
},
"0009876464": {
"clientId": "0009876464",
"clientName": "FHR",
"clientRatePlanFound": false,
"clientType": "corporate"
},
"0007518206": {
"clientId": "0007518206",
"clientName": "AAA COMMISSIONABLE RATE",
"clientType": "travelAgent"
}
}
}
]
curl -d '{
"props": [
{
"propCode": "CHIDT"
},
{
"propCode": "CHIFF"
}
],
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
}
' -H "Content-Type: application/json" -H "Authorization: Basic YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET" -X POST https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props
// your token
String token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
String endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props";
// build the payload
String payload="{\"props\":[{\"propCode\":\"CHIDT\"},{\"propCode\":\"CHIFF\"}],\"arrivalDate\":\"2020-11-26\",\"departureDate\":\"2020-11-28\",\"numAdults\":2,\"numChildren\":0,\"displayCurrency\":\"USD\",\"maxRateQualifier\":350.00,\"minRateQualifier\":75.00,\"roomAmenities\":[\"nonSmoking\"],\"travelAgentId\":\"07518206\",\"ratePlanCandidates\":[{\"ratePlanCategory\":\"corporate\",\"ratePlanId\":\"FHR\"}]}";
// jersey client
ClientConfig client = new DefaultClientConfig();
client.getClasses().add(JacksonJsonProvider.class);
Client clientWithJacksonSerializer = Client.create(client);
WebResource webResource = clientWithJacksonSerializer.resource(endpointUrl);
ClientResponse jsonResponse = webResource.header("Authorization", "Basic " + this.token).type("application/json")
.post(ClientResponse.class, payload);
// retrieve the parsed JSONObject from the response
String value = jsonResponse.getEntity(String.class);
// convert the response to a JSONObject
JSONObject jsonObject = new JSONObject(value);
// get status message from response
String statusMessage = jsonObject.getString("statusMessage");
// get high rate from response
Double highRate = jsonObject.getDouble("highRate");
// get low rate from response
Double lowRate = jsonObject.getDouble("lowRate");
// get rate plans object from response
JSONObject rateplanObject = jsonObject.getJSONObject("ratePlans");
// your token
String token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
String endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props";
// build the payload
String payload="{\"props\":[{\"propCode\":\"CHIDT\"},{\"propCode\":\"CHIFF\"}],\"arrivalDate\":\"2020-11-26\",\"departureDate\":\"2020-11-28\",\"numAdults\":2,\"numChildren\":0,\"displayCurrency\":\"USD\",\"maxRateQualifier\":350.00,\"minRateQualifier\":75.00,\"roomAmenities\":[\"nonSmoking\"],\"travelAgentId\":\"07518206\",\"ratePlanCandidates\":[{\"ratePlanCategory\":\"corporate\",\"ratePlanId\":\"FHR\"}]}";
// resteasy client
ResteasyClient client = new ResteasyClientBuilder().build();
ResteasyWebTarget target = client.target(endpointUrl);
Response jsonResponse = target.request()
.header("Content-Type","application/json").header("accept","application/json")
.header("Authorization", "Basic " + this.token).post(Entity.json(payload));
// retrieve the parsed JSONObject from the response
String value = jsonResponse.readEntity(String.class);
// convert the response to a JSONObject
JSONObject jsonObject = new JSONObject(value);
// get status message from response
String statusMessage = jsonObject.getString("statusMessage");
// get high rate from response
Double highRate = jsonObject.getDouble("highRate");
// get low rate from response
Double lowRate = jsonObject.getDouble("lowRate");
// get rate plans object from response
JSONObject rateplanObject = jsonObject.getJSONObject("ratePlans");
// your token
String token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
String endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props";
// build the payload
String payload="{\"props\":[{\"propCode\":\"CHIDT\"},{\"propCode\":\"CHIFF\"}],\"arrivalDate\":\"2020-11-26\",\"departureDate\":\"2020-11-28\",\"numAdults\":2,\"numChildren\":0,\"displayCurrency\":\"USD\",\"maxRateQualifier\":350.00,\"minRateQualifier\":75.00,\"roomAmenities\":[\"nonSmoking\"],\"travelAgentId\":\"07518206\",\"ratePlanCandidates\":[{\"ratePlanCategory\":\"corporate\",\"ratePlanId\":\"FHR\"}]}";
// unirest client
HttpResponse jsonResponse =
Unirest.post(endpointUrl).header("Content-Type", "application/json")
.header("accept", "application/json")
.header("Authorization", "Basic " + this.token).body(payload).asJson();
// retrieve the parsed JSONObject from the response
JSONObject jsonObject = jsonResponse.getBody().getObject();
// get status message from response
String statusMessage = jsonObject.getString("statusMessage");
// get high rate from response
Double highRate = jsonObject.getDouble("highRate");
// get low rate from response
Double lowRate = jsonObject.getDouble("lowRate");
// get rate plans object from response
JSONObject rateplanObject = jsonObject.getJSONObject("ratePlans");
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
var endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props";
// build the payload
var payload = {
"props": [
{
"propCode": "CHIDT"
},
{
"propCode": "CHIFF"
}
],
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
};
// xhttp client
var xhttp = new XMLHttpRequest();
xhttp.open("POST", endpointUrl, true);
xhttp.setRequestHeader("Content-type", "application/json");
xhttp.setRequestHeader("Authorization", "Basic " + token);
xhttp.onreadystatechange = function() {
// retrieve the parsed JSONObject from the response
var jsonObject = JSON.parse(xhttp.responseText);
// get status message from response
var statusMessage = jsonObject["statusMessage"];
// get high rate from response
var highRate = jsonObject["highRate"];
// get low rate from response
var lowRate = jsonObject["lowRate"];
// get rate plans object from response
var rateplanObject = jsonObject["ratePlans"];
}
// do the POST call to the endpoint, passing in the payload
xhttp.send(JSON.stringify(payload));
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
var endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props";
// build the payload
var payload = {
"props": [
{
"propCode": "CHIDT"
},
{
"propCode": "CHIFF"
}
],
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
};
// ajax client
$.ajax({
type: "POST",
url: endpointUrl,
beforeSend: function(xhr){
xhr.setRequestHeader('Authorization', 'Basic ' + token);
xhr.setRequestHeader('Accept', 'application/json')
},
data: JSON.stringify(payload),
contentType: 'application/json',
success: function(data, statusText, xhr) {
// get status message from response
var statusMessage = data.statusMessage;
// get high rate from response
var highRate = data.highRate;
// get low rate from response
var lowRate = data.lowRate;
// get rate plans object from response
var rateplanObject = data.ratePlans;
}
});
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// single property endpoint url
var endpointUrl = "https://kapip-s.hilton.io/hospitality-partner/v2/dcshop/props";
// build the payload
var payload = {
"props": [
{
"propCode": "CHIDT"
},
{
"propCode": "CHIFF"
}
],
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
};
// http client
return $http({
url: endpointUrl,
headers: {
'Content-Type': 'application/json',
'Authorization': 'Basic ' + token
},
data: payload
}).then(function(response) {
// retrieve the response
var data = response.data;
// get status message from response
var statusMessage = data.statusMessage;
// get high rate from response
var highRate = data.highRate;
// get low rate from response
var lowRate = data.lowRate;
// get rate plans object from response
var rateplanObject = data.ratePlans;
}
})
// your token
var token = "YOUR_BASE64_ENCODED_CLIENTID:CLIENTSECRET";
// host address
var host = "kapip-s.hilton.io";
var basePath = "/hospitality-partner/v2";
// create http object
var http = require('https');
// token endpoint path
var endpointPath = basePath + "/dcshop/props";
// build the payload
var payload = {
"props": [
{
"propCode": "CHIDT"
},
{
"propCode": "CHIFF"
}
],
"arrivalDate": "2020-11-26",
"departureDate": "2020-11-28",
"numAdults": 2,
"numChildren": 0,
"displayCurrency": "USD",
"maxRateQualifier": 350.00,
"minRateQualifier": 75.00,
"roomAmenities": [
"nonSmoking"
],
"travelAgentId": "07518206",
"ratePlanCandidates": [
{
"ratePlanCategory": "corporate",
"ratePlanId": "FHR"
}
]
};
// An object of options to indicate where to post to
var post_options = {
host: host,
path: endpointPath,
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Accept' : 'application/json',
'Authorization': 'Basic ' + token
}
};
// Set up post the request
var post_req = http.request(post_options, function(response) {
response.setEncoding("utf8");
var rawData = '';
// process the response object to json
response.on('data', (chunk) => {
rawData += chunk;
});
// parse the json and print the objects
response.on('end', () => {
// retrieve the parsed JSONObject from the response
var jsonObject = JSON.parse(rawData);
// get status message from response
var statusMessage = jsonObject.statusMessage;
// get high rate from response
var highRate = jsonObject.highRate;
// get low rate from response
var lowRate = jsonObject.lowRate;
// get rate plans object from response
var rateplanObject = jsonObject.ratePlans;
});
});
// post the data
post_req.write(JSON.stringify(payload));
post_req.end();