Containers API

Get access to your containers data through Cloudbox's v1 API.

Retrieving Containers

Smart containers with live weight/unit readings. Mixed containers list their SKUs under contents on the detail endpoint.

Use GET /api/v1/containers to page through every record in your organization, or GET /api/v1/containers/{id} to fetch a single record with its related data. The id is a string, and a 404 means it doesn't exist in your organization.

API Endpoint

GET
/api/v1/containers
GET
/api/v1/containers/{id}

Required Headers

Every request must include the following:

Header Key
Description
org-api-key
Your Organization API key. Contact Cloudbox Support For Access: support@cloudboxapp.com.
user-api-key
Your User API Key

Requests missing either header will return 401 Unauthorized

Example Request

bash curl -X GET "https://app.cloudboxapp.com/api/v1/containers?limit=100" \ -H "org-api-key: YOUR_ORG_API_KEY" \ -H "user-api-key: YOUR_USER_API_KEY" \ -H "Accept: application/json"

Response Schema

Column
Type
Description
id
string
Unique ID
name
string, nullable
Sortable
hardware_id
string, nullable
serial_id
string, nullable
Filterable (exact)
sku_id
string, nullable
References SKU. Filterable (exact)
mixed_sku_enabled
boolean
current_weight
number, nullable
container_weight
number, nullable
unit_weight
number, nullable
units
integer, nullable
unit_mode_enabled
boolean, nullable
true: quantities are unit counts. false: quantities are weights in grams
fluid_ounce_qty
number, nullable
Liquid quantity in fluid ounces
tracking_id
string, nullable
expiration_date
string (YYYY-MM-DD), nullable
status
string, nullable
active
boolean
Inactive containers are excluded unless include_inactive=true
is_over_threshold
boolean
is_unit_weight_deviated
boolean
is_possible_theft
boolean
last_active
string (ISO 8601), nullable
Sortable
last_updated
string (ISO 8601), nullable
Sortable
last_base_id
string, nullable
location_id
string (uuid), nullable
Location (building/site) ID. Filterable (exact)
section_id
string (uuid), nullable
Section (area within a location) ID. Filterable (exact)
placement_id
string (uuid), nullable
Placement (spot within a section) ID. Filterable (exact)
created_at
string (ISO 8601)
Creation timestamp (UTC). Sortable
require_scan_out
boolean
Detail endpoint only
sku
object
Detail endpoint only. Related record: id, name, product_id, tracking_id
contents
array of objects
Detail endpoint only. Related records: sku_id, units, sku
location
object
Detail endpoint only. Related record: id, name
section
object
Detail endpoint only. Related record: id, name, location_id
placement
object
Detail endpoint only. Related record: id, name, section_id

Filters

limitPage size (default 100, max 1000)
offsetNumber of records to skip (default 0)
sortOne of: name, last_active, last_updated, created_at
orderasc | desc
searchCase-insensitive partial match on name
sku_idContainers holding this SKU
serial_idExact serial match
location_idContainers in this location
section_idContainers in this section
placement_idContainers in this placement
updated_sinceOnly records updated at or after this ISO 8601 timestamp
include_inactiveSet to true to include deactivated containers (excluded by default)
default sortlast_active descending

Errors

Cloudbox uses standard HTTP status codes to indicate API success or failure:

  • 200–299 – Request succeeded
  • 400 – Bad request (missing parameters, invalid values)
  • 401 – Unauthorized (missing or invalid API keys)
  • 404 – Resource not found
  • 429 – Too many requests (rate limited)