Chilkat Online Tools

delphiDll / Selling Partner API for Orders / update Shipment Status

Back to Collection Items

var
http: HCkHttp;
success: Boolean;
json: HCkJsonObject;
resp: HCkHttpResponse;
respStatusCode: Integer;

begin
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

http := CkHttp_Create();

// Use this online tool to generate code from sample JSON: Generate Code to Create JSON

// The following JSON is sent in the request body.

// {
//   "marketplaceId": "proident magna sint exercitation",
//   "shipmentStatus": "ReadyForPickup",
//   "orderItems": [
//     {
//       "orderItemId": "eiusmod esse et",
//       "quantity": 63324935
//     },
//     {
//       "orderItemId": "exercitation sint officia minim est",
//       "quantity": -64460298
//     }
//   ]
// }

json := CkJsonObject_Create();
CkJsonObject_UpdateString(json,'marketplaceId','proident magna sint exercitation');
CkJsonObject_UpdateString(json,'shipmentStatus','ReadyForPickup');
CkJsonObject_UpdateString(json,'orderItems[0].orderItemId','eiusmod esse et');
CkJsonObject_UpdateInt(json,'orderItems[0].quantity',63324935);
CkJsonObject_UpdateString(json,'orderItems[1].orderItemId','exercitation sint officia minim est');
CkJsonObject_UpdateInt(json,'orderItems[1].quantity',-64460298);

CkHttp_SetRequestHeader(http,'Content-Type','application/json');
CkHttp_SetRequestHeader(http,'Accept','application/json');

resp := CkHttp_PostJson3(http,'https://sellingpartnerapi-na.amazon.com/orders/v0/orders/:orderId/shipment','application/json',json);
if (CkHttp_getLastMethodSuccess(http) = False) then
  begin
    Memo1.Lines.Add(CkHttp__lastErrorText(http));
    Exit;
  end;

respStatusCode := CkHttpResponse_getStatusCode(resp);
Memo1.Lines.Add('Response Status Code = ' + IntToStr(respStatusCode));
if (respStatusCode <> 204) then
  begin
    Memo1.Lines.Add('Response Header:');
    Memo1.Lines.Add(CkHttpResponse__header(resp));
    Memo1.Lines.Add('Response Body:');
    Memo1.Lines.Add(CkHttpResponse__bodyStr(resp));
    Memo1.Lines.Add('Failed.');
    CkHttpResponse_Dispose(resp);
    Exit;
  end;
CkHttpResponse_Dispose(resp);
Memo1.Lines.Add('Success.');

CkHttp_Dispose(http);
CkJsonObject_Dispose(json);

Curl Command

curl -X POST
	-H "Content-Type: application/json"
	-H "Accept: application/json"
	-d '{
  "marketplaceId": "proident magna sint exercitation",
  "shipmentStatus": "ReadyForPickup",
  "orderItems": [
    {
      "orderItemId": "eiusmod esse et",
      "quantity": 63324935
    },
    {
      "orderItemId": "exercitation sint officia minim est",
      "quantity": -64460298
    }
  ]
}'
https://sellingpartnerapi-na.amazon.com/orders/v0/orders/:orderId/shipment

Postman Collection Item JSON

