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, 'UpdateString', @success OUT, 'amazonOrderId', 'nisi non tempor minim'
EXEC sp_OAMethod @queryParams, 'UpdateString', @success OUT, 'marketplaceId', 'nisi non tempor minim'
EXEC sp_OAMethod @http, 'SetRequestHeader', NULL, 'Accept', 'application/json'
DECLARE @resp int
EXEC sp_OAMethod @http, 'QuickRequestParams', @resp OUT, 'GET', 'https://sellingpartnerapi-na.amazon.com/easyShip/2022-03-23/package', @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
DECLARE @sbResponseBody int
-- Use "Chilkat_9_5_0.StringBuilder" for versions of Chilkat < 10.0.0
EXEC @hr = sp_OACreate 'Chilkat.StringBuilder', @sbResponseBody OUT
EXEC sp_OAMethod @resp, 'GetBodySb', @success OUT, @sbResponseBody
DECLARE @jResp int
-- Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0
EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @jResp OUT
EXEC sp_OAMethod @jResp, 'LoadSb', @success OUT, @sbResponseBody
EXEC sp_OASetProperty @jResp, 'EmitCompact', 0
PRINT 'Response Body:'
EXEC sp_OAMethod @jResp, 'Emit', @sTmp0 OUT
PRINT @sTmp0
DECLARE @respStatusCode int
EXEC sp_OAGetProperty @resp, 'StatusCode', @respStatusCode OUT
PRINT 'Response Status Code = ' + @respStatusCode
IF @respStatusCode >= 400
BEGIN
PRINT 'Response Header:'
EXEC sp_OAGetProperty @resp, 'Header', @sTmp0 OUT
PRINT @sTmp0
PRINT 'Failed.'
EXEC @hr = sp_OADestroy @resp
EXEC @hr = sp_OADestroy @http
EXEC @hr = sp_OADestroy @queryParams
EXEC @hr = sp_OADestroy @sbResponseBody
EXEC @hr = sp_OADestroy @jResp
RETURN
END
EXEC @hr = sp_OADestroy @resp
-- Sample JSON response:
-- (Sample code for parsing the JSON response is shown below)
-- {
-- "packageDimensions": {
-- "length": 92908506.38751999,
-- "width": 69740717.24177761,
-- "height": 55703784.11292852,
-- "unit": "Cm",
-- "identifier": "velit elit incididunt"
-- },
-- "packageTimeSlot": {
-- "slotId": "id sit ut elit",
-- "startTime": "2015-08-10T18:15:47.176Z",
-- "endTime": "1974-01-15T04:04:16.651Z",
-- "handoverMethod": "Dropoff"
-- },
-- "packageWeight": {
-- "value": 22615253.265217148,
-- "unit": "Grams"
-- },
-- "scheduledPackageId": {
-- "amazonOrderId": "eu ex pariatur mollit",
-- "packageId": "la"
-- },
-- "packageItems": [
-- {
-- "orderItemId": "irure in",
-- "orderItemSerialNumbers": [
-- "est qui magna dolor in",
-- "do sint consequat"
-- ]
-- },
-- {
-- "orderItemId": "incididunt proident",
-- "orderItemSerialNumbers": [
-- "amet",
-- "ex"
-- ]
-- }
-- ],
-- "packageIdentifier": "Lorem",
-- "invoice": {
-- "invoiceNumber": "esse non",
-- "invoiceDate": "2020-10-09T01:25:28.191Z"
-- },
-- "packageStatus": "AtDestinationFC",
-- "trackingDetails": {
-- "trackingId": "dolor est aute"
-- }
-- }
-- Sample code for parsing the JSON response...
-- Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
DECLARE @orderItemId nvarchar(4000)
DECLARE @j int
DECLARE @count_j int
DECLARE @strVal nvarchar(4000)
DECLARE @Length nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @Length OUT, 'packageDimensions.length'
DECLARE @Width nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @Width OUT, 'packageDimensions.width'
DECLARE @Height nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @Height OUT, 'packageDimensions.height'
DECLARE @Unit nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @Unit OUT, 'packageDimensions.unit'
DECLARE @Identifier nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @Identifier OUT, 'packageDimensions.identifier'
DECLARE @SlotId nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @SlotId OUT, 'packageTimeSlot.slotId'
DECLARE @StartTime nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @StartTime OUT, 'packageTimeSlot.startTime'
DECLARE @EndTime nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @EndTime OUT, 'packageTimeSlot.endTime'
DECLARE @HandoverMethod nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @HandoverMethod OUT, 'packageTimeSlot.handoverMethod'
DECLARE @Value nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @Value OUT, 'packageWeight.value'
DECLARE @packageWeightUnit nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @packageWeightUnit OUT, 'packageWeight.unit'
DECLARE @AmazonOrderId nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @AmazonOrderId OUT, 'scheduledPackageId.amazonOrderId'
DECLARE @PackageId nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @PackageId OUT, 'scheduledPackageId.packageId'
DECLARE @packageIdentifier nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @packageIdentifier OUT, 'packageIdentifier'
DECLARE @InvoiceNumber nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @InvoiceNumber OUT, 'invoice.invoiceNumber'
DECLARE @InvoiceDate nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @InvoiceDate OUT, 'invoice.invoiceDate'
DECLARE @packageStatus nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @packageStatus OUT, 'packageStatus'
DECLARE @TrackingId nvarchar(4000)
EXEC sp_OAMethod @jResp, 'StringOf', @TrackingId OUT, 'trackingDetails.trackingId'
DECLARE @i int
SELECT @i = 0
DECLARE @count_i int
EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_i OUT, 'packageItems'
WHILE @i < @count_i
BEGIN
EXEC sp_OASetProperty @jResp, 'I', @i
EXEC sp_OAMethod @jResp, 'StringOf', @orderItemId OUT, 'packageItems[i].orderItemId'
SELECT @j = 0
EXEC sp_OAMethod @jResp, 'SizeOfArray', @count_j OUT, 'packageItems[i].orderItemSerialNumbers'
WHILE @j < @count_j
BEGIN
EXEC sp_OASetProperty @jResp, 'J', @j
EXEC sp_OAMethod @jResp, 'StringOf', @strVal OUT, 'packageItems[i].orderItemSerialNumbers[j]'
SELECT @j = @j + 1
END
SELECT @i = @i + 1
END
EXEC @hr = sp_OADestroy @http
EXEC @hr = sp_OADestroy @queryParams
EXEC @hr = sp_OADestroy @sbResponseBody
EXEC @hr = sp_OADestroy @jResp
END
GO
Curl Command
curl -G -d "amazonOrderId=nisi%20non%20tempor%20minim"
-d "marketplaceId=nisi%20non%20tempor%20minim"
-H "Accept: application/json"
https://sellingpartnerapi-na.amazon.com/easyShip/2022-03-23/package
Postman Collection Item JSON
{
"name": "get Scheduled Package",
"request": {
"method": "GET",
"header": [
{
"key": "Accept",
"value": "application/json"
}
],
"url": {
"raw": "{{baseUrl}}/easyShip/2022-03-23/package?amazonOrderId=nisi non tempor minim&marketplaceId=nisi non tempor minim",
"host": [
"{{baseUrl}}"
],
"path": [
"easyShip",
"2022-03-23",
"package"
],
"query": [
{
"key": "amazonOrderId",
"value": "nisi non tempor minim",
"description": "(Required) An Amazon-defined order identifier. Identifies the order that the seller wants to deliver using Amazon Easy Ship."
},
{
"key": "marketplaceId",
"value": "nisi non tempor minim",
"description": "(Required) An identifier for the marketplace in which the seller is selling."
}
]
},
"description": "Returns information about a package, including dimensions, weight, time slot information for handover, invoice and item information, and status.\n\n**Usage Plan:**\n\n| Rate (requests per second) | Burst |\n| ---- | ---- |\n| 1 | 5 |\n\nThe `x-amzn-RateLimit-Limit` response header returns the usage plan rate limits that were applied to the requested operation, when available. The table above indicates the default rate and burst values for this operation. Selling partners whose business demands require higher throughput may see higher rate and burst values than those shown here. For more information, see [Usage Plans and Rate Limits in the Selling Partner API](doc:usage-plans-and-rate-limits-in-the-sp-api)."
},
"response": [
{
"name": "Success.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/easyShip/2022-03-23/package?amazonOrderId=nisi non tempor minim&marketplaceId=nisi non tempor minim",
"host": [
"{{baseUrl}}"
],
"path": [
"easyShip",
"2022-03-23",
"package"
],
"query": [
{
"key": "amazonOrderId",
"value": "nisi non tempor minim"
},
{
"key": "marketplaceId",
"value": "nisi non tempor minim"
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "x-amzn-RateLimit-Limit",
"value": "do anim",
"description": "Your rate limit (requests per second) for this operation."
},
{
"key": "x-amzn-RequestId",
"value": "do anim",
"description": "Unique request reference identifier."
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"packageDimensions\": {\n \"length\": 92908506.38751999,\n \"width\": 69740717.24177761,\n \"height\": 55703784.11292852,\n \"unit\": \"Cm\",\n \"identifier\": \"velit elit incididunt\"\n },\n \"packageTimeSlot\": {\n \"slotId\": \"id sit ut elit\",\n \"startTime\": \"2015-08-10T18:15:47.176Z\",\n \"endTime\": \"1974-01-15T04:04:16.651Z\",\n \"handoverMethod\": \"Dropoff\"\n },\n \"packageWeight\": {\n \"value\": 22615253.265217148,\n \"unit\": \"Grams\"\n },\n \"scheduledPackageId\": {\n \"amazonOrderId\": \"eu ex pariatur mollit\",\n \"packageId\": \"la\"\n },\n \"packageItems\": [\n {\n \"orderItemId\": \"irure in\",\n \"orderItemSerialNumbers\": [\n \"est qui magna dolor in\",\n \"do sint consequat\"\n ]\n },\n {\n \"orderItemId\": \"incididunt proident\",\n \"orderItemSerialNumbers\": [\n \"amet\",\n \"ex\"\n ]\n }\n ],\n \"packageIdentifier\": \"Lorem\",\n \"invoice\": {\n \"invoiceNumber\": \"esse non\",\n \"invoiceDate\": \"2020-10-09T01:25:28.191Z\"\n },\n \"packageStatus\": \"AtDestinationFC\",\n \"trackingDetails\": {\n \"trackingId\": \"dolor est aute\"\n }\n}"
},
{
"name": "Request has missing or invalid parameters and cannot be parsed.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/easyShip/2022-03-23/package?amazonOrderId=nisi non tempor minim&marketplaceId=nisi non tempor minim",
"host": [
"{{baseUrl}}"
],
"path": [
"easyShip",
"2022-03-23",
"package"
],
"query": [
{
"key": "amazonOrderId",
"value": "nisi non tempor minim"
},
{
"key": "marketplaceId",
"value": "nisi non tempor minim"
}
]
}
},
"status": "Bad Request",
"code": 400,
"_postman_previewlanguage": "json",
"header": [
{
"key": "x-amzn-RateLimit-Limit",
"value": "do anim",
"description": "Your rate limit (requests per second) for this operation."
},
{
"key": "x-amzn-RequestId",
"value": "do anim",
"description": "Unique request reference identifier."
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n {\n \"code\": \"minim nisi sint\",\n \"message\": \"irure sed dolor\",\n \"details\": \"officia consectetur Excepteur\"\n },\n {\n \"code\": \"Ut do\",\n \"message\": \"non nisi ipsum\",\n \"details\": \"Ut\"\n }\n ]\n}"
},
{
"name": "The request's Authorization header is not formatted correctly or does not contain a valid token.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/easyShip/2022-03-23/package?amazonOrderId=nisi non tempor minim&marketplaceId=nisi non tempor minim",
"host": [
"{{baseUrl}}"
],
"path": [
"easyShip",
"2022-03-23",
"package"
],
"query": [
{
"key": "amazonOrderId",
"value": "nisi non tempor minim"
},
{
"key": "marketplaceId",
"value": "nisi non tempor minim"
}
]
}
},
"status": "Unauthorized",
"code": 401,
"_postman_previewlanguage": "json",
"header": [
{
"key": "x-amzn-RateLimit-Limit",
"value": "do anim",
"description": "Your rate limit (requests per second) for this operation."
},
{
"key": "x-amzn-RequestId",
"value": "do anim",
"description": "Unique request reference identifier."
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n {\n \"code\": \"minim nisi sint\",\n \"message\": \"irure sed dolor\",\n \"details\": \"officia consectetur Excepteur\"\n },\n {\n \"code\": \"Ut do\",\n \"message\": \"non nisi ipsum\",\n \"details\": \"Ut\"\n }\n ]\n}"
},
{
"name": "Indicates access to the resource is forbidden. Possible reasons include Access Denied, Unauthorized, Expired Token, or Invalid Signature.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/easyShip/2022-03-23/package?amazonOrderId=nisi non tempor minim&marketplaceId=nisi non tempor minim",
"host": [
"{{baseUrl}}"
],
"path": [
"easyShip",
"2022-03-23",
"package"
],
"query": [
{
"key": "amazonOrderId",
"value": "nisi non tempor minim"
},
{
"key": "marketplaceId",
"value": "nisi non tempor minim"
}
]
}
},
"status": "Forbidden",
"code": 403,
"_postman_previewlanguage": "json",
"header": [
{
"key": "x-amzn-RequestId",
"value": "do anim",
"description": "Unique request reference identifier."
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n {\n \"code\": \"minim nisi sint\",\n \"message\": \"irure sed dolor\",\n \"details\": \"officia consectetur Excepteur\"\n },\n {\n \"code\": \"Ut do\",\n \"message\": \"non nisi ipsum\",\n \"details\": \"Ut\"\n }\n ]\n}"
},
{
"name": "The specified resource does not exist.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/easyShip/2022-03-23/package?amazonOrderId=nisi non tempor minim&marketplaceId=nisi non tempor minim",
"host": [
"{{baseUrl}}"
],
"path": [
"easyShip",
"2022-03-23",
"package"
],
"query": [
{
"key": "amazonOrderId",
"value": "nisi non tempor minim"
},
{
"key": "marketplaceId",
"value": "nisi non tempor minim"
}
]
}
},
"status": "Not Found",
"code": 404,
"_postman_previewlanguage": "json",
"header": [
{
"key": "x-amzn-RateLimit-Limit",
"value": "do anim",
"description": "Your rate limit (requests per second) for this operation."
},
{
"key": "x-amzn-RequestId",
"value": "do anim",
"description": "Unique request reference identifier."
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n {\n \"code\": \"minim nisi sint\",\n \"message\": \"irure sed dolor\",\n \"details\": \"officia consectetur Excepteur\"\n },\n {\n \"code\": \"Ut do\",\n \"message\": \"non nisi ipsum\",\n \"details\": \"Ut\"\n }\n ]\n}"
},
{
"name": "The request payload is in an unsupported format.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/easyShip/2022-03-23/package?amazonOrderId=nisi non tempor minim&marketplaceId=nisi non tempor minim",
"host": [
"{{baseUrl}}"
],
"path": [
"easyShip",
"2022-03-23",
"package"
],
"query": [
{
"key": "amazonOrderId",
"value": "nisi non tempor minim"
},
{
"key": "marketplaceId",
"value": "nisi non tempor minim"
}
]
}
},
"status": "Unsupported Media Type",
"code": 415,
"_postman_previewlanguage": "json",
"header": [
{
"key": "x-amzn-RequestId",
"value": "do anim",
"description": "Unique request reference identifier."
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n {\n \"code\": \"minim nisi sint\",\n \"message\": \"irure sed dolor\",\n \"details\": \"officia consectetur Excepteur\"\n },\n {\n \"code\": \"Ut do\",\n \"message\": \"non nisi ipsum\",\n \"details\": \"Ut\"\n }\n ]\n}"
},
{
"name": "The frequency of requests was greater than allowed.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/easyShip/2022-03-23/package?amazonOrderId=nisi non tempor minim&marketplaceId=nisi non tempor minim",
"host": [
"{{baseUrl}}"
],
"path": [
"easyShip",
"2022-03-23",
"package"
],
"query": [
{
"key": "amazonOrderId",
"value": "nisi non tempor minim"
},
{
"key": "marketplaceId",
"value": "nisi non tempor minim"
}
]
}
},
"status": "Too Many Requests",
"code": 429,
"_postman_previewlanguage": "json",
"header": [
{
"key": "x-amzn-RequestId",
"value": "do anim",
"description": "Unique request reference identifier."
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n {\n \"code\": \"minim nisi sint\",\n \"message\": \"irure sed dolor\",\n \"details\": \"officia consectetur Excepteur\"\n },\n {\n \"code\": \"Ut do\",\n \"message\": \"non nisi ipsum\",\n \"details\": \"Ut\"\n }\n ]\n}"
},
{
"name": "An unexpected condition occurred that prevented the server from fulfilling the request.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/easyShip/2022-03-23/package?amazonOrderId=nisi non tempor minim&marketplaceId=nisi non tempor minim",
"host": [
"{{baseUrl}}"
],
"path": [
"easyShip",
"2022-03-23",
"package"
],
"query": [
{
"key": "amazonOrderId",
"value": "nisi non tempor minim"
},
{
"key": "marketplaceId",
"value": "nisi non tempor minim"
}
]
}
},
"status": "Internal Server Error",
"code": 500,
"_postman_previewlanguage": "json",
"header": [
{
"key": "x-amzn-RequestId",
"value": "do anim",
"description": "Unique request reference identifier."
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n {\n \"code\": \"minim nisi sint\",\n \"message\": \"irure sed dolor\",\n \"details\": \"officia consectetur Excepteur\"\n },\n {\n \"code\": \"Ut do\",\n \"message\": \"non nisi ipsum\",\n \"details\": \"Ut\"\n }\n ]\n}"
},
{
"name": "Temporary overloading or maintenance of the server.",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/easyShip/2022-03-23/package?amazonOrderId=nisi non tempor minim&marketplaceId=nisi non tempor minim",
"host": [
"{{baseUrl}}"
],
"path": [
"easyShip",
"2022-03-23",
"package"
],
"query": [
{
"key": "amazonOrderId",
"value": "nisi non tempor minim"
},
{
"key": "marketplaceId",
"value": "nisi non tempor minim"
}
]
}
},
"status": "Service Unavailable",
"code": 503,
"_postman_previewlanguage": "json",
"header": [
{
"key": "x-amzn-RequestId",
"value": "do anim",
"description": "Unique request reference identifier."
},
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"errors\": [\n {\n \"code\": \"minim nisi sint\",\n \"message\": \"irure sed dolor\",\n \"details\": \"officia consectetur Excepteur\"\n },\n {\n \"code\": \"Ut do\",\n \"message\": \"non nisi ipsum\",\n \"details\": \"Ut\"\n }\n ]\n}"
}
]
}