Create Warehouse
POST/api/warehouses
Creates a new warehouse.
warehouses:writeGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Required fields: name (unique, max 255), type (one of: direct, 3pl, supplier, amazon_fba, virtual, amazon_awd, walmart_wfs).
Optional fields: subtype (only "decorator" may be set here; integration-managed subtypes are assigned automatically), address_name, company, email, phone, fax, address1, address2, address3, city, province, province_code, zip, country, country_code, supplier_id (links a supplier-owned warehouse), order_fulfillment, dropship_enabled, direct_returns, customer_returns, auto_routing_enabled, auto_dispatch_enabled, partial_dispatch_enabled, is_default, default_location (object with aisle, bay, shelf, bin), nominal_code_id, transfer_destination_warehouse_id.
The warehouse name must be unique (per supplier for supplier warehouses).
Authentication: Requires Bearer token.
Also accepts (3PL warehouses): fba_inbound_reminders_enabled (boolean) and fba_inbound_reminder_days (array of positive integer day-offsets, e.g. [3,7,14]) — controls automatic FBA-inbound turnaround reminders to this 3PL.
WFS inbound-reminder settings (opt-in turnaround nudges for WFS inbound shipments sourced from this 3PL/warehouse):
- wfs_inbound_reminders_enabled (boolean, optional): enable per-warehouse WFS inbound turnaround reminders.
- wfs_inbound_reminder_days (int[], optional, nullable, each 1–365): days-after-send cadence to remind on (default [3, 7, 14] when reminders are enabled and none provided).
negative_bin_policy (optional; one of block, warn, allow; default warn) controls how the warehouse reacts when an outbound movement would drive a specific bin's on-hand below zero: block rejects the movement, warn permits it but flags the shortfall, and allow permits it silently. The warehouse's default catch-all location is always exempt.
Request
Responses
- 201
- 401
- 403
- 422
- 429
Created
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Unprocessable Entity
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.