# Create Manifest

The page explains how to [create a manifest](/apis/shipengine/docs/shipping/manifests) using the `/v1/manifests` endpoint and the HTTP POST method.

## Create Explicit Manifest

You may explicitly specify the labels you want to include in the manifest using the `label_ids` property.

### Example Request & Response

**POST /v1/manifests**


```http
POST /v1/manifests HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "label_ids": ["se-1049057", "se-1049058"]
}
```

**Response**


```json
{
  "manifests": [
    {
      "manifest_id": "se-11102",
      "form_id": "se-11102",
      "created_at": "2020-11-05T16:39:34.503Z",
      "ship_date": "2020-11-05T00:00:00Z",
      "shipments": 2,
      "label_ids": [
        "se-1049057",
        "se-1049058"
      ],
      "warehouse_id": null,
      "submission_id": "9475711201080308027034",
      "carrier_id": "se-82785",
      "manifest_download": {
        "href": "https://api-stage.shipengine.com/v1/downloads/0/BpP_fo0d9EiiQJ7hqDQGmA/manifest-11102.pdf"
      }
    }
  ],
   "manifest_requests": [
    {
      "manifest_request_id": "se-28529731",
      "status": "in_progress"
    }
   ],
  "manifest_id": "se-11102",
  "form_id": "se-11102",
  "created_at": "2020-11-05T16:39:34.503Z",
  "ship_date": "2020-11-05T00:00:00Z",
  "shipments": 2,
  "warehouse_id": null,
  "submission_id": "9475711201080308027034",
  "carrier_id": "se-82785",
  "manifest_download": {
    "href": "https://api-stage.shipengine.com/v1/downloads/0/BpP_fo0d9EiiQJ7hqDQGmA/manifest-11102.pdf"
  },
  "label_ids": [
    "se-1049057",
    "se-1049058"
  ],
  "request_id": "95c1dbc4-0819-4f01-91c5-87183c820b54",
  "errors": [],
}
```

## Create Implicit Manifests

Alternately, you may specify the criteria that the labels must meet and ShipStation API will determine which labels to include in the manifest based on that criteria. You may also exclude specific labels from the manifest *even if they meet the specified criteria* by using the `excluded_label_ids` property.

If you specify an `excluded_label_ids` property, you must also specify a [`carrier_id`](/apis/shipengine/docs/reference/list-carriers), [`warehouse_id`](/apis/shipengine/docs/reference/create-warehouse), and [`ship_date`](/apis/shipengine/docs/shipping/ship-dates).

### Example Request & Response

This example specifies a `carrier_id`, `warehouse_id` and `ship_date`. If you do not specify `label_ids`, you must specify all three of these properties.

**POST /v1/manifests**


```http
POST /v1/manifests HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
   "carrier_id": "se-82785",
   "warehouse_id": "se-107273",
   "ship_date": "2020-11-06T00:00:00Z"
}
```

**Response**


```json
{
    "manifests": [
        {
            "manifest_id": "se-11115",
            "form_id": "se-11115",
            "created_at": "2020-11-06T20:45:31.65Z",
            "ship_date": "2020-11-06T00:00:00Z",
            "shipments": 2,
            "label_ids": [
                "se-1049657",
                "se-1049658"
            ],
            "warehouse_id": "se-107273",
            "submission_id": "9475711201080308943358",
            "carrier_id": "se-82785",
            "manifest_download": {
                "href": "https://api-stage.shipengine.com/v1/downloads/0/bb_mfrWo9kCq-tI643Nz0Q/manifest-11115.pdf"
            }
        }
    ],
   "manifest_requests": [
    {
      "manifest_request_id": "se-28529731",
      "status": "in_progress"
    }
   ],
    "manifest_id": "se-11115",
    "form_id": "se-11115",
    "created_at": "2020-11-06T20:45:31.65Z",
    "ship_date": "2020-11-06T00:00:00Z",
    "shipments": 2,
    "warehouse_id": "se-107273",
    "submission_id": "9475711201080308943358",
    "carrier_id": "se-82785",
    "manifest_download": {
        "href": "https://api-stage.shipengine.com/v1/downloads/0/bb_mfrWo9kCq-tI643Nz0Q/manifest-11115.pdf"
    },
    "label_ids": [
        "se-1049657",
        "se-1049658"
    ],
    "request_id": "61000166-ff79-4924-9897-9dc9389c2301",
    "errors": [],
}
```

### Example Excluding Labels

This example demonstrates using the `excluded_label_ids` property. Note that it also includes the other search criteria properties, as these are required.


```http
POST /v1/manifests HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json

{
  "carrier_id": "se-82785",
  "warehouse_id": "se-107273",
  "ship_date": "2020-11-06T00:00:00Z",
  "exluded_label_ids": [
      "se-1234",
      "se-1235",
      "se-1236"
    ],
}
```

### Example Error Response

If no labels meet the specified criteria, you will get a response similar to the one below.


```json
{
    "request_id": "47b3f327-2dd1-4e24-8570-cda6fba8a00f",
    "errors": [
        {
            "error_source": "shipengine",
            "error_type": "system",
            "error_code": "unspecified",
            "message": "No labels were found matching the given criteria."
        }
    ]
}
```