---
title: "Cancel a Shipment"
method: PUT
path: "/v1/shipments/{shipment_id}/cancel"
tags: ["shipments"]
---

# Cancel a Shipment

`PUT /v1/shipments/{shipment_id}/cancel`

Mark a shipment cancelled, if it is no longer needed or being used by your organized. Any label associated with the shipment needs to be voided first
An example use case would be if a batch label creation job is going to run at a set time and only queries `pending` shipments. Marking a shipment as cancelled
would remove it from this process

## Response `204`

The request was successful.

- string

## Other responses

- `400` — The request contained errors.
- `404` — The specified resource does not exist.
- `500` — An error occurred on ShipEngine's side. > This error will automatically be reported to our engineers.

## Changes

- **2024-10-08** `e4ae9b442f54` — 9 info
  - added the optional property `errors/items/allOf[subschema #1: error]/carrier_code` to the response with the `400` status
  - added the optional property `errors/items/allOf[subschema #1: error]/carrier_code` to the response with the `404` status
  - added the optional property `errors/items/allOf[subschema #1: error]/carrier_code` to the response with the `500` status
  - added the optional property `errors/items/allOf[subschema #1: error]/carrier_id` to the response with the `400` status
  - …5 more
- **2024-09-13** `5a15ef11fd60` — 21 warning
  - added the new `file_not_found` enum value to the `errors/items/allOf[subschema #1: error]/error_code/allOf[subschema #1: error_code]/` response property for the response status `400`
  - added the new `file_not_found` enum value to the `errors/items/allOf[subschema #1: error]/error_code/allOf[subschema #1: error_code]/` response property for the response status `404`
  - added the new `file_not_found` enum value to the `errors/items/allOf[subschema #1: error]/error_code/allOf[subschema #1: error_code]/` response property for the response status `500`
  - added the new `funding_source_error` enum value to the `errors/items/allOf[subschema #1: error]/error_code/allOf[subschema #1: error_code]/` response property for the response status `400`
  - …17 more
- …earlier changes not shown

[Full history](https://skmtc.dev/shipengine/apis/shipengine-api/changes/v1/shipments/:shipment_id/cancel/put.md)

---

[API](https://skmtc.dev/shipengine/apis/shipengine-api.md) · [All operations](https://skmtc.dev/shipengine/apis/shipengine-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/shipengine/shipengine-api/revisions/6af91511d87e/schema)
