> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developer.shipbob.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developer.shipbob.com/_mcp/server.

# Get one Shipment by Shipment Id

GET https://api.shipbob.com/1.0/shipment/{shipmentId}

Reference: https://developer.shipbob.com/v1.0/api/orders/get-one-shipment-by-shipment-id

## Authentication

- `Authorization` header (bearer token, required) — Authentication using Personal Access Token (PAT) token
- `Authorization` header (bearer token, required) — OAuth2 authentication using JWT tokens

## Servers

- `https://api.shipbob.com` (https://api.shipbob.com, default)
- `https://sandbox-api.shipbob.com` (https://sandbox-api.shipbob.com)

## Request

### Path parameters

- `shipmentId` (string, required) — The shipment id to get

### Headers

- `shipbob_channel_id` (string, optional) — Channel Id for Operation

## Response

### 200

Success

- `object or object`
  - Orders.ShipmentViewModel
    - `actual_fulfillment_date` (datetime, optional, nullable) — The datetime of ShipBob’s completion of the fulfillment operation as promised. Currently, this means the shipment has been picked, packed, and label has been printed.
    - `created_date` (datetime, optional) — Date this shipment was created
    - `delivery_date` (datetime, optional, nullable) — The datetime of Shipment delivered to customer.
    - `estimated_fulfillment_date` (datetime, optional, nullable) — The datetime of ShipBob’s commitment for completing the shipment and handing to the carrier for delivery.
    - `estimated_fulfillment_date_status` (enum, optional)
      - Allowed values: `AwaitingInventoryAllocation`, `AwaitingReset`, `Unavailable`, `PendingOnTime`, `FulfilledOnTime`, `PendingLate`, `FulfilledLate`
    - `gift_message` (string, optional, nullable) — Gift message associated with the shipment
    - `id` (integer, optional) — Unique id of the shipment
    - `insurance_value` (double, optional, nullable) — Monetary amount that this shipment was insured for
    - `invoice_amount` (double, optional, nullable) — Monetary amount that was invoiced for this shipment
    - `invoice_currency_code` (string, optional, nullable)
    - `is_tracking_uploaded` (boolean, optional) — Indicates whether the Shipment was marked with tracking information uploaded to a third-party system where the order originated.
    - `last_tracking_update_at` (datetime, optional, nullable) — Timestamp for the last time this shipment had a tracking update
    - `last_update_at` (datetime, optional, nullable) — Date this shipment was last updated
    - `location` (object, optional) — Information about a fulfillment center that a shipment can belong to
      - `id` (integer, optional) — Id of the fulfillment center
      - `name` (string, optional, nullable) — Name of the fulfillment center
    - `measurements` (object, optional) — Measurements of a shipment
      - `depth_in` (integer, optional) — Total depth in inches
      - `length_in` (integer, optional) — Total length in inches
      - `total_weight_oz` (integer, optional) — Total weight in ounces
      - `width_in` (integer, optional) — Total width in inches
    - `order_id` (integer, optional) — Id of the order this shipment belongs to
    - `package_material_type` (enum, optional)
      - Allowed values: `Unknown`, `Box`, `BubbleMailer`, `PolyMailer`, `FragileBox`, `PosterTube`, `Custom`, `Bookfold`, `OwnContainer`, `Undefined`
    - `parent_cartons` (list of object, optional, nullable) — Carton information for this shipment
      - `barcode` (string, optional, nullable) — Barcode assigned to this carton
      - `cartons` (list of object, optional, nullable) — Cartons packed inside this parent container
        - `barcode` (string, optional, nullable) — Barcode assigned to this carton
        - `carton_details` (list of object, optional, nullable) — Details about the contents of this carton
          - `products` (list of object, optional, nullable) — List of what is packed in this carton
            - `id` (integer, optional) — Unique id of the product
            - `inventory_items` (list of object, optional, nullable) — Information about fulfillable inventory items belonging to this product
            - `name` (string, optional, nullable) — Name of the product
            - `reference_id` (string, optional, nullable) — Unique reference id of the product
            - `sku` (string, optional, nullable) — Stock keeping unit for the product
        - `id` (integer, optional) — ID assigned to this carton
        - `measurements` (object, optional) — Measurements of a carton
          - `depth_in` (double, optional) — Total depth in inches
          - `length_in` (double, optional) — Total length in inches
          - `total_weight_oz` (double, optional) — Total weight in ounces
          - `width_in` (double, optional) — Total width in inches
        - `type` (string, optional, nullable) — Type of this carton container
      - `measurements` (object, optional) — Measurements of a carton
        - `depth_in` (double, optional) — Total depth in inches
        - `length_in` (double, optional) — Total length in inches
        - `total_weight_oz` (double, optional) — Total weight in ounces
        - `width_in` (double, optional) — Total width in inches
      - `type` (string, optional, nullable) — Type of this carton container
    - `products` (list of object, optional, nullable) — Information about the products contained in this shipment
      - `id` (integer, optional) — Unique id of the product
      - `inventory_items` (list of object, optional, nullable) — Information about fulfillable inventory items belonging to this product
        - `expiration_date` (datetime, optional, nullable) — Expiration date of the inventory
        - `id` (integer, optional) — Unique id of the inventory
        - `is_dangerous_goods` (boolean, optional) — Is inventory Dangerous Good
        - `lot` (string, optional, nullable) — Lot number of the inventory
        - `name` (string, optional, nullable) — Name of the inventory item
        - `quantity` (integer, optional) — Quantity of the inventory item to be included in the fulfillment
        - `quantity_committed` (integer, optional) — The quantity of the inventory item allocated from the assigned fulfillment center and committed to the order. If quantity committed is less than order quantity, then the inventory item is out of stock at the assigned fulfillment center.
        - `serial_numbers` (list of string, optional, nullable) — Serial number of the inventory
      - `name` (string, optional, nullable) — Name of the product
      - `reference_id` (string, optional, nullable) — Unique reference id of the product
      - `sku` (string, optional, nullable) — Stock keeping unit for the product
    - `recipient` (object, optional) — Information about the recipient of a shipment
      - `address` (object or object, optional, nullable) — Address of the recipient
        - Orders.AddressViewModel
          - `address1` (string, required) — First line of the address
          - `city` (string, required) — The city
          - `country` (string, required) — The country (Must be ISO Alpha-2 for estimates)
          - `address2` (string, optional, nullable) — Second line of the address
          - `company_name` (string, optional, nullable) — Name of the company receiving the shipment
          - `state` (string, optional, nullable) — The state or province
          - `zip_code` (string, optional, nullable) — The zip code or postal code
        - Orders.RetailerProgramDataAddressViewModel
          - `address1` (string, required) — First line of the address
          - `city` (string, required) — The city
          - `country` (string, required) — The country (Must be ISO Alpha-2 for estimates)
          - `type` (enum, required)
            - Allowed values: `MarkFor`, `ShipFrom`
          - `address2` (string, optional, nullable) — Second line of the address
          - `company_name` (string, optional, nullable) — Name of the company receiving the shipment
          - `state` (string, optional, nullable) — The state or province
          - `zip_code` (string, optional, nullable) — The zip code or postal code
      - `email` (string, optional, nullable) — Email address of the recipient
      - `full_name` (string, optional, nullable) — FullName of the recipient
      - `name` (string, optional, nullable) — Name of the recipient
      - `phone_number` (string, optional, nullable) — Phone number of the recipient
    - `reference_id` (string, optional, nullable) — Client-defined external unique id of the order this shipment belongs to
    - `require_signature` (boolean, optional) — If a shipment requires signature
    - `ship_option` (string, optional, nullable) — Name of the shipping option used for this shipment
    - `status` (enum, optional)
      - Allowed values: `None`, `Processing`, `Completed`, `Exception`, `OnHold`, `Cancelled`, `CleanSweeped`, `LabeledCreated`, `ImportReview`
    - `status_details` (list of object, optional, nullable) — Additional details about the shipment status
      - `description` (string, optional, nullable) — Describes what the status detail means
      - `exception_fulfillment_center_id` (integer, optional, nullable)
      - `extra_information` (object, optional)
        - `validation_messages` (list of string, optional, nullable)
      - `id` (integer, optional) — The id of the status detail
      - `inventory_id` (integer, optional, nullable) — Inventory Id the detail applies to (if applicable)
      - `name` (string, optional, nullable) — Short name of the status detail
    - `tracking` (object, optional) — Tracking information for a shipment
      - `bol` (string, optional, nullable) — Bill of lading (BOL) number. Document acknowledging receipt of cargo for shipment.
      - `carrier` (string, optional, nullable) — Carrier of the shipment
      - `carrier_service` (string, optional, nullable) — The carrier's service which was used for this shipment
      - `pro_number` (string, optional, nullable) — Tracking number used for freight carriers
      - `scac` (string, optional, nullable) — Standard Carrier Alpha Code (SCAC). Unique 2-4 letter code used to identify transportation companies.
      - `shipping_date` (datetime, optional, nullable) — Date freight was shipped on
      - `tracking_number` (string, optional, nullable) — Tracking number of the shipment
      - `tracking_url` (string, optional, nullable) — URL to the website where a shipment can be tracked
  - Orders.InternalShipmentViewModel
    - `actual_fulfillment_date` (datetime, optional, nullable) — The datetime of ShipBob’s completion of the fulfillment operation as promised. Currently, this means the shipment has been picked, packed, and label has been printed.
    - `created_date` (datetime, optional) — Date this shipment was created
    - `delivery_date` (datetime, optional, nullable) — The datetime of Shipment delivered to customer.
    - `estimated_fulfillment_date` (datetime, optional, nullable) — The datetime of ShipBob’s commitment for completing the shipment and handing to the carrier for delivery.
    - `estimated_fulfillment_date_status` (enum, optional)
      - Allowed values: `AwaitingInventoryAllocation`, `AwaitingReset`, `Unavailable`, `PendingOnTime`, `FulfilledOnTime`, `PendingLate`, `FulfilledLate`
    - `gift_message` (string, optional, nullable) — Gift message associated with the shipment
    - `id` (integer, optional) — Unique id of the shipment
    - `insurance_value` (double, optional, nullable) — Monetary amount that this shipment was insured for
    - `invoice_amount` (double, optional, nullable) — Monetary amount that was invoiced for this shipment
    - `invoice_currency_code` (string, optional, nullable)
    - `is_tracking_uploaded` (boolean, optional) — Indicates whether the Shipment was marked with tracking information uploaded to a third-party system where the order originated.
    - `last_tracking_update_at` (datetime, optional, nullable) — Timestamp for the last time this shipment had a tracking update
    - `last_update_at` (datetime, optional, nullable) — Date this shipment was last updated
    - `location` (object, optional) — Information about a fulfillment center that a shipment can belong to
      - `id` (integer, optional) — Id of the fulfillment center
      - `name` (string, optional, nullable) — Name of the fulfillment center
    - `measurements` (object, optional) — Measurements of a shipment
      - `depth_in` (integer, optional) — Total depth in inches
      - `length_in` (integer, optional) — Total length in inches
      - `total_weight_oz` (integer, optional) — Total weight in ounces
      - `width_in` (integer, optional) — Total width in inches
    - `order_id` (integer, optional) — Id of the order this shipment belongs to
    - `package_material_type` (enum, optional)
      - Allowed values: `Unknown`, `Box`, `BubbleMailer`, `PolyMailer`, `FragileBox`, `PosterTube`, `Custom`, `Bookfold`, `OwnContainer`, `Undefined`
    - `parent_cartons` (list of object, optional, nullable) — Carton information for this shipment
      - `barcode` (string, optional, nullable) — Barcode assigned to this carton
      - `cartons` (list of object, optional, nullable) — Cartons packed inside this parent container
        - `barcode` (string, optional, nullable) — Barcode assigned to this carton
        - `carton_details` (list of object, optional, nullable) — Details about the contents of this carton
          - `products` (list of object, optional, nullable) — List of what is packed in this carton
            - `id` (integer, optional) — Unique id of the product
            - `inventory_items` (list of object, optional, nullable) — Information about fulfillable inventory items belonging to this product
            - `name` (string, optional, nullable) — Name of the product
            - `reference_id` (string, optional, nullable) — Unique reference id of the product
            - `sku` (string, optional, nullable) — Stock keeping unit for the product
        - `id` (integer, optional) — ID assigned to this carton
        - `measurements` (object, optional) — Measurements of a carton
          - `depth_in` (double, optional) — Total depth in inches
          - `length_in` (double, optional) — Total length in inches
          - `total_weight_oz` (double, optional) — Total weight in ounces
          - `width_in` (double, optional) — Total width in inches
        - `type` (string, optional, nullable) — Type of this carton container
      - `measurements` (object, optional) — Measurements of a carton
        - `depth_in` (double, optional) — Total depth in inches
        - `length_in` (double, optional) — Total length in inches
        - `total_weight_oz` (double, optional) — Total weight in ounces
        - `width_in` (double, optional) — Total width in inches
      - `type` (string, optional, nullable) — Type of this carton container
    - `products` (list of object, optional, nullable) — Information about the products contained in this shipment
      - `id` (integer, optional) — Unique id of the product
      - `inventory_items` (list of object, optional, nullable) — Information about fulfillable inventory items belonging to this product
        - `expiration_date` (datetime, optional, nullable) — Expiration date of the inventory
        - `id` (integer, optional) — Unique id of the inventory
        - `is_dangerous_goods` (boolean, optional) — Is inventory Dangerous Good
        - `lot` (string, optional, nullable) — Lot number of the inventory
        - `name` (string, optional, nullable) — Name of the inventory item
        - `quantity` (integer, optional) — Quantity of the inventory item to be included in the fulfillment
        - `quantity_committed` (integer, optional) — The quantity of the inventory item allocated from the assigned fulfillment center and committed to the order. If quantity committed is less than order quantity, then the inventory item is out of stock at the assigned fulfillment center.
        - `serial_numbers` (list of string, optional, nullable) — Serial number of the inventory
      - `name` (string, optional, nullable) — Name of the product
      - `reference_id` (string, optional, nullable) — Unique reference id of the product
      - `sku` (string, optional, nullable) — Stock keeping unit for the product
    - `recipient` (object, optional) — Information about the recipient of a shipment
      - `address` (object or object, optional, nullable) — Address of the recipient
        - Orders.AddressViewModel
          - `address1` (string, required) — First line of the address
          - `city` (string, required) — The city
          - `country` (string, required) — The country (Must be ISO Alpha-2 for estimates)
          - `address2` (string, optional, nullable) — Second line of the address
          - `company_name` (string, optional, nullable) — Name of the company receiving the shipment
          - `state` (string, optional, nullable) — The state or province
          - `zip_code` (string, optional, nullable) — The zip code or postal code
        - Orders.RetailerProgramDataAddressViewModel
          - `address1` (string, required) — First line of the address
          - `city` (string, required) — The city
          - `country` (string, required) — The country (Must be ISO Alpha-2 for estimates)
          - `type` (enum, required)
            - Allowed values: `MarkFor`, `ShipFrom`
          - `address2` (string, optional, nullable) — Second line of the address
          - `company_name` (string, optional, nullable) — Name of the company receiving the shipment
          - `state` (string, optional, nullable) — The state or province
          - `zip_code` (string, optional, nullable) — The zip code or postal code
      - `email` (string, optional, nullable) — Email address of the recipient
      - `full_name` (string, optional, nullable) — FullName of the recipient
      - `name` (string, optional, nullable) — Name of the recipient
      - `phone_number` (string, optional, nullable) — Phone number of the recipient
    - `reference_id` (string, optional, nullable) — Client-defined external unique id of the order this shipment belongs to
    - `require_signature` (boolean, optional) — If a shipment requires signature
    - `ship_option` (string, optional, nullable) — Name of the shipping option used for this shipment
    - `status` (enum, optional)
      - Allowed values: `None`, `Processing`, `Completed`, `Exception`, `OnHold`, `Cancelled`, `CleanSweeped`, `LabeledCreated`, `ImportReview`
    - `status_details` (list of object, optional, nullable) — Additional details about the shipment status
      - `description` (string, optional, nullable) — Describes what the status detail means
      - `exception_fulfillment_center_id` (integer, optional, nullable)
      - `extra_information` (object, optional)
        - `validation_messages` (list of string, optional, nullable)
      - `id` (integer, optional) — The id of the status detail
      - `inventory_id` (integer, optional, nullable) — Inventory Id the detail applies to (if applicable)
      - `name` (string, optional, nullable) — Short name of the status detail
    - `store_order_id` (string, optional, nullable) — Unique store order id of the shipment
    - `tracking` (object, optional) — Tracking information for a shipment
      - `bol` (string, optional, nullable) — Bill of lading (BOL) number. Document acknowledging receipt of cargo for shipment.
      - `carrier` (string, optional, nullable) — Carrier of the shipment
      - `carrier_service` (string, optional, nullable) — The carrier's service which was used for this shipment
      - `pro_number` (string, optional, nullable) — Tracking number used for freight carriers
      - `scac` (string, optional, nullable) — Standard Carrier Alpha Code (SCAC). Unique 2-4 letter code used to identify transportation companies.
      - `shipping_date` (datetime, optional, nullable) — Date freight was shipped on
      - `tracking_number` (string, optional, nullable) — Tracking number of the shipment
      - `tracking_url` (string, optional, nullable) — URL to the website where a shipment can be tracked

## Examples

**Response**

```json
{
  "actual_fulfillment_date": "2019-08-24T14:15:22Z",
  "created_date": "2019-08-24T14:15:22Z",
  "delivery_date": "2019-08-24T14:15:22Z",
  "estimated_fulfillment_date": "2019-08-24T14:15:22Z",
  "estimated_fulfillment_date_status": "AwaitingInventoryAllocation",
  "gift_message": "string",
  "id": 0,
  "insurance_value": 0,
  "invoice_amount": 0,
  "invoice_currency_code": "string",
  "is_tracking_uploaded": true,
  "last_tracking_update_at": "2019-08-24T14:15:22Z",
  "last_update_at": "2019-08-24T14:15:22Z",
  "location": {
    "id": 0,
    "name": "Cicero (IL)"
  },
  "measurements": {
    "depth_in": 0,
    "length_in": 0,
    "total_weight_oz": 0,
    "width_in": 0
  },
  "order_id": 0,
  "package_material_type": "Unknown",
  "parent_cartons": [
    {
      "barcode": "string",
      "cartons": [
        {
          "barcode": "string",
          "carton_details": [
            {
              "products": [
                {
                  "id": 0,
                  "inventory_items": [
                    {
                      "expiration_date": "2019-08-24T14:15:22Z",
                      "id": 0,
                      "is_dangerous_goods": true,
                      "lot": "22222",
                      "name": "Medium Blue T-Shirt",
                      "quantity": 0,
                      "quantity_committed": 0,
                      "serial_numbers": [
                        "string"
                      ]
                    }
                  ],
                  "name": "Medium Blue T-Shirt",
                  "reference_id": "TShirtBlueM",
                  "sku": "TShirtBlueM"
                }
              ]
            }
          ],
          "id": 0,
          "measurements": {
            "depth_in": 0.1,
            "length_in": 0.1,
            "total_weight_oz": 0.1,
            "width_in": 0.1
          },
          "type": "Box or pallet"
        }
      ],
      "measurements": {
        "depth_in": 0.1,
        "length_in": 0.1,
        "total_weight_oz": 0.1,
        "width_in": 0.1
      },
      "type": "Box or pallet"
    }
  ],
  "products": [
    {
      "id": 0,
      "inventory_items": [
        {
          "expiration_date": "2019-08-24T14:15:22Z",
          "id": 0,
          "is_dangerous_goods": true,
          "lot": "22222",
          "name": "Medium Blue T-Shirt",
          "quantity": 0,
          "quantity_committed": 0,
          "serial_numbers": [
            "string"
          ]
        }
      ],
      "name": "Medium Blue T-Shirt",
      "reference_id": "TShirtBlueM",
      "sku": "TShirtBlueM"
    }
  ],
  "recipient": {
    "address": {
      "address1": "100 Nowhere Blvd",
      "address2": "Suite 100",
      "city": "Gotham City",
      "company_name": "Wayne Enterprises",
      "country": "US",
      "state": "NJ",
      "zip_code": "07093"
    },
    "email": "john@example.com",
    "full_name": "John Doe",
    "name": "John Doe",
    "phone_number": "555-555-5555"
  },
  "reference_id": "string",
  "require_signature": true,
  "ship_option": "Standard",
  "status": "None",
  "status_details": [
    {
      "description": "string",
      "exception_fulfillment_center_id": 0,
      "extra_information": {
        "validation_messages": [
          "string"
        ]
      },
      "id": 0,
      "inventory_id": 0,
      "name": "string"
    }
  ],
  "tracking": {
    "bol": "string",
    "carrier": "USPS",
    "carrier_service": "Priority",
    "pro_number": "string",
    "scac": "string",
    "shipping_date": "2019-08-24T14:15:22Z",
    "tracking_number": "860C8CDC8F0B4FC7AB69AC86C20539EC",
    "tracking_url": "https://www.example.com/tracking?id=860C8CDC8F0B4FC7AB69AC86C20539EC"
  }
}
```

**SDK Code**

```python Orders_getOneShipmentByShipmentId_example
import requests

url = "https://api.shipbob.com/1.0/shipment/shipmentId"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.json())
```

```javascript Orders_getOneShipmentByShipmentId_example
const url = 'https://api.shipbob.com/1.0/shipment/shipmentId';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go Orders_getOneShipmentByShipmentId_example
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.shipbob.com/1.0/shipment/shipmentId"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby Orders_getOneShipmentByShipmentId_example
require 'uri'
require 'net/http'

url = URI("https://api.shipbob.com/1.0/shipment/shipmentId")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
```

```java Orders_getOneShipmentByShipmentId_example
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.shipbob.com/1.0/shipment/shipmentId")
  .header("Authorization", "Bearer <token>")
  .asString();
```

```php Orders_getOneShipmentByShipmentId_example
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.shipbob.com/1.0/shipment/shipmentId', [
  'headers' => [
    'Authorization' => 'Bearer <token>',
  ],
]);

echo $response->getBody();
```

```csharp Orders_getOneShipmentByShipmentId_example
using RestSharp;

var client = new RestClient("https://api.shipbob.com/1.0/shipment/shipmentId");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token>");
IRestResponse response = client.Execute(request);
```

```swift Orders_getOneShipmentByShipmentId_example
import Foundation

let headers = ["Authorization": "Bearer <token>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.shipbob.com/1.0/shipment/shipmentId")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```