---
title: "Add/Remove Shipments"
method: PUT
path: "/v4/containers/{containerId}"
tags: ["Containers"]
---

# Add/Remove Shipments

`PUT /v4/containers/{containerId}`

Allocate shipments to a container or remove them from it before the container will be manifested.

## Path parameters

- `containerId` string, required

## Request body

- UpdateContainerRequest — Update Container Request
  - `ShipmentIds` string[], required — An array of unique identifiers for the shipments being added to or removed from the container. These IDs can be the shipment Id or tracking/barcode numbers. For consignment shipments, only consignment-level tracking/barcode numbers are permitted. <br /> <br />***Note:** The maximum number of shipments that can be included in a single request is 10,000, allowing for bulk management of container contents.*
  - `Mode` 'Add' | 'Remove' — A string specifying the mode of operation for the update. This field indicates how the shipment should be processed, such as whether to add new shipments or remove the existing ones, providing users with flexibility in managing their container effectively. <br /> <br />If the mode is Add, the system validates whether the shipment(s) being added to the container belong to the same shipping account as the container. If any shipment does not belong to the same shipping account as the container, an error is returned in the response. <br /> <br />***Note:** By default, this field is set to Add.*

## Response `200`

The container has been successfully updated.

## Other responses

- `400` — Invalid request response.
- `401` — Unauthorized
- `403` — Forbidden
- `404` — The container does not exist.
- `500` — Internal Server Error

---

[API](https://skmtc.dev/intersoftsapient/apis/sapient-core-api.md) · [All operations](https://skmtc.dev/intersoftsapient/apis/sapient-core-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/intersoftsapient/sapient-core-api/revisions/3315ad0b5875/schema)
