Explicit vs Implicit Manifests
If your carrier requires a physical manifest, you will need to send a request to ShipEngine to create it. You can send a request with a list of specific labels to include in an explicit manifest.
Alternately, you can include filter criteria in your request and allow ShipEngine to determine the exact list of labels to include in an implicit manifest, including a property that allows you to exclude labels from the manifest even if they meet the filter criteria.
Explicit Manifests
One way to create manifests in ShipEngine is to explicitly specify which labels to include in the manifest.
To create an explicit manifest, you only need to set a single field:
Field Name | Type | Required? | Description |
---|---|---|---|
label_ids | array of strings | yes | Use this to specify the labels that you want to include in the manifest. You may specify up to 500 labels in a single manifest. |
Example Request
Example Response
Notice that the response includes an array of manifests. The request may return more than one manifest.
Each manifest contains an href
property containing a URL where the manifest can be downloaded. There is also a top-level
href
property that will contain the URL for the first manifest if more than one is returned.
Example Response with Multiple Manifests
This response includes two manifest objects. ShipEngine will automatically split your labels across multiple manifests
if you have more than 500 labels in the request or if the specified label_ids
span multiple carriers, warehouses,
or ship dates.
For example, if you specify
label_ids
for USPS and FedEx for the same warehouse and ship date, ShipEngine will return two manifests - one for USPS
labels with the specified warehouse and ship date and one for FedEx labels with the specified warehouse and ship date.
Each manifest object contains an href
property that contains a URL where you can download a PDF version of the
manifest. There is also a top-level href
that includes a URL where you can download the first manifest if
multiple manifests are returned. Each manifest object indicates the specific label_ids
that are included in the manifest.
Implicit Manifests
You may also create a manifest that includes all the labels that match the specific criteria you specify in the request. Labels that do not meet the specified criteria will be excluded from the manifest.
You may specify values for one or more of the properties below. ShipEngine will create a manifest that includes all labels that match this criteria.
You can use the excluded_label_ids
property to specify label IDs that should be excluded from the manifest even if they match the specified criteria.
Property | Description |
---|---|
carrier_id | string, required The carrier ID you wish to create a manifest for. This will exclude labels that do not use this specified carrier_id . |
excluded_label_ids | string array The label IDS that you do NOT wish to manifest, even if they meet the rest of the specified criteria. |
warehouse_id | string, required The Warehouse ID this manifest is being created for. This will exclude labels that do not use the specified warehouse_id . |
ship_date | date string, (ISO 8601 Standard), required The ship date you want to include labels for. Example: 2019-07-25T15:24:46.657Z |
Example Request
POST /v1/manifests
Example Response
Group Labels into Multiple Manifests
If you have multiple outgoing shipments per day, you may want to group your daily labels into more than one manifest.
You can use either the label_ids
property or the excluded_label_ids
property to group your control which labels
are included in each manifest and avoid overlap. A label should be included in only one manifest.