ShipBob Component
Shipbob offers an end to end fulfillment services for Ecommerce vendors.
Component key: shipbob · Changelog ↓Description
Shipbob offers an end to end fulfillment services for Ecommerce vendors.
Use the Shipbob component to manage orders, shipments, labels, and more.
Connections
ShipBob Personal Access Token
key: apiTokenIf you're building a single-user custom integration, you can use the Personal Access Token (PAT) method. This generates a ready-to-use bearer-type token with full access to the merchant's account.
You can generate credentials from the ShipBob dashboard.
For Production Environment, click here. For Sandbox Environment, click here.
When you request your first PAT, ShipBob automatically generates an application (called "SMA" or single-merchant application) and channel to house all your future PATs. You can request as many as you like, and revoke them at any time.
NOTE: These tokens do not expire, so be extremely cautious when sharing them.
Your PAT should automatically have read and write access to the entire ShipBob account.
To use your PAT, just provide the token as an Authorization header formatted like this:
bearer [your_api_token]
First you should use your PAT to hit the GET Channel endpoint, so you can use your channel ID in the headers of subsequent API calls. Your response will look like this:
| Input | Notes | Example |
|---|---|---|
| Personal Access Token | Log in to https://web.shipbob.com/app/merchant/#/Integrations/token-management to fetch a personal access token for development purposes |
Triggers
Webhook
Receive and validate webhook requests from ShipBob for webhooks you configure. | key: webhook
Event Topic Subscription
Get notified when a specific event occurs | key: eventTopicSubscription
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Overwrite Webhook Settings | When true, deletes existing webhook settings pointing to this flow's URL and creates new ones | false |
| Topics to Subscribe | List of webhook topics to subscribe to | ["order_shipped", "order_cancelled"] |
| Version | The version of the ShipBob API to use | 1.0 |
ShipBob can send webhook notifications when specific events occur, such as when an order is shipped or a shipment is delivered. This trigger automatically manages webhook subscriptions in ShipBob based on the selected event topics.
For more details on available webhook topics, refer to the ShipBob Webhooks documentation.
How It Works
This trigger automatically manages webhook subscriptions throughout the instance lifecycle. Unlike manual webhook setups, the entire lifecycle is handled automatically.
- On Instance Deploy: The trigger creates webhook subscriptions in ShipBob for each selected topic, pointing to the flow's unique webhook URL. If subscriptions for the same URL already exist and Overwrite Webhook Settings is enabled, the existing subscriptions are deleted and recreated. If existing subscriptions are found and overwrite is disabled, deployment fails with an error.
- On Instance Deletion: The trigger removes all webhook subscriptions in ShipBob that point to the flow's webhook URL.
Configuration
Configure the following inputs:
- Connection: The ShipBob connection to use for API authentication.
- Version: The ShipBob API version (default:
1.0). - Topics to Subscribe: Select one or more event topics to receive notifications for. Each topic creates a separate webhook subscription. Duplicate topics are not allowed.
- Overwrite Webhook Settings: When enabled, deletes existing webhook subscriptions pointing to the flow's URL and creates new ones. When disabled (default), deployment fails if subscriptions already exist for the flow's URL.
Event Types
Available Topics (5)
| Topic | Description |
|---|---|
order_shipped | Fires when an order has been shipped |
shipment_delivered | Fires when a shipment has been delivered |
shipment_exception | Fires when a shipment encounters an exception |
shipment_onhold | Fires when a shipment is placed on hold |
shipment_cancelled | Fires when a shipment is cancelled |
Refer to the ShipBob Webhooks documentation for the complete and up-to-date list of available topics.
Returned Data
The trigger validates incoming webhook requests by checking for the shipbob-subscription-id and shipbob-topic headers. These headers are included in the response along with the parsed JSON payload.
Example Payload
{
"headers": {
"shipbob-subscription-id": "12345",
"shipbob-topic": "order_shipped"
},
"body": {
"id": 67890,
"order_id": 11111,
"tracking_number": "1Z999AA10123456784",
"carrier": "UPS",
"shipped_date": "2024-01-15T10:30:00Z"
}
}
Notes
- Each selected topic creates a separate webhook subscription in ShipBob. Selecting multiple topics results in multiple subscriptions, all pointing to the same flow URL.
- Duplicate topics in the subscription list are not allowed and will cause deployment to fail.
- The trigger validates that incoming requests contain valid ShipBob headers (
shipbob-subscription-idandshipbob-topic) before processing.
Data Sources
Fetch Fulfillment Centers
Fetch an array of Fulfillment Centers | key: fulfillmentCenters | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
{
"result": [
{
"label": "Cicero (IL)",
"key": "0"
},
{
"label": "5900 W Ogden Ave Suite 100 / USA, IL, Cicero",
"key": "47012"
}
]
}
Fetch Inventory
Fetch an array of Inventories | key: inventory | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
{
"result": [
{
"label": "TShirtBlueM",
"key": "0"
},
{
"label": "Medium Blue T-Shirt",
"key": "47012"
}
]
}
Fetch Locations
Fetch an array of locations | key: locations | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
{
"result": [
{
"label": "Cicero (IL)",
"key": "0"
},
{
"label": "Other",
"key": "47012"
}
]
}
Fetch Products
Fetch an array of Products | key: products | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
{
"result": [
{
"label": "TShirtBlueM",
"key": "0"
},
{
"label": "Other",
"key": "47012"
}
]
}
Select Channel
Select a channel from your ShipBob account. | key: selectChannel | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
{
"result": [
{
"label": "My Store",
"key": "12345"
},
{
"label": "Shopify Channel",
"key": "67890"
}
]
}
Select Order
Select an order from your ShipBob account. | key: selectOrder | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
{
"result": [
{
"label": "ORD-001",
"key": "12345"
},
{
"label": "ORD-002",
"key": "67890"
}
]
}
Select Receiving Order
Select a warehouse receiving order from your ShipBob account. | key: selectReceivingOrder | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
{
"result": [
{
"label": "PO-12345",
"key": "100"
},
{
"label": "WRO 200 (Processing)",
"key": "200"
}
]
}
Select Webhook
Select a webhook from your ShipBob account. | key: selectWebhook | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
{
"result": [
{
"label": "order_shipped - https://example.com/webhook",
"key": "12345"
},
{
"label": "shipment_delivered - https://example.com/webhook2",
"key": "67890"
}
]
}
Actions
Cancel Order
Cancel an existing Order by Order ID | key: cancelOrder
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Order ID | The order ID to retrieve | 123456789 |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"order_id": 11587429,
"status": "Success",
"canceled_shipment_results": [
{
"shipment_id": 33045821,
"action": "Cancel",
"is_success": true,
"reason": "Order canceled successfully"
}
],
"order": {
"id": 11587429,
"order_number": "ORD-20240615-0042",
"reference_id": "ext-order-98712",
"status": "Processing",
"type": "DTC",
"created_date": "2024-06-15T14:22:00Z",
"purchase_date": "2024-06-15T14:18:45Z",
"channel": {
"id": 48291,
"name": "House of Slippers"
},
"recipient": {
"name": "Jane Smith",
"email": "jane.smith@example.com",
"phone_number": "+15551234567",
"address": {
"address1": "456 Oak Avenue",
"address2": "Suite 200",
"city": "Chicago",
"state": "IL",
"country": "US",
"zip_code": "60601",
"company_name": null
}
},
"products": [
{
"id": 29187456,
"reference_id": "TShirtBlueM",
"sku": "TShirtBlueM",
"gtin": "012345678905",
"upc": "012345678912",
"quantity": 2,
"unit_price": 20.32,
"external_line_id": null,
"quantity_unit_of_measure_code": null
}
],
"shipments": [],
"financials": {
"total_price": 40.64
},
"gift_message": null,
"shipping_method": "Standard",
"shipping_terms": {
"carrier_type": null,
"payment_term": null
},
"retailer_program_data": null,
"tags": [
{
"name": "priority",
"value": "normal"
}
]
}
}
}
Cancel Shipments
Cancel multiple Shipments by Shipment ID | key: cancelShipment
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Shipment IDs | List of shipment IDs to cancel | ["789012", "789013", "789014"] |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"results": [
{
"shipment_id": 33045821,
"action": "Cancel",
"is_success": true,
"reason": "Shipment successfully cancelled"
}
]
}
}
Cancel Warehouse Receiving Order
Cancels a Warehouse Receiving Order by Order ID | key: cancelWarehouseReceivingOrder
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Receiving ID | ID of the receiving order | 345678 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": null
}
Create Order
Create a new Order | key: createOrder
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Financials | Sum of all line item prices, discounts, and taxes in USD | |
| Gift Message | Gift message to include with the order | Happy Birthday! Enjoy your gift! |
| Location ID | Desired fulfillment center location ID. If not specified, ShipBob will determine the location that fulfills this order | 12345 |
| Order Number | User-friendly order ID or store order number that will be shown on the Orders Page. If not provided, reference ID will be used | ORDER-12345 |
| Products | Products included in the order. Products identified by reference_id must also include the product name if there is no matching ShipBob product | |
| Purchase Date | Date this order was purchased by the end user (YYYY-MM-DD) | 2025-01-15 |
| Recipient | Information about the recipient of an order | |
| Reference ID | Unique and immutable order identifier from your upstream system | ORD-2025-001234 |
| Retailer Program Data | Retailer-specific program data for fulfilling orders | |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Shipping Method | Client-defined shipping method matching what the user has listed as the shipping method on the Ship Option Mapping setup page in the ShipBob Merchant Portal. If they don't match, a new one will be created and defaulted to Standard | Standard |
| Shipping Terms | Shipping properties to be used for fulfilling an order | |
| Tags | Key-value pairs to store extra information at the order level for API purposes. ShipBob won't display the info in the ShipBob Merchant Portal or react based on this data | {"priority": "high", "source": "shopify"} |
| Type | Order type. Options: DTC (Direct to Consumer), DropShip. Defaults to DTC if not provided. Note: B2B is not currently supported | DTC |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"id": 11587429,
"order_number": "ORD-20240615-0042",
"reference_id": "ext-order-98712",
"status": "Processing",
"type": "DTC",
"created_date": "2024-06-15T14:22:00Z",
"purchase_date": "2024-06-15T14:18:45Z",
"channel": {
"id": 48291,
"name": "House of Slippers"
},
"recipient": {
"name": "Jane Smith",
"email": "jane.smith@example.com",
"phone_number": "+15551234567",
"address": {
"address1": "456 Oak Avenue",
"address2": "Suite 200",
"city": "Chicago",
"state": "IL",
"country": "US",
"zip_code": "60601",
"company_name": null
}
},
"products": [
{
"id": 29187456,
"reference_id": "TShirtBlueM",
"sku": "TShirtBlueM",
"gtin": "012345678905",
"upc": "012345678912",
"quantity": 2,
"unit_price": 20.32,
"external_line_id": null,
"quantity_unit_of_measure_code": null
}
],
"shipments": [],
"financials": {
"total_price": 40.64
},
"gift_message": null,
"shipping_method": "Standard",
"shipping_terms": {
"carrier_type": null,
"payment_term": null
},
"retailer_program_data": null,
"tags": [
{
"name": "priority",
"value": "normal"
}
]
}
}
Create Warehouse Receiving Order
Create a new Warehouse Receiving Order | key: createWarehouseReceivingOrder
| Input | Notes | Example |
|---|---|---|
| Box Packaging Type | How items are packaged in boxes | OneSkuPerBox |
| Boxes | Box shipments to be added to this receiving order | |
| Connection | The ShipBob connection to use. | |
| Expected Arrival Date | Expected arrival date of all the box shipments in this receiving order (YYYY-MM-DD) | 2025-02-01 |
| Fulfillment Center | Information that assigns a receiving order to a fulfillment center. If the fulfillment center is in a receiving hub region, the response will be the receiving hub location | |
| Package Type | Type of package for the shipment | Package |
| Purchase Order Number | Purchase order number for this receiving order | PO-2025-12345 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"id": 5042781,
"purchase_order_number": "PO-2024-06-150042",
"status": "Awaiting",
"box_packaging_type": "OneSkuPerBox",
"package_type": "Package",
"expected_arrival_date": "2024-06-25T00:00:00Z",
"insert_date": "2024-06-15T11:30:00Z",
"last_updated_date": "2024-06-15T11:30:00Z",
"box_labels_uri": null,
"fulfillment_center": {
"id": 5,
"name": "Cicero (IL)",
"address1": "4415 S Sacramento Ave",
"address2": null,
"city": "Chicago",
"state": "IL",
"zip_code": "60632",
"country": "US",
"phone_number": "+13125551234",
"email": "cicero-fc@shipbob.com",
"timezone": "America/Chicago"
},
"boxes": [
{
"box_id": 982341,
"box_number": 1,
"box_status": "Awaiting",
"tracking_number": "1Z999AA10123456790",
"arrived_date": null,
"received_date": null,
"counting_started_date": null,
"box_items": [
{
"inventory_id": 78234,
"quantity": 100,
"received_quantity": 0,
"lot_number": "LOT-2024-0618",
"lot_date": "2025-12-31T00:00:00Z"
}
]
}
]
}
}
Create Webhook
Creates a new Webhook | key: createWebhook
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Subscription URL | URL to call when an event matching the subscription topic is raised. Must have SSL enabled (https) and accept POST requests with content type application/json | https://example.com/webhook/shipbob |
| Topic | Topic of the webhook to subscribe to | order_shipped |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"id": 74219,
"topic": "order_shipped",
"subscription_url": "https://hooks.example.com/shipbob/order-shipped",
"created_at": "2024-06-10T09:15:00Z"
}
}
Delete All Instanced Webhooks
Delete all webhooks that point to a flow in this instance | key: deleteAllWebhooks
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"subscriptionsRemoved": [
74219,
74220
]
}
}
Delete Webhook
Delete a Webhook by Webhook ID | key: deleteWebhook
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
| Webhook ID | ID of the webhook | 234567 |
{
"data": null
}
Get a list of Inventory Items by Product ID
Retrieve a list of Inventory Items by their Product ID | key: listByProductId
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Product ID | The product ID to retrieve | 987654 |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": [
{
"id": 78234,
"name": "Medium Blue T-Shirt",
"is_digital": false,
"is_case_pick": false,
"is_lot": true,
"is_active": true,
"packaging_attribute": "None",
"dimensions": {
"weight": 8.5,
"length": 12,
"width": 10,
"depth": 2.5
},
"total_fulfillable_quantity": 480,
"total_onhand_quantity": 500,
"total_committed_quantity": 20,
"total_sellable_quantity": 480,
"total_awaiting_quantity": 50,
"total_exception_quantity": 0,
"total_internal_transfer_quantity": 0,
"total_backordered_quantity": 0,
"fulfillable_quantity_by_fulfillment_center": [
{
"id": 5,
"name": "Cicero (IL)",
"fulfillable_quantity": 280,
"onhand_quantity": 300,
"committed_quantity": 20,
"awaiting_quantity": 25,
"internal_transfer_quantity": 0
}
],
"fulfillable_quantity_by_lot": [
{
"lot_number": "LOT-2024-0618",
"expiration_date": "2025-12-31T00:00:00Z",
"fulfillable_quantity": 280,
"onhand_quantity": 300,
"committed_quantity": 20,
"awaiting_quantity": 25,
"internal_transfer_quantity": 0,
"fulfillable_quantity_by_fulfillment_center": [
{
"id": 5,
"name": "Cicero (IL)",
"fulfillable_quantity": 280,
"onhand_quantity": 300,
"committed_quantity": 20,
"awaiting_quantity": 25,
"internal_transfer_quantity": 0
}
]
}
]
}
]
}
Get All Shipments for Order
Retrieve all Shipments on an Order by Order ID | key: getAllShipmentsForOrder
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Order ID | The order ID to retrieve | 123456789 |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": [
{
"id": 33045821,
"order_id": 11587429,
"reference_id": "ext-order-98712",
"created_date": "2024-06-15T14:25:00Z",
"last_update_at": "2024-06-16T10:30:00Z",
"last_tracking_update_at": "2024-06-16T10:30:00Z",
"actual_fulfillment_date": "2024-06-16T08:00:00Z",
"estimated_fulfillment_date": "2024-06-17T00:00:00Z",
"delivery_date": null,
"estimated_fulfillment_date_status": "FulfilledOnTime",
"status": "Completed",
"gift_message": null,
"require_signature": false,
"is_tracking_uploaded": true,
"insurance_value": null,
"invoice_amount": 40.64,
"invoice_currency_code": "USD",
"ship_option": "Standard",
"package_material_type": "Box",
"location": {
"id": 5,
"name": "Cicero (IL)"
},
"recipient": {
"name": "Jane Smith",
"full_name": "Jane Smith",
"email": "jane.smith@example.com",
"phone_number": "+15551234567",
"address": {
"address1": "456 Oak Avenue",
"address2": "Suite 200",
"city": "Chicago",
"state": "IL",
"country": "US",
"zip_code": "60601",
"company_name": null
}
},
"tracking": {
"tracking_number": "1Z999AA10123456784",
"tracking_url": "https://www.ups.com/track?tracknum=1Z999AA10123456784",
"carrier": "UPS",
"carrier_service": "UPS Ground",
"shipping_date": "2024-06-16T08:00:00Z",
"bol": null,
"pro_number": null,
"scac": null
},
"measurements": {
"length_in": 12,
"width_in": 10,
"depth_in": 4,
"total_weight_oz": 18
},
"products": [
{
"id": 29187456,
"name": "Medium Blue T-Shirt",
"sku": "TShirtBlueM",
"reference_id": "TShirtBlueM",
"inventory_items": [
{
"id": 78234,
"name": "Medium Blue T-Shirt",
"quantity": 2,
"quantity_committed": 2,
"lot": "LOT-2024-0618",
"expiration_date": "2025-12-31T00:00:00Z",
"is_dangerous_goods": false,
"serial_numbers": null
}
]
}
],
"parent_cartons": [],
"status_details": []
}
]
}
Get Inventory Item
Get single inventory item by Inventory ID | key: getInventoryItem
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Inventory ID | The inventory ID to retrieve | 456789 |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"id": 78234,
"name": "Medium Blue T-Shirt",
"is_digital": false,
"is_case_pick": false,
"is_lot": true,
"is_active": true,
"packaging_attribute": "None",
"dimensions": {
"weight": 8.5,
"length": 12,
"width": 10,
"depth": 2.5
},
"total_fulfillable_quantity": 480,
"total_onhand_quantity": 500,
"total_committed_quantity": 20,
"total_sellable_quantity": 480,
"total_awaiting_quantity": 50,
"total_exception_quantity": 0,
"total_internal_transfer_quantity": 0,
"total_backordered_quantity": 0,
"fulfillable_quantity_by_fulfillment_center": [
{
"id": 5,
"name": "Cicero (IL)",
"fulfillable_quantity": 280,
"onhand_quantity": 300,
"committed_quantity": 20,
"awaiting_quantity": 25,
"internal_transfer_quantity": 0
}
],
"fulfillable_quantity_by_lot": [
{
"lot_number": "LOT-2024-0618",
"expiration_date": "2025-12-31T00:00:00Z",
"fulfillable_quantity": 280,
"onhand_quantity": 300,
"committed_quantity": 20,
"awaiting_quantity": 25,
"internal_transfer_quantity": 0,
"fulfillable_quantity_by_fulfillment_center": [
{
"id": 5,
"name": "Cicero (IL)",
"fulfillable_quantity": 280,
"onhand_quantity": 300,
"committed_quantity": 20,
"awaiting_quantity": 25,
"internal_transfer_quantity": 0
}
]
}
]
}
}
Get Logs for Shipment
Retrieve logs for a Shipment by Shipment ID | key: getLogsShipment
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Shipment ID | The shipment ID to retrieve | 789012 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": [
{
"log_type_id": 1,
"log_type_name": "ShipmentCreated",
"log_type_text": "Shipment was created",
"metadata": null,
"timestamp": "2024-06-15T14:25:00Z"
},
{
"log_type_id": 4,
"log_type_name": "ShipmentShipped",
"log_type_text": "Shipment has been shipped",
"metadata": {
"carrier": "UPS",
"tracking_number": "1Z999AA10123456784"
},
"timestamp": "2024-06-16T08:00:00Z"
}
]
}
Get Multiple Products
Retrieve a list of several Products | key: listProduct
| Input | Notes | Example |
|---|---|---|
| Active Status | Filter by active status | Active |
| Bundle Status | Filter by bundle status | NotBundle |
| Connection | The ShipBob connection to use. | |
| Order IDs | Comma separated list of product ids to filter by | 123456,789012,345678 |
| Limit | Number of orders per page to retrieve | 50 |
| Page | Page number of orders to retrieve | 1 |
| Reference IDs | Comma-separated list of reference IDs to filter by | REF-001,REF-002,REF-003 |
| Search | Search term to filter by Inventory ID or Name | Widget-A |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": [
{
"id": 29187456,
"reference_id": "TShirtBlueM",
"bundle_root_information": {
"id": 11042,
"name": "Blue T-Shirt Bundle"
},
"created_date": "2024-06-15T09:22:31Z",
"channel": {
"id": 48291,
"name": "House of Slippers"
},
"sku": "TShirtBlueM",
"name": "Medium Blue T-Shirt",
"barcode": "123456789012",
"gtin": "012345678905",
"upc": "012345678912",
"unit_price": 20.32,
"total_fulfillable_quantity": 480,
"total_onhand_quantity": 500,
"total_committed_quantity": 20,
"fulfillable_inventory_items": [
{
"id": 78234,
"name": "Medium Blue T-Shirt",
"quantity": 480
}
],
"fulfillable_quantity_by_fulfillment_center": [
{
"id": 5,
"name": "Cicero (IL)",
"onhand_quantity": 300,
"fulfillable_quantity": 280,
"committed_quantity": 20
}
]
}
]
}
Get Order
Retrieve an order by Order ID | key: getOrder
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Order ID | The order ID to retrieve | 123456789 |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"id": 11587429,
"order_number": "ORD-20240615-0042",
"reference_id": "ext-order-98712",
"status": "Processing",
"type": "DTC",
"created_date": "2024-06-15T14:22:00Z",
"purchase_date": "2024-06-15T14:18:45Z",
"channel": {
"id": 48291,
"name": "House of Slippers"
},
"recipient": {
"name": "Jane Smith",
"email": "jane.smith@example.com",
"phone_number": "+15551234567",
"address": {
"address1": "456 Oak Avenue",
"address2": "Suite 200",
"city": "Chicago",
"state": "IL",
"country": "US",
"zip_code": "60601",
"company_name": null
}
},
"products": [
{
"id": 29187456,
"reference_id": "TShirtBlueM",
"sku": "TShirtBlueM",
"gtin": "012345678905",
"upc": "012345678912",
"quantity": 2,
"unit_price": 20.32,
"external_line_id": null,
"quantity_unit_of_measure_code": null
}
],
"shipments": [],
"financials": {
"total_price": 40.64
},
"gift_message": null,
"shipping_method": "Standard",
"shipping_terms": {
"carrier_type": null,
"payment_term": null
},
"retailer_program_data": null,
"tags": [
{
"name": "priority",
"value": "normal"
}
]
}
}
Get Shipment
Retrieve a Shipment by Shipment ID | key: getShipment
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Shipment ID | The shipment ID to retrieve | 789012 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"id": 33045821,
"order_id": 11587429,
"reference_id": "ext-order-98712",
"created_date": "2024-06-15T14:25:00Z",
"last_update_at": "2024-06-16T10:30:00Z",
"last_tracking_update_at": "2024-06-16T10:30:00Z",
"actual_fulfillment_date": "2024-06-16T08:00:00Z",
"estimated_fulfillment_date": "2024-06-17T00:00:00Z",
"delivery_date": null,
"estimated_fulfillment_date_status": "FulfilledOnTime",
"status": "Completed",
"gift_message": null,
"require_signature": false,
"is_tracking_uploaded": true,
"insurance_value": null,
"invoice_amount": 40.64,
"invoice_currency_code": "USD",
"ship_option": "Standard",
"package_material_type": "Box",
"location": {
"id": 5,
"name": "Cicero (IL)"
},
"recipient": {
"name": "Jane Smith",
"full_name": "Jane Smith",
"email": "jane.smith@example.com",
"phone_number": "+15551234567",
"address": {
"address1": "456 Oak Avenue",
"address2": "Suite 200",
"city": "Chicago",
"state": "IL",
"country": "US",
"zip_code": "60601",
"company_name": null
}
},
"tracking": {
"tracking_number": "1Z999AA10123456784",
"tracking_url": "https://www.ups.com/track?tracknum=1Z999AA10123456784",
"carrier": "UPS",
"carrier_service": "UPS Ground",
"shipping_date": "2024-06-16T08:00:00Z",
"bol": null,
"pro_number": null,
"scac": null
},
"measurements": {
"length_in": 12,
"width_in": 10,
"depth_in": 4,
"total_weight_oz": 18
},
"products": [
{
"id": 29187456,
"name": "Medium Blue T-Shirt",
"sku": "TShirtBlueM",
"reference_id": "TShirtBlueM",
"inventory_items": [
{
"id": 78234,
"name": "Medium Blue T-Shirt",
"quantity": 2,
"quantity_committed": 2,
"lot": "LOT-2024-0618",
"expiration_date": "2025-12-31T00:00:00Z",
"is_dangerous_goods": false,
"serial_numbers": null
}
]
}
],
"parent_cartons": [],
"status_details": []
}
}
Get Single Product
Retrieve a single product by Product ID | key: getProduct
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Product ID | The product ID to retrieve | 987654 |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"id": 29187456,
"reference_id": "TShirtBlueM",
"bundle_root_information": {
"id": 11042,
"name": "Blue T-Shirt Bundle"
},
"created_date": "2024-06-15T09:22:31Z",
"channel": {
"id": 48291,
"name": "House of Slippers"
},
"sku": "TShirtBlueM",
"name": "Medium Blue T-Shirt",
"barcode": "123456789012",
"gtin": "012345678905",
"upc": "012345678912",
"unit_price": 20.32,
"total_fulfillable_quantity": 480,
"total_onhand_quantity": 500,
"total_committed_quantity": 20,
"fulfillable_inventory_items": [
{
"id": 78234,
"name": "Medium Blue T-Shirt",
"quantity": 480
}
],
"fulfillable_quantity_by_fulfillment_center": [
{
"id": 5,
"name": "Cicero (IL)",
"onhand_quantity": 300,
"fulfillable_quantity": 280,
"committed_quantity": 20
}
]
}
}
Get Warehouse Receiving Order Box Labels
Retrieves Receiving Order Box Labels by Order ID | key: getWarehouseReceivingOrderBoxLabels
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Receiving ID | ID of the receiving order | 345678 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": null
}
Get Warehouse Receiving Orders
Receive a Warehouse Receiving Order by ID | key: getWarehouseReceivingOrders
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Receiving ID | ID of the receiving order | 345678 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"id": 5042781,
"purchase_order_number": "PO-2024-06-150042",
"status": "Awaiting",
"box_packaging_type": "OneSkuPerBox",
"package_type": "Package",
"expected_arrival_date": "2024-06-25T00:00:00Z",
"insert_date": "2024-06-15T11:30:00Z",
"last_updated_date": "2024-06-15T11:30:00Z",
"box_labels_uri": null,
"fulfillment_center": {
"id": 5,
"name": "Cicero (IL)",
"address1": "4415 S Sacramento Ave",
"address2": null,
"city": "Chicago",
"state": "IL",
"zip_code": "60632",
"country": "US",
"phone_number": "+13125551234",
"email": "cicero-fc@shipbob.com",
"timezone": "America/Chicago"
},
"boxes": [
{
"box_id": 982341,
"box_number": 1,
"box_status": "Awaiting",
"tracking_number": "1Z999AA10123456790",
"arrived_date": null,
"received_date": null,
"counting_started_date": null,
"box_items": [
{
"inventory_id": 78234,
"quantity": 100,
"received_quantity": 0,
"lot_number": "LOT-2024-0618",
"lot_date": "2025-12-31T00:00:00Z"
}
]
}
]
}
}
List Channels
List user-authorized channels info | key: listChannels
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": [
{
"id": 48291,
"name": "House of Slippers",
"application_name": "ShipBob Merchant",
"scopes": [
"orders_read",
"orders_write",
"inventory_read"
]
}
]
}
List Fulfillment Centers
Retrieves a list of Fulfillment Centers | key: listFulfillmentCenters
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": [
{
"id": 5,
"name": "Cicero (IL)",
"address1": "4415 S Sacramento Ave",
"address2": null,
"city": "Chicago",
"state": "IL",
"zip_code": "60632",
"country": "US",
"email": "cicero-fc@shipbob.com",
"phone_number": "+13125551234",
"timezone": "America/Chicago"
}
]
}
List Inventory Items
Retrieve a list of Inventory Items | key: listInventoryItems
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Order IDs | Comma-separated list of order IDs to filter by | 123456,789012,345678 |
| IsActive | When true, marks the inventory as active | false |
| IsDigital | When true, marks the inventory as digital (non-physical) | false |
| Limit | Number of orders per page to retrieve | 50 |
| Location Type | Location type to filter by. Options: hub, spoke, lts. Defaults to all locations if not specified | hub |
| Page | Page number of orders to retrieve | 1 |
| Search | Search term to filter by Inventory ID or Name | Widget-A |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Sort | Sort field(s) in ascending order (default). Prefix field with '-' for descending order. Example: -onHand,name sorts by onHand descending, then name ascending | -onHand,name |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": [
{
"id": 78234,
"name": "Medium Blue T-Shirt",
"is_digital": false,
"is_case_pick": false,
"is_lot": true,
"is_active": true,
"packaging_attribute": "None",
"dimensions": {
"weight": 8.5,
"length": 12,
"width": 10,
"depth": 2.5
},
"total_fulfillable_quantity": 480,
"total_onhand_quantity": 500,
"total_committed_quantity": 20,
"total_sellable_quantity": 480,
"total_awaiting_quantity": 50,
"total_exception_quantity": 0,
"total_internal_transfer_quantity": 0,
"total_backordered_quantity": 0,
"fulfillable_quantity_by_fulfillment_center": [
{
"id": 5,
"name": "Cicero (IL)",
"fulfillable_quantity": 280,
"onhand_quantity": 300,
"committed_quantity": 20,
"awaiting_quantity": 25,
"internal_transfer_quantity": 0
}
],
"fulfillable_quantity_by_lot": [
{
"lot_number": "LOT-2024-0618",
"expiration_date": "2025-12-31T00:00:00Z",
"fulfillable_quantity": 280,
"onhand_quantity": 300,
"committed_quantity": 20,
"awaiting_quantity": 25,
"internal_transfer_quantity": 0,
"fulfillable_quantity_by_fulfillment_center": [
{
"id": 5,
"name": "Cicero (IL)",
"fulfillable_quantity": 280,
"onhand_quantity": 300,
"committed_quantity": 20,
"awaiting_quantity": 25,
"internal_transfer_quantity": 0
}
]
}
]
}
]
}
List Locations
Receives a list of the physical locations across a fulfillment network | key: listLocations
| Input | Notes | Example |
|---|---|---|
| Access Granted | When true, returns only locations with access granted | false |
| Connection | The ShipBob connection to use. | |
| Include Inactive | When true, includes inactive locations in the results | false |
| Receiving Enabled | When true, returns only receiving-enabled locations | false |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": [
{
"id": 5,
"name": "Cicero (IL)",
"abbreviation": "ORD1",
"is_active": true,
"is_receiving_enabled": true,
"is_shipping_enabled": true,
"access_granted": true,
"timezone": "America/Chicago",
"region": {
"id": 1,
"name": "United States"
},
"services": [
{
"service_type": "Receiving",
"enabled": true,
"address": {
"address1": "4415 S Sacramento Ave",
"address2": null,
"city": "Chicago",
"state": "IL",
"country": "US",
"zip_code": "60632",
"phone_number": "+13125551234",
"email": "cicero-fc@shipbob.com",
"name": "Cicero (IL)"
}
}
],
"attributes": []
}
]
}
List Orders
Retrieve all Orders | key: listOrders
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Delivery En Date | End date to filter orders with delivery date on or before this date (YYYY-MM-DD). Only returns orders with tracking information | 2025-12-31 |
| Delivery Start Date | Start date to filter orders with delivery date on or after this date (YYYY-MM-DD). Only returns orders with tracking information | 2025-01-01 |
| End Date | End date to filter orders inserted on or before this date (YYYY-MM-DD) | 2025-12-31 |
| Fulfillment End Date | End date to filter orders with fulfillment date on or before this date (YYYY-MM-DD). Only returns orders with tracking information | 2025-12-31 |
| Fulfillment Start Date | Start date to filter orders with fulfillment date on or after this date (YYYY-MM-DD). Only returns orders with tracking information | 2025-01-01 |
| Has Tracking | When true, filters to orders that have been assigned a tracking number | false |
| Order IDs | Comma-separated list of order IDs to filter by | 123456,789012,345678 |
| Is Tracking Uploaded | When true, filters to orders with tracking information fully uploaded | false |
| Last Tracking Update End Date | End date to filter orders with tracking updates on or before this date (YYYY-MM-DD). Only returns orders with tracking information | 2025-12-31 |
| Last Tracking Update Start Date | Start date to filter orders with tracking updates on or after this date (YYYY-MM-DD). Only returns orders with tracking information | 2025-01-01 |
| Last Update End Date | End date to filter orders updated on or before this date (YYYY-MM-DD) | 2025-12-31 |
| Last Update Start Date | Start date to filter orders updated on or after this date (YYYY-MM-DD) | 2025-01-01 |
| Limit | Number of orders per page to retrieve | 50 |
| Page | Page number of orders to retrieve | 1 |
| Reference IDs | Comma-separated list of reference IDs to filter by | REF-001,REF-002,REF-003 |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Sort Order | Order to sort results. Options: Newest, Oldest | Newest |
| Start Date | Start date to filter orders inserted on or after this date (YYYY-MM-DD) | 2025-01-01 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": [
{
"id": 11587429,
"order_number": "ORD-20240615-0042",
"reference_id": "ext-order-98712",
"status": "Processing",
"type": "DTC",
"created_date": "2024-06-15T14:22:00Z",
"purchase_date": "2024-06-15T14:18:45Z",
"channel": {
"id": 48291,
"name": "House of Slippers"
},
"recipient": {
"name": "Jane Smith",
"email": "jane.smith@example.com",
"phone_number": "+15551234567",
"address": {
"address1": "456 Oak Avenue",
"address2": "Suite 200",
"city": "Chicago",
"state": "IL",
"country": "US",
"zip_code": "60601",
"company_name": null
}
},
"products": [
{
"id": 29187456,
"reference_id": "TShirtBlueM",
"sku": "TShirtBlueM",
"gtin": "012345678905",
"upc": "012345678912",
"quantity": 2,
"unit_price": 20.32,
"external_line_id": null,
"quantity_unit_of_measure_code": null
}
],
"shipments": [],
"financials": {
"total_price": 40.64
},
"gift_message": null,
"shipping_method": "Standard",
"shipping_terms": {
"carrier_type": null,
"payment_term": null
},
"retailer_program_data": null,
"tags": [
{
"name": "priority",
"value": "normal"
}
]
}
]
}
List Warehouse Receiving Orders
Retrieve all Warehouse Receiving Orders | key: listWarehouseReceivingOrders
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Fulfillment Center IDs | List of WRO fulfillment center IDs to filter by | ["12345", "67890"] |
| Order IDs | Comma-separated list of order IDs to filter by | 123456,789012,345678 |
| Insert End Date | Latest date that a WRO was created (YYYY-MM-DD) | 2025-12-31 |
| Insert Start Date | Earliest date that a WRO was created (YYYY-MM-DD) | 2025-01-01 |
| Limit | Number of WROs per page to request | 50 |
| Page | Page of WROs to get | 1 |
| Purchase Order Numbers | List of WRO purchase order numbers to filter by | ["PO-12345", "PO-67890"] |
| Statuses | List of WRO statuses to filter by. Options: Awaiting, Processing, Completed, Cancelled, Incomplete, Arrived, PartiallyArrived | ["Processing", "Completed"] |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": [
{
"id": 5042781,
"purchase_order_number": "PO-2024-06-150042",
"status": "Awaiting",
"box_packaging_type": "OneSkuPerBox",
"package_type": "Package",
"expected_arrival_date": "2024-06-25T00:00:00Z",
"insert_date": "2024-06-15T11:30:00Z",
"last_updated_date": "2024-06-15T11:30:00Z",
"box_labels_uri": null,
"fulfillment_center": {
"id": 5,
"name": "Cicero (IL)",
"address1": "4415 S Sacramento Ave",
"address2": null,
"city": "Chicago",
"state": "IL",
"zip_code": "60632",
"country": "US",
"phone_number": "+13125551234",
"email": "cicero-fc@shipbob.com",
"timezone": "America/Chicago"
},
"boxes": [
{
"box_id": 982341,
"box_number": 1,
"box_status": "Awaiting",
"tracking_number": "1Z999AA10123456790",
"arrived_date": null,
"received_date": null,
"counting_started_date": null,
"box_items": [
{
"inventory_id": 78234,
"quantity": 100,
"received_quantity": 0,
"lot_number": "LOT-2024-0618",
"lot_date": "2025-12-31T00:00:00Z"
}
]
}
]
}
]
}
List Webhooks
Get a list of active Webhooks | key: listWebhooks
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Limit | Amount of Webhooks per page to request | 50 |
| Page | Page of Webhooks to get | 1 |
| Topic | Topic of the webhook to subscribe to | order_shipped |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": [
{
"id": 74219,
"topic": "order_shipped",
"subscription_url": "https://hooks.example.com/shipbob/order-shipped",
"created_at": "2024-06-10T09:15:00Z"
}
]
}
Raw Request
Send raw HTTP request to ShipBob | key: rawRequest
| Input | Notes | Example |
|---|---|---|
| Connection | The ShipBob connection to use. | |
| Data | The HTTP body payload to send to the URL. | {"exampleKey": "Example Data"} |
| File Data | File Data to be sent as a multipart form upload. | [{key: "example.txt", value: "My File Contents"}] |
| File Data File Names | File names to apply to the file data inputs. Keys must match the file data keys above. | |
| Form Data | The Form Data to be sent as a multipart form upload. | [{"key": "Example Key", "value": new Buffer("Hello World")}] |
| Header | A list of headers to send with the request. | User-Agent: curl/7.64.1 |
| Max Retry Count | The maximum number of retries to attempt. Specify 0 for no retries. | 0 |
| Method | The HTTP method to use. | |
| Query Parameter | A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2. | |
| Response Type | The type of data you expect in the response. You can request json, text, or binary data. | json |
| Retry On All Errors | If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors. | false |
| Retry Delay (ms) | The delay in milliseconds between retries. This is used when 'Use Exponential Backoff' is disabled. | 0 |
| Timeout | The maximum time that a client will await a response to its request | 2000 |
| URL | This is the URL to call. | Input the path only (/orders), The base URL is already included (https://api.shipbob.com/1.0). For example, to connect to https://api.shipbob.com/1.0/orders, only /orders is entered in this field. e.g. /orders |
| Use Exponential Backoff | Specifies whether to use a pre-defined exponential backoff strategy for retries. When enabled, 'Retry Delay (ms)' is ignored. | false |
| Version | The version of the ShipBob API to use | 1.0 |
Update Product
Update information on a single Product | key: updateProduct
| Input | Notes | Example |
|---|---|---|
| Barcode | Barcode for the product | 012345678901 |
| Connection | The ShipBob connection to use. | |
| GTIN | Global Trade Item Number - unique and internationally recognized identifier assigned to item by company GS1 | 00012345678905 |
| Name | The name of the product | Blue Widget Pro |
| Product ID | The product ID to retrieve | 987654 |
| ShipBob Channel ID | Channel ID for operation | 567890 |
| Sku | The stock keeping unit (SKU) of the product | SKU-WDG-BLU-001 |
| Unit Price | The price of one unit in USD | 29.99 |
| UPC | Universal Product Code (UPC) - unique external identifier | 012345678901 |
| Version | The version of the ShipBob API to use | 1.0 |
{
"data": {
"id": 29187456,
"reference_id": "TShirtBlueM",
"bundle_root_information": {
"id": 11042,
"name": "Blue T-Shirt Bundle"
},
"created_date": "2024-06-15T09:22:31Z",
"channel": {
"id": 48291,
"name": "House of Slippers"
},
"sku": "TShirtBlueM",
"name": "Medium Blue T-Shirt",
"barcode": "123456789012",
"gtin": "012345678905",
"upc": "012345678912",
"unit_price": 20.32,
"total_fulfillable_quantity": 480,
"total_onhand_quantity": 500,
"total_committed_quantity": 20,
"fulfillable_inventory_items": [
{
"id": 78234,
"name": "Medium Blue T-Shirt",
"quantity": 480
}
],
"fulfillable_quantity_by_fulfillment_center": [
{
"id": 5,
"name": "Cicero (IL)",
"onhand_quantity": 300,
"fulfillable_quantity": 280,
"committed_quantity": 20
}
]
}
}
Changelog
2026-04-10
Updated example payloads
2026-04-07
Added trigger documentation and global debug support across all actions for improved troubleshooting
2026-03-31
Various modernizations and documentation updates
2026-03-05
Added inline data sources for channels, orders, webhooks, and warehouse receiving orders to enhance data selection capabilities