# Confirm Shipment

<mark style="color:orange;">`POST`</mark> /v3/transactions/<mark style="color:orange;">{transactionId}</mark>/confirm-shipment

## Request

The details below help you form your HTTP requests to this endpoint.

### Headers

You may need to provide specific headers.

<table><thead><tr><th>Name</th><th>Type</th><th data-type="checkbox">Required</th><th>Description</th></tr></thead><tbody><tr><td>x-consumer-custom-id</td><td>string</td><td>true</td><td>Consumer data with the format "channel:vendorId"</td></tr></tbody></table>

### Path Parameters

The endpoint path expects parameters.

<table><thead><tr><th>Name</th><th>Type</th><th data-type="checkbox">Required</th><th>Description</th></tr></thead><tbody><tr><td>transactionId</td><td>string</td><td>true</td><td>The transaction ID provided at lease generation.</td></tr></tbody></table>

### Body

You must provide a JSON payload.

<table><thead><tr><th>Name</th><th>Type</th><th data-type="checkbox">Required</th><th>Description</th></tr></thead><tbody><tr><td>items</td><td>array</td><td>false</td><td>The list of items to be confirmed.</td></tr><tr><td>items[].sku</td><td>string</td><td>false</td><td>Item's sku</td></tr><tr><td>items[].trackingNumber</td><td>string</td><td>false</td><td>The tracking number</td></tr><tr><td>items[].carrier</td><td>string</td><td>true</td><td>The carrier handling the item's shipment.</td></tr><tr><td>items[].shipDate</td><td>string</td><td>true</td><td>The date shipped to the carrier.</td></tr><tr><td>items[].deliveryDate</td><td>string</td><td>false</td><td>The date shipped to the carrier.</td></tr><tr><td>items[].quantity</td><td>number</td><td>false</td><td>Quantity, defaults to the number ordered if not present.</td></tr><tr><td>items[].trackingLink</td><td>string</td><td>false</td><td>A link to track the shipment on the carrier's website.</td></tr></tbody></table>

## Response

The details below help you understand the responses you could get from this endpoint.

### Samples

Below are samples of responses, with tabs corresponding to returned status code.

{% tabs %}
{% tab title="200" %}

```javascript
{
    "data": {}
}
```

{% endtab %}

{% tab title="400" %}

```javascript
{
    "error": {
        "statusCode": 400,
        "code": "UserAlreadyExists",
        "message": "User already exists with email ex@example.com",
        "data": {}
    }
}
```

{% endtab %}
{% endtabs %}

### Schema

The response's schema is outlined below.

<table><thead><tr><th>Name</th><th>Type</th><th data-type="checkbox">Required</th><th>Description</th></tr></thead><tbody><tr><td>data</td><td>object</td><td>false</td><td>N/A</td></tr></tbody></table>
