Back to Collection Items
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
DECLARE @hr int
DECLARE @iTmp0 int
-- Important: Do not use nvarchar(max). See the warning about using nvarchar(max).
DECLARE @sTmp0 nvarchar(4000)
-- This example assumes the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
DECLARE @http int
-- Use "Chilkat_9_5_0.Http" for versions of Chilkat < 10.0.0
EXEC @hr = sp_OACreate 'Chilkat.Http', @http OUT
IF @hr <> 0
BEGIN
PRINT 'Failed to create ActiveX component'
RETURN
END
DECLARE @success int
DECLARE @queryParams int
-- Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0
EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @queryParams OUT
EXEC sp_OAMethod @queryParams, 'UpdateInt', @success OUT, 'numberOfRooms', 1
EXEC sp_OAMethod @queryParams, 'UpdateString', @success OUT, 'ratePlanCode', 'BARBB'
EXEC sp_OAMethod @queryParams, 'UpdateString', @success OUT, 'roomType', 'SUP'
EXEC sp_OAMethod @queryParams, 'UpdateString', @success OUT, 'startDate', '2021-03-22'
EXEC sp_OAMethod @queryParams, 'UpdateString', @success OUT, 'endDate', '2021-03-23'
EXEC sp_OAMethod @queryParams, 'UpdateString', @success OUT, 'fixedRate', 'false'
EXEC sp_OAMethod @queryParams, 'UpdateString', @success OUT, 'reservationStatus', 'Reserved'
EXEC sp_OAMethod @queryParams, 'UpdateString', @success OUT, 'rateDate', '2021-03-22'
EXEC sp_OAMethod @queryParams, 'UpdateInt', @success OUT, 'requiredAmount', 90
EXEC sp_OAMethod @queryParams, 'UpdateInt', @success OUT, 'adults', 1
EXEC sp_OAMethod @queryParams, 'UpdateInt', @success OUT, 'rateAmount', 90
EXEC sp_OAMethod @queryParams, 'UpdateString', @success OUT, 'profileId', '{{ProfileId}}'
EXEC sp_OAMethod @queryParams, 'UpdateString', @success OUT, 'reservationId', '{{ReservationId}}'
EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'Content-Type', 'application/json'
EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'x-hotelid', '{{HotelId}}'
-- Adds the "Authorization: Bearer <access_token>" header.
EXEC sp_OASetProperty @http, 'AuthToken', '<access_token>'
EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'x-app-key', '{{AppKey}}'
DECLARE @resp int
EXEC sp_OAMethod @http, 'QuickRequestParams', @resp OUT, 'GET', 'https://domain.com/par/v0/hotels/{{HotelId}}/availableUpsells', @queryParams
EXEC sp_OAGetProperty @http, 'LastMethodSuccess', @iTmp0 OUT
IF @iTmp0 = 0
BEGIN
EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT
PRINT @sTmp0
EXEC @hr = sp_OADestroy @http
EXEC @hr = sp_OADestroy @queryParams
RETURN
END
EXEC sp_OAGetProperty @resp, 'StatusCode', @iTmp0 OUT
PRINT @iTmp0
EXEC sp_OAGetProperty @resp, 'BodyStr', @sTmp0 OUT
PRINT @sTmp0
EXEC @hr = sp_OADestroy @resp
EXEC @hr = sp_OADestroy @http
EXEC @hr = sp_OADestroy @queryParams
END
GO
Curl Command
curl -G -d "numberOfRooms=1"
-d "ratePlanCode=BARBB"
-d "roomType=SUP"
-d "startDate=2021-03-22"
-d "endDate=2021-03-23"
-d "fixedRate=false"
-d "reservationStatus=Reserved"
-d "rateDate=2021-03-22"
-d "requiredAmount=90"
-d "adults=1"
-d "rateAmount=90"
-d "profileId=%7B%7BProfileId%7D%7D"
-d "reservationId=%7B%7BReservationId%7D%7D"
-H "Authorization: Bearer <access_token>"
-H "Content-Type: application/json"
-H "x-hotelid: {{HotelId}}"
-H "x-app-key: {{AppKey}}"
https://domain.com/par/v0/hotels/{{HotelId}}/availableUpsells
Postman Collection Item JSON
{
"name": "Find available upsell offers to present to a guest",
"protocolProfileBehavior": {
"disableBodyPruning": true
},
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{Token}}",
"type": "string"
}
]
},
"method": "GET",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
},
{
"key": "x-hotelid",
"type": "text",
"value": "{{HotelId}}"
},
{
"key": "x-app-key",
"value": "{{AppKey}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{HostName}}/par/v0/hotels/{{HotelId}}/availableUpsells?numberOfRooms=1&ratePlanCode=BARBB&roomType=SUP&startDate=2021-03-22&endDate=2021-03-23&fixedRate=false&reservationStatus=Reserved&rateDate=2021-03-22&requiredAmount=90&adults=1&rateAmount=90&profileId={{ProfileId}}&reservationId={{ReservationId}}",
"host": [
"{{HostName}}"
],
"path": [
"par",
"v0",
"hotels",
"{{HotelId}}",
"availableUpsells"
],
"query": [
{
"key": "guaranteeCode",
"value": "6PMHOLD",
"disabled": true
},
{
"key": "numberOfRooms",
"value": "1"
},
{
"key": "ratePlanCode",
"value": "BARBB"
},
{
"key": "roomType",
"value": "SUP"
},
{
"key": "startDate",
"value": "2021-03-22"
},
{
"key": "endDate",
"value": "2021-03-23"
},
{
"key": "fixedRate",
"value": "false"
},
{
"key": "reservationStatus",
"value": "Reserved"
},
{
"key": "rateDate",
"value": "2021-03-22"
},
{
"key": "requiredAmount",
"value": "90"
},
{
"key": "rateDate",
"value": "2020-02-23",
"disabled": true
},
{
"key": "requiredAmount",
"value": "90",
"disabled": true
},
{
"key": "adults",
"value": "1"
},
{
"key": "children",
"value": "0",
"disabled": true
},
{
"key": "rateAmount",
"value": "90"
},
{
"key": "profileId",
"value": "{{ProfileId}}"
},
{
"key": "marketCode",
"value": "COR",
"disabled": true
},
{
"key": "reservationId",
"value": "{{ReservationId}}"
},
{
"key": "endDate",
"value": "",
"disabled": true
}
]
}
},
"response": [
]
}