---
title: "Manifest Shipments"
method: POST
path: "/v4/manifests/{carrierCode}"
tags: ["Manifests"]
---

# Manifest Shipments

`POST /v4/manifests/{carrierCode}`

Declare what shipments are ready for dispatch and will be handed over to the carrier. A manifest is a document that summarises the details of the shipments being handed over to the carrier, such as items, weight, and destination information. With this endpoint, you can compile and submit these details for processing, helping to streamline shipping logistics and ensure compliance with carrier requirements.<br /><br />You can manifest the shipments using any of the following parameters:<br /><br />• Shipping location<br />• Shipping account<br />• Shipment status (Picked)<br />• Service code<br />• Container<br /> <br />***Note**: If none of the aforementioned parameters are used, then all the shipments in the **LabelPrinted** and **Picked** status will be manifested, excluding the future shipments or the shipments assigned to a container, respectively.*

## Path parameters

- `carrierCode` string, required

## Request body

- ManifestRequest — Manifest Request
  - `ShippingLocationId` string, nullable — A unique identifier assigned by the system (**ShippingLocationId**) or by you (**LocationAlias**) for the shipping location from which the shipments are being manifested. This information is crucial for linking the manifest to the correct shipping point.
  - `ContainerId` string, nullable — The identifier for the container that holds the shipments being manifested. This field is necessary when shipments grouped together in a container are being manifested. <br /> <br />***Note**: This information is only required if you want to manifest a container. If provided, make sure to enter the **Shipping Location**, as all other values are not applicable for this field. Prior to manifesting a container, ensure that you have created one and added the desired shipments to it.*
  - `Status` 'Picked' — Specifies the status of the shipments being manifested. The manifest can only be created for shipments with the **Picked** status, indicating that they are ready to be despatched. If this status is not specified, then all the shipments in either **LabelPrinted** or **Picked** status will be manifested. <br /> <br />***Note**: This information is not valid when manifesting shipments by container.*
  - `ShippingAccountId` string, nullable — A unique identifier assigned by the PRO SHIPPING system for the shipping account associated with the shipments. This information is important for billing and tracking purposes, connecting the manifest to the correct account. If needed, provide this information if you want to manifest shipments by a specific shipping account only. <br /> <br />***Note**: This information is not valid when manifesting shipments by container.*
  - `ServiceCode` string, nullable — The code representing the carrier's shipping service selected for the shipments. If needed, provide the desired service code if you want to manifest shipments by a specific service only. <br /> <br />***Note**: This information is not valid when manifesting shipments by container.*
  - `Async` boolean — A boolean value indicating whether you want to execute the manifest request asynchronously. If set to true, the API will respond immediately with an OK status. The manifest will be processed in the background, allowing you to retrieve the manifest once the processing is complete.

## Response `200`

The shipments have been manifested successfully and all created manifests returned.

- ManifestResponse[]
  - `ManifestImage` string, required — The generated manifest document returned as a Base64-encoded PDF. This image represents the finalised version of the shipping manifest based on the submitted details.
  - `ManifestNumber` string, required — A unique identifier for the manifest, allowing for easy tracking and reference of the manifest document within the PRO SHIPPING system.
  - `CarrierCode` string, required — The unique identifier of the carrier associated with the manifest. This confirms which shipping carrier's requirements the manifest adheres to.
  - `Service` string, required — The shipping service selected for the manifest. If there are multiple services involved, the response will return a mixed designation, categorising the services used.
  - `TotalWeight` number, double, required — The total weight of all shipments included in the manifest, typically representing the combined weight of the packages being shipped.
  - `WeightUnitOfMeasure` 'KG' | 'Grams', required — The unit of measurement for the weight provided, such as **TotalWeight**, indicating whether the weight is specified in kilograms (KG) or grams (G), ensuring clarity for shipping calculations. <br /> <br />***Note**: By default, this field is set to KG.*
  - `TotalShipments` integer, required — The total number of shipments included in the manifest, providing a quick overview of how many shipments are being sent.
  - `TotalItems` integer, required — The total count of individual items (packages) within the shipments included in the manifest.
  - `ManifestDate` string, date, required — The date on which the manifest was created, offering a record of when the shipments were officially documented for shipping.
  - `CreatedDateUtc` string, date-time, required — A timestamp indicating when the manifest was created, formatted in Coordinated Universal Time (UTC), providing a standard reference for the creation of the document.
  - `ShippingLocation` ManifestShippingLocation, required — The shipping location from which the shipments are being manifested, offering additional context about where the shipments originate.
    - `ShippingLocationId` string, uuid, required — A unique identifier assigned by the system (ShippingLocationId) for the shipping location from which the shipments are being manifested. This information is crucial for linking the manifest to the correct shipping point.
    - `LocationAlias` string, required — A unique user-defined identifier for the shipping location, providing a convenient way to identify it, for example, Home or Warehouse.
    - `LocationCountry` string, required — An abbreviation representing the country of the shipping location, following the ISO 3166-1 alpha-2 standard, for example, "GB" for the United Kingdom, ensuring that users have clear geographical context for the shipments being manifested.
    - `LocationPostcode` string, nullable — The postal or ZIP code corresponding to the shipping location, used for sorting and identifying the geographical area of the despatch.
  - `ShippingAccount` ManifestShippingAccount, required — The shipping account associated with the shipments within the manifest.
    - `ShippingAccountId` string, uuid, required — A unique identifier for each shipping account, allowing for efficient reference and management of individual accounts within the system.
    - `AccountName` string, required — The official name of the shipping account as designated by the user or organisation, aiding in easy identification and reference of accounts.
    - `AccountAlias` string, required — A user-defined name for the shipping account, providing a convenient way to reference the account in a more memorable manner.
    - `AccountNumber` string, nullable — The number assigned to the shipping account by the carrier, typically used for tracking shipments and billing purposes.

## Other responses

- `400` — Invalid request response.
- `401` — Unauthorized
- `403` — Forbidden
- `500` — Internal Server Error

---

[API](https://skmtc.dev/proshipping/apis/pro-shipping-core-api.md) · [All operations](https://skmtc.dev/proshipping/apis/pro-shipping-core-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/proshipping/pro-shipping-core-api/revisions/ae5fc5e90109/schema)