{
  "name": "update Shipment Status",
  "request": {
    "method": "POST",
    "header": [
      {
        "key": "Content-Type",
        "value": "application/json"
      },
      {
        "key": "Accept",
        "value": "application/json"
      }
    ],
    "body": {
      "mode": "raw",
      "raw": "{\n  \"marketplaceId\": \"proident magna sint exercitation\",\n  \"shipmentStatus\": \"ReadyForPickup\",\n  \"orderItems\": [\n    {\n      \"orderItemId\": \"eiusmod esse et\",\n      \"quantity\": 63324935\n    },\n    {\n      \"orderItemId\": \"exercitation sint officia minim est\",\n      \"quantity\": -64460298\n    }\n  ]\n}",
      "options": {
        "raw": {
          "language": "json"
        }
      }
    },
    "url": {
      "raw": "{{baseUrl}}/orders/v0/orders/:orderId/shipment",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "orders",
        "v0",
        "orders",
        ":orderId",
        "shipment"
      ],
      "variable": [
        {
          "key": "orderId",
          "value": "incididunt ea cillum",
          "description": "(Required) An Amazon-defined order identifier, in 3-7-7 format."
        }
      ]
    },
    "description": "Update the shipment status for an order that you specify.\n\n**Usage Plan:**\n\n| Rate (requests per second) | Burst |\n| ---- | ---- |\n| 5 | 15 |\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 then 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": "POST",
        "header": [
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"marketplaceId\": \"et ullamco Ut\",\n  \"shipmentStatus\": \"RefusedPickup\",\n  \"orderItems\": [\n    {\n      \"orderItemId\": \"do et est aliqua\",\n      \"quantity\": 52877919\n    },\n    {\n      \"orderItemId\": \"dolor ullamco\",\n      \"quantity\": -24024920\n    }\n  ]\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        },
        "url": {
          "raw": "{{baseUrl}}/orders/v0/orders/:orderId/shipment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "orders",
            "v0",
            "orders",
            ":orderId",
            "shipment"
          ],
          "variable": [
            {
              "key": "orderId",
              "value": "incididunt ea cillum",
              "description": "(Required) An Amazon-defined order identifier, in 3-7-7 format."
            }
          ]
        }
      },
      "status": "No Content",
      "code": 204,
      "_postman_previewlanguage": "text",
      "header": [
        {
          "key": "x-amzn-RateLimit-Limit",
          "value": "incididunt ea cillum",
          "description": "Your rate limit (requests per second) for this operation."
        },
        {
          "key": "x-amzn-RequestId",
          "value": "incididunt ea cillum",
          "description": "Unique request reference identifier."
        },
        {
          "key": "Content-Type",
          "value": "text/plain"
        }
      ],
      "cookie": [
      ],
      "body": ""
    },
    {
      "name": "Request has missing or invalid parameters and cannot be parsed.",
      "originalRequest": {
        "method": "POST",
        "header": [
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"marketplaceId\": \"et ullamco Ut\",\n  \"shipmentStatus\": \"RefusedPickup\",\n  \"orderItems\": [\n    {\n      \"orderItemId\": \"do et est aliqua\",\n      \"quantity\": 52877919\n    },\n    {\n      \"orderItemId\": \"dolor ullamco\",\n      \"quantity\": -24024920\n    }\n  ]\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        },
        "url": {
          "raw": "{{baseUrl}}/orders/v0/orders/:orderId/shipment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "orders",
            "v0",
            "orders",
            ":orderId",
            "shipment"
          ],
          "variable": [
            {
              "key": "orderId",
              "value": "incididunt ea cillum",
              "description": "(Required) An Amazon-defined order identifier, in 3-7-7 format."
            }
          ]
        }
      },
      "status": "Bad Request",
      "code": 400,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "x-amzn-RateLimit-Limit",
          "value": "incididunt ea cillum",
          "description": "Your rate limit (requests per second) for this operation."
        },
        {
          "key": "x-amzn-RequestId",
          "value": "incididunt ea cillum",
          "description": "Unique request reference identifier."
        },
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"errors\": [\n    {\n      \"code\": \"aliquip velit ad\",\n      \"message\": \"proident sint\",\n      \"details\": \"amet sunt\"\n    },\n    {\n      \"code\": \"consequat pariatur\",\n      \"message\": \"pariatur laboris deserunt\",\n      \"details\": \"in cupidatat\"\n    }\n  ]\n}"
    },
    {
      "name": "Indicates that access to the resource is forbidden. Possible reasons include Access Denied, Unauthorized, Expired Token, or Invalid Signature.",
      "originalRequest": {
        "method": "POST",
        "header": [
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"marketplaceId\": \"et ullamco Ut\",\n  \"shipmentStatus\": \"RefusedPickup\",\n  \"orderItems\": [\n    {\n      \"orderItemId\": \"do et est aliqua\",\n      \"quantity\": 52877919\n    },\n    {\n      \"orderItemId\": \"dolor ullamco\",\n      \"quantity\": -24024920\n    }\n  ]\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        },
        "url": {
          "raw": "{{baseUrl}}/orders/v0/orders/:orderId/shipment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "orders",
            "v0",
            "orders",
            ":orderId",
            "shipment"
          ],
          "variable": [
            {
              "key": "orderId",
              "value": "incididunt ea cillum",
              "description": "(Required) An Amazon-defined order identifier, in 3-7-7 format."
            }
          ]
        }
      },
      "status": "Forbidden",
      "code": 403,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "x-amzn-RequestId",
          "value": "incididunt ea cillum",
          "description": "Unique request reference identifier."
        },
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"errors\": [\n    {\n      \"code\": \"aliquip velit ad\",\n      \"message\": \"proident sint\",\n      \"details\": \"amet sunt\"\n    },\n    {\n      \"code\": \"consequat pariatur\",\n      \"message\": \"pariatur laboris deserunt\",\n      \"details\": \"in cupidatat\"\n    }\n  ]\n}"
    },
    {
      "name": "The resource specified does not exist.",
      "originalRequest": {
        "method": "POST",
        "header": [
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"marketplaceId\": \"et ullamco Ut\",\n  \"shipmentStatus\": \"RefusedPickup\",\n  \"orderItems\": [\n    {\n      \"orderItemId\": \"do et est aliqua\",\n      \"quantity\": 52877919\n    },\n    {\n      \"orderItemId\": \"dolor ullamco\",\n      \"quantity\": -24024920\n    }\n  ]\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        },
        "url": {
          "raw": "{{baseUrl}}/orders/v0/orders/:orderId/shipment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "orders",
            "v0",
            "orders",
            ":orderId",
            "shipment"
          ],
          "variable": [
            {
              "key": "orderId",
              "value": "incididunt ea cillum",
              "description": "(Required) An Amazon-defined order identifier, in 3-7-7 format."
            }
          ]
        }
      },
      "status": "Not Found",
      "code": 404,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "x-amzn-RateLimit-Limit",
          "value": "incididunt ea cillum",
          "description": "Your rate limit (requests per second) for this operation."
        },
        {
          "key": "x-amzn-RequestId",
          "value": "incididunt ea cillum",
          "description": "Unique request reference identifier."
        },
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"errors\": [\n    {\n      \"code\": \"aliquip velit ad\",\n      \"message\": \"proident sint\",\n      \"details\": \"amet sunt\"\n    },\n    {\n      \"code\": \"consequat pariatur\",\n      \"message\": \"pariatur laboris deserunt\",\n      \"details\": \"in cupidatat\"\n    }\n  ]\n}"
    },
    {
      "name": "The request size exceeded the maximum accepted size.",
      "originalRequest": {
        "method": "POST",
        "header": [
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"marketplaceId\": \"et ullamco Ut\",\n  \"shipmentStatus\": \"RefusedPickup\",\n  \"orderItems\": [\n    {\n      \"orderItemId\": \"do et est aliqua\",\n      \"quantity\": 52877919\n    },\n    {\n      \"orderItemId\": \"dolor ullamco\",\n      \"quantity\": -24024920\n    }\n  ]\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        },
        "url": {
          "raw": "{{baseUrl}}/orders/v0/orders/:orderId/shipment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "orders",
            "v0",
            "orders",
            ":orderId",
            "shipment"
          ],
          "variable": [
            {
              "key": "orderId",
              "value": "incididunt ea cillum",
              "description": "(Required) An Amazon-defined order identifier, in 3-7-7 format."
            }
          ]
        }
      },
      "status": "Request Entity Too Large",
      "code": 413,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "x-amzn-RequestId",
          "value": "incididunt ea cillum",
          "description": "Unique request reference identifier."
        },
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"errors\": [\n    {\n      \"code\": \"aliquip velit ad\",\n      \"message\": \"proident sint\",\n      \"details\": \"amet sunt\"\n    },\n    {\n      \"code\": \"consequat pariatur\",\n      \"message\": \"pariatur laboris deserunt\",\n      \"details\": \"in cupidatat\"\n    }\n  ]\n}"
    },
    {
      "name": "The request payload is in an unsupported format.",
      "originalRequest": {
        "method": "POST",
        "header": [
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"marketplaceId\": \"et ullamco Ut\",\n  \"shipmentStatus\": \"RefusedPickup\",\n  \"orderItems\": [\n    {\n      \"orderItemId\": \"do et est aliqua\",\n      \"quantity\": 52877919\n    },\n    {\n      \"orderItemId\": \"dolor ullamco\",\n      \"quantity\": -24024920\n    }\n  ]\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        },
        "url": {
          "raw": "{{baseUrl}}/orders/v0/orders/:orderId/shipment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "orders",
            "v0",
            "orders",
            ":orderId",
            "shipment"
          ],
          "variable": [
            {
              "key": "orderId",
              "value": "incididunt ea cillum",
              "description": "(Required) An Amazon-defined order identifier, in 3-7-7 format."
            }
          ]
        }
      },
      "status": "Unsupported Media Type",
      "code": 415,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "x-amzn-RequestId",
          "value": "incididunt ea cillum",
          "description": "Unique request reference identifier."
        },
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"errors\": [\n    {\n      \"code\": \"aliquip velit ad\",\n      \"message\": \"proident sint\",\n      \"details\": \"amet sunt\"\n    },\n    {\n      \"code\": \"consequat pariatur\",\n      \"message\": \"pariatur laboris deserunt\",\n      \"details\": \"in cupidatat\"\n    }\n  ]\n}"
    },
    {
      "name": "The frequency of requests was greater than allowed.",
      "originalRequest": {
        "method": "POST",
        "header": [
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"marketplaceId\": \"et ullamco Ut\",\n  \"shipmentStatus\": \"RefusedPickup\",\n  \"orderItems\": [\n    {\n      \"orderItemId\": \"do et est aliqua\",\n      \"quantity\": 52877919\n    },\n    {\n      \"orderItemId\": \"dolor ullamco\",\n      \"quantity\": -24024920\n    }\n  ]\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        },
        "url": {
          "raw": "{{baseUrl}}/orders/v0/orders/:orderId/shipment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "orders",
            "v0",
            "orders",
            ":orderId",
            "shipment"
          ],
          "variable": [
            {
              "key": "orderId",
              "value": "incididunt ea cillum",
              "description": "(Required) An Amazon-defined order identifier, in 3-7-7 format."
            }
          ]
        }
      },
      "status": "Too Many Requests",
      "code": 429,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "x-amzn-RequestId",
          "value": "incididunt ea cillum",
          "description": "Unique request reference identifier."
        },
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"errors\": [\n    {\n      \"code\": \"aliquip velit ad\",\n      \"message\": \"proident sint\",\n      \"details\": \"amet sunt\"\n    },\n    {\n      \"code\": \"consequat pariatur\",\n      \"message\": \"pariatur laboris deserunt\",\n      \"details\": \"in cupidatat\"\n    }\n  ]\n}"
    },
    {
      "name": "An unexpected condition occurred that prevented the server from fulfilling the request.",
      "originalRequest": {
        "method": "POST",
        "header": [
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"marketplaceId\": \"et ullamco Ut\",\n  \"shipmentStatus\": \"RefusedPickup\",\n  \"orderItems\": [\n    {\n      \"orderItemId\": \"do et est aliqua\",\n      \"quantity\": 52877919\n    },\n    {\n      \"orderItemId\": \"dolor ullamco\",\n      \"quantity\": -24024920\n    }\n  ]\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        },
        "url": {
          "raw": "{{baseUrl}}/orders/v0/orders/:orderId/shipment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "orders",
            "v0",
            "orders",
            ":orderId",
            "shipment"
          ],
          "variable": [
            {
              "key": "orderId",
              "value": "incididunt ea cillum",
              "description": "(Required) An Amazon-defined order identifier, in 3-7-7 format."
            }
          ]
        }
      },
      "status": "Internal Server Error",
      "code": 500,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "x-amzn-RequestId",
          "value": "incididunt ea cillum",
          "description": "Unique request reference identifier."
        },
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"errors\": [\n    {\n      \"code\": \"aliquip velit ad\",\n      \"message\": \"proident sint\",\n      \"details\": \"amet sunt\"\n    },\n    {\n      \"code\": \"consequat pariatur\",\n      \"message\": \"pariatur laboris deserunt\",\n      \"details\": \"in cupidatat\"\n    }\n  ]\n}"
    },
    {
      "name": "Temporary overloading or maintenance of the server.",
      "originalRequest": {
        "method": "POST",
        "header": [
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"marketplaceId\": \"et ullamco Ut\",\n  \"shipmentStatus\": \"RefusedPickup\",\n  \"orderItems\": [\n    {\n      \"orderItemId\": \"do et est aliqua\",\n      \"quantity\": 52877919\n    },\n    {\n      \"orderItemId\": \"dolor ullamco\",\n      \"quantity\": -24024920\n    }\n  ]\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        },
        "url": {
          "raw": "{{baseUrl}}/orders/v0/orders/:orderId/shipment",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "orders",
            "v0",
            "orders",
            ":orderId",
            "shipment"
          ],
          "variable": [
            {
              "key": "orderId",
              "value": "incididunt ea cillum",
              "description": "(Required) An Amazon-defined order identifier, in 3-7-7 format."
            }
          ]
        }
      },
      "status": "Service Unavailable",
      "code": 503,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "x-amzn-RequestId",
          "value": "incididunt ea cillum",
          "description": "Unique request reference identifier."
        },
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n  \"errors\": [\n    {\n      \"code\": \"aliquip velit ad\",\n      \"message\": \"proident sint\",\n      \"details\": \"amet sunt\"\n    },\n    {\n      \"code\": \"consequat pariatur\",\n      \"message\": \"pariatur laboris deserunt\",\n      \"details\": \"in cupidatat\"\n    }\n  ]\n}"
    }
  ]
}