openapi: 3.1.0
servers:
- url: https://app.allocadence.com/rest
info:
version: 1.10.0
title: Allocadence REST API
x-logo:
url: ./images/allo-logo.png
altText: Allocadence
description: |
# Authentication
The Allocadence REST API uses Basic HTTP authentication.
The username is a user's API KEY while the password is that user's API Secret.
To generate a API Key and Secret pair for a user, visit the [API Keys](https://app.allocadence.com/admin/users/api-keys)
page under Admin Users.
# Changelog
### Version 1.10.0 (2026-10-07)
Added new [Customer Orders](#tag/customer_order) endpoint: [Cancel Customer Order](#tag/customer_order/paths/~1customer-orders~1{id}~1cancel/put).
Added createdFrom, createdTo, modifiedFrom, and modifiedTo query parameters to [List Items](#tag/items/paths/~1items/get).
### Version 1.9.8 (2026-09-15)
Added includeImage and encodeImage params to [List Items](#tag/items/paths/~1items/get) and [Get Item](#tag/items/paths/~1items~1{id}/get) to include the item's primary image.
### Version 1.9.7 (2025-02-25)
Added modifiedDate to the [Customer Order Advanced Filter](#tag/customer_order_filter).
### Version 1.9.6 (2025-01-14)
Added locationId and locationName to [List Item Inventory ](#tag/inventory/paths/~1inventory~1items/get).
Older versions
### Version 1.9.6 (2024-11-19)
Added new Shipment Report: Shipped Items Value By Order.
### Version 1.9.5 (2024-06-25)
Added warehouseId, warehouseName, warehouses, and warehousesAll to Moved Inventory report.
### Version 1.9.4 (2024-05-29)
Added warehouses and warehousesAll to reports that support multi-warehouse selection in app. The existing warehouseId and warehouseName parameters can still be used as before if the new parameters are excluded.
### Version 1.9.3 (2024-01-23)
Added modifiedDate to Item.
### Version 1.9.2 (2023-11-15)
Added verifiedStatus, verifiedDate, and verifiedMessage to the shippingAddress and billingAddress objects of Customer Order.
### Version 1.9.1 (2023-11-09)
Added CSV option to the Fulfillment Performance report.
### Version 1.9.0 (2023-11-01)
Added new [Transfer Orders](#tag/transfer_order) endpoint: [Cancel Transfer Order](#tag/transfer_order/paths/~1transfer-orders~1{id}~1cancel/put).
### Version 1.8.2 (2023-10-12)
Added includePickedItemMetadata query parameters to [List Customer Orders](#tag/customer_order/paths/~1customer-orders/get) and [Get Customer Order](#tag/customer_order/paths/~1customer-orders~1{id}/get).
### Version 1.8.1 (2023-08-21)
Added Purchasing, Inventory, and Shipment reports to [Get Report](#tag/reports/paths/~1reports~1{category}~1{report_key}/get).
### Version 1.8.0 (2023-08-08)
Added new [Transfer Orders](#tag/transfer_order) endpoints: [List Transfer Orders](#tag/transfer_order/paths/~1transfer-orders/get), [Get Transfer Order](#tag/transfer_order/paths/~1transfer-orders~1{id}/get), [Create Transfer Order](#tag/transfer_order/paths/~1transfer-orders/post), [Edit Transfer Order](#tag/transfer_order/paths/~1transfer-orders~1{id}/put), [Receive Transfer Order](#tag/transfer_order/paths/~1transfer-orders~1{id}~1receive/put).
### Version 1.7.0 (2023-07-11)
Added new endpoint [Get Report](#tag/reports/paths/~1reports~1{category}~1{report_key}/get).
### Version 1.6.0 (2023-06-20)
Added new [Inventory](#tag/inventory) endpoints: [List Inventory](#tag/inventory/paths/~1inventory/get), [List Kit Inventory](#tag/inventory/paths/~1inventory~1kits/get), [List Assembly Inventory](#tag/inventory/paths/~1inventory~1assemblies/get), [List Item Inventory](#tag/inventory/paths/~1inventory~1items/get), and [List Serial Inventory](#tag/inventory/paths/~1inventory~1serials/get).
### Version 1.5.1 (2023-05-17)
Added new field note to [Move Inventory](#tag/inventory/paths/~1inventory~1move/put).
### Version 1.5.0 (2023-03-07)
Added new [Items](#tag/items) endpoints: [List Items](#tag/items/paths/~1items/get), [Get Item](#tag/items/paths/~1items~1{id}/get), [Create Item](#tag/items/paths/~1items/post), [Edit Item](#tag/items/paths/~1items~1{id}/put).
### Version 1.4.0 (2023-01-10)
Added new endpoint [Move Inventory](#tag/inventory/paths/~1inventory~1move/put).
### Version 1.3.1 (2022-11-01)
Added option createNew to create a new item if a SKU doesn't exist yet instead of returning an error to [Create Customer Order](#tag/customer_order/paths/~1customer-orders/post),
[Edit Customer Order](#tag/customer_order/paths/~1customer-orders~1{id}/put),
[Create Purchase Order](#tag/purchase_order/paths/~1purchase-orders/post),
and [Edit Purchase Order](#tag/purchase_order/paths/~1purchase-orders~1{id}/put).
### Version 1.3.0 (2022-10-18)
Four new customer order endpoints have been added [List Customer Orders](#tag/customer_order/paths/~1customer-orders/get), [Get Customer Order](#tag/customer_order/paths/~1customer-orders~1{id}/get),
[Create Customer Order](#tag/customer_order/paths/~1customer-orders/post), [Edit Customer Order](#tag/customer_order/paths/~1customer-orders~1{id}/put)
### Version 1.2.0 (2022-03-08)
Four new cycle count endpoints have been added: [List Cycle Counts](#tag/cycle_count/paths/~1cycle-counts/get), [Get Cycle Count](#tag/cycle_count/paths/~1cycle-counts~1{id}/get),
[Get Adjustment](#tag/cycle_count/paths/~1cycle-counts~1adjustments/get), [Create Adjustment](#tag/cycle_count/paths/~1cycle-counts~1adjustments/post)
### Version 1.1.0 (2022-02-16)
Added orderBy and orderDir query parameters to [List Purchase Orders](#tag/purchase_order/paths/~1purchase-orders/get).
Date-time strings are now in ISO-8601 format. For input, if a timezone is given for a date-time, then it will be converted to the user's current warehouse's timezone.
Else, the timezone will be assumed to the be same as the user's current warehouse's.
For output, the given timezone will be the user's current warehouse's timezone. And if date-time for a field has yet to be set, it will now display as an empty string
instead of "0000-00-00 00:00:00".
tags:
- name: customer_order
x-displayName: Customer Orders
- name: cycle_count
x-displayName: Cycle Counts
- name: inventory
x-displayName: Inventory
- name: items
x-displayName: Items
- name: purchase_order
x-displayName: Purchase Orders
- name: reports
x-displayName: Reports
- name: transfer_order
x-displayName: Transfer Orders
- name: customer_order_filter
x-displayName: Customer Order Advanced Filter
description: |
The Customer Order Advanced Filter is a collection of query parameters used to emulate the customer order filters in the UI.
A field is divided into two query parameters: a value and a conditional. The value parameter takes the name of the field being filtered
while the conditional parameter's name is the value parameter's name suffixed with 'Conditional'. There are some exceptions to this pattern
and will be noted in the field. Fields that can be grouped together as one type will have their conditional parameter documented
once for the sake of brevity. Such conditional parameters will be notated as \Conditional, ie \Conditional.
- name: error_response
x-displayName: Error Response
description: |
- name: pagination
x-displayName: Pagination Metadata
description: |
- name: customer_order_model
x-displayName: Customer Order Model
description: |
- name: cycle_count_model
x-displayName: Cycle Count Model
description: |
- name: cycle_count_location_model
x-displayName: Cycle Count Location Model
description: |
- name: item_model
x-displayName: Item Model
description: |
- name: purchase_order_model
x-displayName: Purchase Order Model
description: |
- name: purchase_order_item_model
x-displayName: Purchase Order Item Model
description: |
- name: transfer_order_model
x-displayName: Transfer Order Model
description: |
- name: transfer_order_item_model
x-displayName: Transfer Order Item Model
description: |
x-tagGroups:
- name: Requests
tags:
- customer_order
- cycle_count
- inventory
- items
- purchase_order
- reports
- transfer_order
- name: Advanced Filters
tags:
- customer_order_filter
- name: Models
tags:
- error_response
- pagination
- customer_order_model
- cycle_count_model
- cycle_count_location_model
- item_model
- purchase_order_model
- purchase_order_item_model
- transfer_order_model
- transfer_order_item_model
paths:
/customer-orders:
get:
tags:
- customer_order
summary: List Customer Orders
description: Get a list of customer orders based on search parameters.
parameters:
- name: open
in: query
description: True to filter for open customer orders.
schema:
type: boolean
default: false
- name: completed
in: query
description: True to filter for completed customer orders.
schema:
type: boolean
default: false
- name: draft
in: query
description: True to filter for draft customer orders.
schema:
type: boolean
default: false
- name: cancelled
in: query
description: True to filter for cancelled customer orders.
schema:
type: boolean
default: false
- name: includePickedItemMetadata
in: query
description: True to include the lot numbers, expiration dates, and serial numbers picked for the line items in the additional fields.
schema:
type: boolean
default: false
- name: ...
in: query
description: |
Additional query parameters are available from the [Customer Order Advanced Filter](#tag/customer_order_filter) section.
These can be used in conjunction with the above parameters.
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CustomerOrderList'
post:
tags:
- customer_order
summary: Create Customer Order
description: Create a new customer order.
requestBody:
$ref: '#/components/requestBodies/CustomerOrderCreate'
responses:
'201':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CustomerOrder'
/customer-orders/{id}:
get:
tags:
- customer_order
summary: Get Customer Order
description: Get a single customer order.
parameters:
- name: id
in: path
description: Id of the customer order.
required: true
schema:
type: integer
- name: includePickedItemMetadata
in: query
description: True to include the lot numbers, expiration dates, and serial numbers picked for the line items in the additional fields.
schema:
type: boolean
default: false
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CustomerOrder'
put:
tags:
- customer_order
summary: Edit Customer Order
description: Edit a single customer order.
parameters:
- name: id
in: path
description: Id of the customer order.
required: true
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/CustomerOrderEdit'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CustomerOrder'
example:
id: 10376
orderNumber: "101156"
orderReference: ""
customer:
id: 6382
title: ""
name: Anna
surname: Fuugo
email: email@address.com
company: Aconite
accountNumber: S01E07
client: null
orderedDate: 2022-09-20T11:31:01-07:00
createdDate: 2022-09-20T11:31:01-07:00
modifiedDate: 2022-09-21T11:31:01-07:00
orderPlaced: true
createdBy:
id: 1
name: Mr Sparks
completed: false
completedDate: ""
cancelled: false
cancelledDate: ""
cancelledBy: null
onHold: false
onHoldUntil: ""
postageAccount: sender
buyerPaidShipping: 0
shippingAddress:
id: 666
company: Aconite
name: Anna Fuugo
line1: 123 Home Street
line2: ""
line3: ""
city: Phoenix
state: AZ
zip: "85013"
country: United States
countryCode: US
phone: "555-555-5555"
code: anna-test
verifiedStatus: "awaiting"
verifiedDate: ""
verifiedMessage: ""
billingAddress:
id: 666
company: Aconite
name: Anna Fuugo
line1: 123 Home Street
line2: ""
line3: ""
city: Phoenix
state: AZ
zip: "85013"
country: United States
countryCode: US
phone: "555-555-5555"
code: anna-test
verifiedStatus: "awaiting"
verifiedDate: ""
verifiedMessage: ""
shipVia: fedex_ground
shipViaPackaging: ""
shipViaConfirmation: direct_signature
dryIceWeight: 0
packageSku: ""
shipFromWarehouse:
id: 1
name: Main Warehouse
projectNumber: ""
discountPercentage: 0
orderSource: REST API
internalNote: "Has been edited"
noteFromCustomer: ""
noteToCustomer: ""
notificationEmail: ""
userField1: ""
userField2: ""
userField3: ""
myList1: ""
myList2: ""
tags:
- id: 1
tag: Expedite
note: Expedite this order.
items:
- id: 13665
itemId: 2330
sku: FumoFumo-006
description: Alice Margatroid
orderQuantity: 2
uom: Case
quantity: 12
allocatedQuantity: 0
pickedQuantity: 0
price: 50
discountPercentage: 0
partOfKit: false
componentOf: 0
additionalFields: null
/customer-orders/{id}/cancel:
put:
tags:
- customer_order
summary: Cancel Customer Order
description: |
Cancel a customer order. Orders that are already cancelled, already shipped,
or that a fulfillment provider has started fulfilling cannot be cancelled.
parameters:
- name: id
in: path
description: Id of the customer order.
required: true
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/CustomerOrderCancel'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CustomerOrder'
example:
id: 10376
orderNumber: "101156"
orderReference: ""
customer:
id: 6382
title: ""
name: Anna
surname: Fuugo
email: email@address.com
company: Aconite
accountNumber: S01E07
client: null
orderedDate: 2022-09-20T11:31:01-07:00
createdDate: 2022-09-20T11:31:01-07:00
modifiedDate: 2022-09-22T09:15:44-07:00
orderPlaced: true
createdBy:
id: 1
name: Mr Sparks
completed: false
completedDate: ""
cancelled: true
cancelledDate: 2022-09-22T09:15:44-07:00
cancelledReason: "Customer requested cancellation."
cancelledBy:
id: 1
name: Mr Sparks
onHold: false
onHoldUntil: ""
postageAccount: sender
buyerPaidShipping: 0
shippingAddress:
id: 666
company: Aconite
name: Anna Fuugo
line1: 123 Home Street
line2: ""
line3: ""
city: Phoenix
state: AZ
zip: "85013"
country: United States
countryCode: US
phone: "555-555-5555"
code: anna-test
verifiedStatus: "awaiting"
verifiedDate: ""
verifiedMessage: ""
billingAddress:
id: 666
company: Aconite
name: Anna Fuugo
line1: 123 Home Street
line2: ""
line3: ""
city: Phoenix
state: AZ
zip: "85013"
country: United States
countryCode: US
phone: "555-555-5555"
code: anna-test
verifiedStatus: "awaiting"
verifiedDate: ""
verifiedMessage: ""
shipVia: fedex_ground
shipViaPackaging: ""
shipViaConfirmation: direct_signature
dryIceWeight: 0
packageSku: ""
shipFromWarehouse:
id: 1
name: Main Warehouse
projectNumber: ""
discountPercentage: 0
orderSource: REST API
internalNote: ""
noteFromCustomer: ""
noteToCustomer: ""
notificationEmail: ""
userField1: ""
userField2: ""
userField3: ""
myList1: ""
myList2: ""
tags:
- id: 1
tag: Expedite
note: Expedite this order.
items:
- id: 13665
itemId: 2330
sku: FumoFumo-006
description: Alice Margatroid
orderQuantity: 2
uom: Case
quantity: 12
allocatedQuantity: 0
pickedQuantity: 0
price: 50
discountPercentage: 0
partOfKit: false
componentOf: 0
additionalFields: null
/cycle-counts:
get:
tags:
- cycle_count
summary: List Cycle Counts
description: Get a list of cycle counts based on search parameters.
parameters:
- name: type
in: query
description: Type of cycle count to filter for. Normal cycle counts count all item inventory at each location while an adjustment is for a single item.
schema:
type: string
default: ""
enum:
- ""
- normal
- adjustment
- name: inProgress
in: query
description: True to filter for cycle counts whose locations have not yet all been counted.
schema:
type: boolean
default: false
- name: completed
in: query
description: True to filter for cycle counts whose locations have all been counted, but not yet approved.
schema:
type: boolean
default: false
- name: approved
in: query
description: True to filter for cycle counts whose locations have all been counted and approved.
schema:
type: boolean
default: false
- name: warehouseId
in: query
description: Id of the warehouse the cycle counts are being performed in.
schema:
type: integer
- name: warehouseName
in: query
description: Name of the warehouse the cycle counts are being performed in. Ignored if warehouseId is provided.
schema:
type: string
- name: createdFrom
in: query
description: Get cycle counts created at or after this time.
schema:
type: string
format: date-time
- name: createdTo
in: query
description: Get cycle counts created at or before this time.
schema:
type: string
format: date-time
- name: orderBy
in: query
description: Field to order results by.
schema:
type: string
default: ""
enum:
- ""
- id
- createdDate
- $ref: '#/components/parameters/OrderDir'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CycleCountList'
/cycle-counts/{id}:
get:
tags:
- cycle_count
summary: Get Cycle Count
description: Get a single cycle count.
parameters:
- name: id
in: path
description: Id of the cycle count.
required: true
schema:
type: integer
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CycleCount'
/cycle-counts/adjustments:
get:
tags:
- cycle_count
summary: Get Adjustment
description: Get inventory data to aid creating the request body for [Create Adjustment](#tag/cycle_count/paths/~1cycle-counts~1adjustments/post)
parameters:
- name: itemId
in: query
description: Id of the item whose stock you wish to adjust.
schema:
type: integer
- name: itemSku
in: query
description: SKU of the item whose stock you wish to adjust.
schema:
type: string
- name: warehouseId
in: query
description: Id of the warehouse the to be adjusted stock is in. If no warehouse parameters are given, then the user's current warehouse will be used.
schema:
type: integer
- name: warehouseName
in: query
description: Name of the warehouse the to be adjusted stock is in. If no warehouse parameters are given, then the user's current warehouse will be used.
schema:
type: string
- name: clientId
in: query
description: Id of the client that the item to be adjusted belongs to. Defaults to the user's client id.
schema:
type: integer
- name: clientName
in: query
description: Name of the client that the item to be adjusted belongs to. Defaults to the user's client id. Ignored if clientId is provided and is nonzero.
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CycleCountAdjustment'
post:
tags:
- cycle_count
summary: Create Adjustment
description: Create a new adjustment cycle count to modify the stock levels of a single item.
requestBody:
$ref: '#/components/requestBodies/CycleCountAdjustmentCreate'
responses:
'201':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CycleCount'
example:
id: 120
adjustment: true
progress: 100
accuracy: 95
warehouse:
id: 1
name: Main Warehouse
createdDate: "2021-02-01T11:00:30-07:00"
createdBy:
id: 1
name: Mr Sparks
claimedBy: null
completed: true
completedDate: "2021-02-01T11:00:30-07:00"
completedBy:
id: 1
name: Mr Sparks
approved: true
approvedDate: "2021-02-01T11:00:30-07:00"
approvedBy:
id: 1
name: Mr Sparks
locations:
- id: 151
location:
id: 1502
name: Shelf A
accuracy: 95
completed: true
completedDate: "2021-02-01T11:00:30-07:00"
completedBy:
id: 1
name: Mr Sparks
approved: true
approvedDate: "2021-02-01T11:00:30-07:00"
approvedBy:
id: 1
name: Mr Sparks
- id: 152
location:
id: 1498
name: Shelf B
accuracy: 100
completed: true
completedDate: "2021-02-01T11:00:30-07:00"
completedBy:
id: 1
name: Mr Sparks
approved: true
approvedDate: "2021-02-01T11:00:30-07:00"
approvedBy:
id: 1
name: Mr Sparks
/inventory:
get:
tags:
- inventory
summary: List Inventory
description: Get a list of items' inventory levels.
parameters:
- name: searchFor
in: query
description: Searchs items' SKU, UPC, and description for exact or partial matches.
schema:
type: string
- name: clientId
in: query
description: Filter for items belonging to the client matching this id.
schema:
type: integer
- name: clientName
in: query
description: Filter for items belonging to the client with this name. Ignored if clientId is provided and is nonzero.
schema:
type: string
- name: warehouseId
in: query
description: Id of the warehouse to filter by.
schema:
type: integer
- name: warehouseName
in: query
description: Name of the warehouse to filter by. Ignored if warehouseId is provided.
schema:
type: string
- name: locationId
in: query
description: Id of the location to filter by.
schema:
type: integer
- name: locationName
in: query
description: Name of the location to filter by. Ignored if locationId is provided.
schema:
type: string
- name: category
in: query
description: Item category to filter by.
schema:
type: string
- name: inStock
in: query
description: True to include only items that are in stock.
schema:
type: boolean
default: false
- name: lowStock
in: query
description: True to include only items whose inventory level is less than its reorder level.
schema:
type: boolean
default: false
- name: userField1
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField2
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField3
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField4
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField5
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField6
in: query
description: Filter for items by this user defined field.
schema:
type: string
format: date-time
- name: orderBy
in: query
description: Field to order results by.
schema:
type: string
default: ""
enum:
- ""
- id
- sku
- upc
- category
- userField1
- userField2
- userField3
- userField4
- userField5
- userField6
- inStock
- allocated
- $ref: '#/components/parameters/OrderDir'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/InventoryList'
/inventory/kits:
get:
tags:
- inventory
summary: List Kit Inventory
description: Get a list of kit items' buildable quantity.
parameters:
- name: searchFor
in: query
description: Searchs items' SKU, UPC, and description for exact or partial matches.
schema:
type: string
- name: clientId
in: query
description: Filter for items belonging to the client matching this id.
schema:
type: integer
- name: clientName
in: query
description: Filter for items belonging to the client with this name. Ignored if clientId is provided and is nonzero.
schema:
type: string
- name: warehouseId
in: query
description: Id of the warehouse to filter by.
schema:
type: integer
- name: warehouseName
in: query
description: Name of the warehouse to filter by. Ignored if warehouseId is provided.
schema:
type: string
- name: category
in: query
description: Item category to filter by.
schema:
type: string
- name: userField1
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField2
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField3
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField4
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField5
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField6
in: query
description: Filter for items by this user defined field.
schema:
type: string
format: date-time
- name: orderBy
in: query
description: Field to order results by.
schema:
type: string
default: ""
enum:
- ""
- id
- sku
- upc
- category
- userField1
- userField2
- userField3
- userField4
- userField5
- userField6
- $ref: '#/components/parameters/OrderDir'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/InventoryKitList'
/inventory/assemblies:
get:
tags:
- inventory
summary: List Assembly Inventory
description: Get a list of assembled items' inventory levels and buildable quantities.
parameters:
- name: searchFor
in: query
description: Searchs items' SKU, UPC, and description for exact or partial matches.
schema:
type: string
- name: clientId
in: query
description: Filter for items belonging to the client matching this id.
schema:
type: integer
- name: clientName
in: query
description: Filter for items belonging to the client with this name. Ignored if clientId is provided and is nonzero.
schema:
type: string
- name: warehouseId
in: query
description: Id of the warehouse to filter by.
schema:
type: integer
- name: warehouseName
in: query
description: Name of the warehouse to filter by. Ignored if warehouseId is provided.
schema:
type: string
- name: category
in: query
description: Item category to filter by.
schema:
type: string
- name: userField1
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField2
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField3
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField4
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField5
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField6
in: query
description: Filter for items by this user defined field.
schema:
type: string
format: date-time
- name: orderBy
in: query
description: Field to order results by.
schema:
type: string
default: ""
enum:
- ""
- id
- sku
- upc
- category
- userField1
- userField2
- userField3
- userField4
- userField5
- userField6
- inStock
- allocated
- $ref: '#/components/parameters/OrderDir'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/InventoryAssemblyList'
/inventory/items:
get:
tags:
- inventory
summary: List Item Inventory
description: Get a list of items' inventory levels broken down by lot number and expiration date.
parameters:
- name: searchFor
in: query
description: Searchs items' SKU, UPC, and description for exact or partial matches.
schema:
type: string
- name: clientId
in: query
description: Filter for items belonging to the client matching this id.
schema:
type: integer
- name: clientName
in: query
description: Filter for items belonging to the client with this name. Ignored if clientId is provided and is nonzero.
schema:
type: string
- name: warehouseId
in: query
description: Id of the warehouse to filter by.
schema:
type: integer
- name: warehouseName
in: query
description: Name of the warehouse to filter by. Ignored if warehouseId is provided.
schema:
type: string
- name: locationId
in: query
description: Id of the location to filter by.
schema:
type: integer
- name: locationName
in: query
description: Name of the location to filter by. Ignored if locationId is provided.
schema:
type: string
- name: category
in: query
description: Item category to filter by.
schema:
type: string
- name: lotNumber
in: query
description: True to include only items that use lot number tracking.
schema:
type: boolean
default: false
- name: perishable
in: query
description: True to include only items that are perishable.
schema:
type: boolean
default: false
- name: userField1
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField2
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField3
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField4
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField5
in: query
description: Filter for items by this user defined field.
schema:
type: string
- name: userField6
in: query
description: Filter for items by this user defined field.
schema:
type: string
format: date-time
- name: orderBy
in: query
description: Field to order results by.
schema:
type: string
default: ""
enum:
- ""
- id
- sku
- upc
- category
- userField1
- userField2
- userField3
- userField4
- userField5
- userField6
- lotNumber
- expirationDate
- $ref: '#/components/parameters/OrderDir'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/InventoryItemList'
/inventory/serials:
get:
tags:
- inventory
summary: List Serial Inventory
description: Get a list of serialized items and their in-stock serials.
parameters:
- name: clientId
in: query
description: Filter for items belonging to the client matching this id.
schema:
type: integer
- name: clientName
in: query
description: Filter for items belonging to the client with this name. Ignored if clientId is provided and is nonzero.
schema:
type: string
- name: warehouseId
in: query
description: Id of the warehouse to filter by.
schema:
type: integer
- name: warehouseName
in: query
description: Name of the warehouse to filter by. Ignored if warehouseId is provided.
schema:
type: string
- name: locationId
in: query
description: Id of the location to filter by.
schema:
type: integer
- name: locationName
in: query
description: Name of the location to filter by. Ignored if locationId is provided.
schema:
type: string
- name: category
in: query
description: Item category to filter by.
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/InventorySerialList'
/inventory/move:
put:
tags:
- inventory
summary: Move Inventory
description: Move inventory from one location to another location in the same warehouse.
requestBody:
$ref: '#/components/requestBodies/InventoryMove'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/InventoryMoveResponse'
/items:
get:
tags:
- items
summary: List Items
description: Get a list of items based on search parameters.
parameters:
- name: searchFor
in: query
description: Searchs items' SKU, UPC, and description for exact or partial matches.
schema:
type: string
- name: clientId
in: query
description: Filter for items belonging to the client matching this id.
schema:
type: integer
- name: clientName
in: query
description: Filter for items belonging to the client with this name. Ignored if clientId is provided and is nonzero.
schema:
type: string
- name: category
in: query
description: Item category to filter by.
schema:
type: string
- name: active
in: query
description: True to get active items. False to get inactive items.
schema:
type: boolean
default: true
- name: createdFrom
in: query
description: Get items created at or after this time.
schema:
type: string
format: date-time
- name: createdTo
in: query
description: Get items created at or before this time.
schema:
type: string
format: date-time
- name: modifiedFrom
in: query
description: Get items modified at or after this time.
schema:
type: string
format: date-time
- name: modifiedTo
in: query
description: Get items modified at or before this time.
schema:
type: string
format: date-time
- name: nonInventory
in: query
description: True to include non-inventory items. False to exclude.
schema:
type: boolean
default: true
- name: includeUnits
in: query
description: True to include the items' units of measurements in the additional fields.
schema:
type: boolean
default: false
- name: includeBom
in: query
description: True to include the items' bill of materials in the additional fields.
schema:
type: boolean
default: false
- name: includeImage
in: query
description: True to include the items' primary image in the additional fields as either a URL or base64 encoded string.
schema:
type: boolean
default: false
- name: encodeImage
in: query
description: True to return the image as a base64 encoded string instead of as a URL.
schema:
type: boolean
default: false
- name: orderBy
in: query
description: Field to order results by.
schema:
type: string
default: ""
enum:
- ""
- id
- sku
- upc
- category
- unitCost
- price
- userField1
- userField2
- userField3
- userField4
- userField5
- userField6
- $ref: '#/components/parameters/OrderDir'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ItemList'
post:
tags:
- items
summary: Create Item
description: Create a new item.
requestBody:
$ref: '#/components/requestBodies/ItemCreate'
responses:
'201':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/Item'
/items/{id}:
get:
tags:
- items
summary: Get Item
description: Get a single item.
parameters:
- name: id
in: path
description: Id of the item.
required: true
schema:
type: integer
- name: includeUnits
in: query
description: True to include the item's units of measurements in the additional fields.
schema:
type: boolean
default: false
- name: includeBom
in: query
description: True to include the item's bill of materials in the additional fields.
schema:
type: boolean
default: false
- name: includeImage
in: query
description: True to include the item's primary image in the additional fields as either a URL or base64 encoded string.
schema:
type: boolean
default: false
- name: encodeImage
in: query
description: True to return the image as a base64 encoded string instead of as a URL.
schema:
type: boolean
default: false
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ItemWithAdditional'
put:
tags:
- items
summary: Edit Item
description: Edit an existing item.
parameters:
- name: id
in: path
description: Id of the item.
required: true
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/ItemEdit'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/Item'
/purchase-orders:
get:
tags:
- purchase_order
summary: List Purchase Orders
description: Get a list of purchase orders based on search parameters.
parameters:
- name: orderNumber
in: query
description: Search for purchase orders with exactly or partially matching order number.
schema:
type: string
- name: warehouseId
in: query
description: Id of the warehouse the purchase orders are for.
schema:
type: integer
- name: warehouseName
in: query
description: Name of the warehouse the purchase orders are for. Ignored if warehouseId is provided.
schema:
type: string
- name: supplierId
in: query
description: Id of the supplier the purchase orders are for.
schema:
type: integer
- name: supplierName
in: query
description: Name of the supplier the purchase orders are for. Ignored if supplierId is provided.
schema:
type: string
- name: clientId
in: query
description: Id of the client the purchase orders are for.
schema:
type: integer
- name: clientName
in: query
description: Name of the client the purchase orders are for. Ignored if clientId is provided and is nonzero.
schema:
type: string
- name: open
in: query
description: True to filter for open purchase orders.
schema:
type: boolean
default: false
- name: completed
in: query
description: True to filter for completed purchase orders.
schema:
type: boolean
default: false
- name: draft
in: query
description: True to filter for draft purchase orders.
schema:
type: boolean
default: false
- name: deleted
in: query
description: True to filter for deleted purchase orders.
schema:
type: boolean
default: false
- name: createdFrom
in: query
description: Get purchase orders created at or after this time.
schema:
type: string
format: date-time
- name: createdTo
in: query
description: Get purchase orders created at or before this time.
schema:
type: string
format: date-time
- name: orderBy
in: query
description: Field to order results by.
schema:
type: string
default: ""
enum:
- ""
- id
- orderNumber
- createdDate
- preparedDate
- requiredByDate
- userField1
- userField2
- userField3
- $ref: '#/components/parameters/OrderDir'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseOrderList'
post:
tags:
- purchase_order
summary: Create Purchase Order
description: Create a new purchase order.
requestBody:
$ref: '#/components/requestBodies/PurchaseOrderCreate'
responses:
'201':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseOrder'
/purchase-orders/{id}:
get:
tags:
- purchase_order
summary: Get Purchase Order
description: Get a single purchase order.
parameters:
- name: id
in: path
description: Id of the purchase order.
required: true
schema:
type: integer
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseOrder'
put:
tags:
- purchase_order
summary: Edit Purchase Order
description: Edit a single purchase order. The purchase order must still be a draft.
parameters:
- name: id
in: path
description: Id of the purchase order.
required: true
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/PurchaseOrderEdit'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/PurchaseOrder'
example:
id: 333
orderNumber: "PO#375"
supplier:
id: 35
name: Gift
warehouse:
id: 1
name: Main Warehouse
client: name
user:
id: 1
name: Mr Sparks
draft: false
completed: false
deleted: false
createdDate: "20220-12-02T10:24:26-07:00"
preparedDate: "20220-12-02T15:32:51-07:00"
requiredByDate: "2020-12-02"
projectNumber: new number
notes: New note
shipMethod: Fast
terms: None
userField1: uf1E
userField2: uf2E
userField3: uf3E
items:
- id: 456
itemId: 2306
sku: FumoFumo-002
description: Marisa Kirisame
quantity: 10
uom: Each
unitCost: 20
- id: 458
itemId: 2305
sku: FumoFumo-001
description: Reimu Hakurei
quantity: 5
uom: Each
unitCost: 20
/purchase-orders/{id}/close:
put:
tags:
- purchase_order
summary: Close Purchase Order
description: Close an open purchase order to mark it as completed.
parameters:
- name: id
in: path
description: Id of the open purchase order.
required: true
schema:
type: integer
responses:
'200':
description: Success
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/PurchaseOrder'
- type: object
properties:
draft:
example: false
completed:
example: true
preparedDate:
example: "2020-12-05T12:10:47-07:00"
/reports/{category}/{report_key}:
get:
tags:
- reports
summary: Get Report
description:
$ref: './md/reports.md'
parameters:
- name: category
in: path
description: The category the report belongs to. See above table for possible values.
required: true
schema:
type: string
- name: report_key
in: path
description: The report's key. See above table for possible values.
required: true
schema:
type: string
- name: csv
in: query
description: True to return the report in CSV format, else return as a PDF.
schema:
type: boolean
default: true
- name: clientId
in: query
description: Id of the client to filter for. Defaults to the user's client id.
schema:
type: integer
- name: clientName
in: query
description: Name of the client to filter for. Ignored if clientId is provided and is nonzero.
schema:
type: string
- name: warehouseId
in: query
description: Id of the warehouse to filter for. Defaults to the user's current warehouse unless the report's warehouse parameters is marked with (All).
schema:
type: integer
- name: warehouseName
in: query
description: Name of the warehouse to filter for. Ignored if warehouseId is provided.
schema:
type: string
- name: warehouses
in: query
description: CSV string of warehouse ids and/or names to filter for multiple warehouses at once. Supersedes warehouseId and warehouseName if provided.
schema:
type: csv
- name: warehousesAll
in: query
description: True to filter for all warehouses and to supersede the warehouseId, warehouseName, and warehouses parameters.
schema:
type: boolean
default: false
- name: startDate
in: query
description: The day the report should start from.
schema:
type: string
format: date
- name: endDate
in: query
description: The day the report should stop at.
schema:
type: string
format: date
- name: date
in: query
description: The single day the report should be reporting on.
schema:
type: string
format: date
- name: customerId
in: query
description: Filter by a customer id.
schema:
type: integer
- name: customerAccountNumber
in: query
description: Filter by a customer's account number.
schema:
type: string
- name: supplierId
in: query
description: Id of the supplier to filter for.
schema:
type: integer
- name: supplierName
in: query
description: Name of the supplier to filter for. Ignored if supplierId is provided.
schema:
type: string
- name: category
in: query
description: Name of the category to filter for.
schema:
type: string
- name: itemId
in: query
description: Id of the item to filter for.
schema:
type: integer
- name: itemSku
in: query
description: SKU of the item to filter for. Ignored if itemId is provided.
schema:
type: string
- name: carrier
in: query
description: Code of the carrier to filter for.
schema:
type: string
- name: showComplete
in: query
description: True to include completed orders in the report.
schema:
type: boolean
default: false
- name: locations
in: query
description: Include additional location data.
schema:
type: boolean
default: false
- name: quantity
in: query
description: Include additional quantity data.
schema:
type: boolean
default: false
- name: byDate
in: query
description: Break the data down by date.
schema:
type: boolean
default: false
- name: byLocation
in: query
description: Break the data down by location.
schema:
type: boolean
default: false
- name: byLotNumber
in: query
description: Break the data down by lot number.
schema:
type: boolean
default: false
- name: outOfStock
in: query
description: True to include out of stock items.
schema:
type: boolean
default: false
- name: orderNumber
in: query
description: Filter for order matching the given order number.
schema:
type: string
- name: locationId
in: query
description: Id of the location to filter for.
schema:
type: integer
- name: locationName
in: query
description: Name of the location to filter for. Ignored if locationId is provided.
schema:
type: string
- name: minAccuracy
in: query
description: Minimum cycle count accuracy percentage.
schema:
type: number
default: -99999
- name: maxAccuracy
in: query
description: Maximum cycle count accuracy percentage.
schema:
type: number
default: 99999
- name: lotNumber
in: query
description: Lot number to filter for.
schema:
type: string
- name: serialNumber
in: query
description: Serial number to filter for.
schema:
type: string
- name: expirationDate
in: query
description: Expiration date to filter for.
schema:
type: string
format: date-time
- name: carrierBreakdown
in: query
description: True to break the data down by carrier.
schema:
type: boolean
default: false
- name: nonAnomaly
in: query
description: True to include items with no discrepancies in a cycle count.
schema:
type: boolean
default: false
responses:
'200':
description: Success
/transfer-orders:
get:
tags:
- transfer_order
summary: List Transfer Orders
description: Get a list of transfer orders based on search parameters.
parameters:
- name: open
in: query
description: True to filter for transfer orders that are not drafts, completed, deleted, or cancelled.
schema:
type: boolean
default: false
- name: completed
in: query
description: True to filter for transfer orders that have been completed.
schema:
type: boolean
default: false
- name: draft
in: query
description: True to filter for draft transfer orders.
schema:
type: boolean
default: false
- name: cancelled
in: query
description: True to filter for non-draft transfer orders that have been cancelled.
schema:
type: boolean
default: false
- name: deleted
in: query
description: True to filter for draft transfer orders that have been deleted.
schema:
type: boolean
default: false
- name: originWarehouseId
in: query
description: Search for transfer orders originating from this warehouse.
schema:
type: integer
- name: originWarehouseName
in: query
description: Search for transfer orders originating from this warehouse. Ignored if originWarehouseId is provided.
schema:
type: string
- name: destinationWarehouseId
in: query
description: Search for transfer orders bound for this warehouse.
schema:
type: integer
- name: destinationWarehouseName
in: query
description: Search for transfer orders bound for this warehouse. Ignored if destinationWarehouseId is provided.
schema:
type: string
- name: createdTo
in: query
description: Search for transfer orders created at or after this time.
schema:
type: string
format: date-time
- name: createdFrom
in: query
description: Search for transfer orders created at or before this time.
schema:
type: string
format: date-time
- name: requiredByTo
in: query
description: Search for transfer orders that are required by at or after this time.
schema:
type: string
format: date-time
- name: requiredByFrom
in: query
description: Search for transfer orders that are required by at or before this time.
schema:
type: string
format: date-time
- name: orderBy
in: query
description: Field to order results by.
schema:
type: string
default: ""
enum:
- ""
- id
- originWarehouse
- destinationWarehouse
- createdDate
- requiredByDate
- $ref: '#/components/parameters/OrderDir'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TransferOrderList'
post:
tags:
- transfer_order
summary: Create Transfer Order
description: Create a new transfer order.
requestBody:
$ref: '#/components/requestBodies/TransferOrderCreate'
responses:
'201':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TransferOrder'
/transfer-orders/{id}:
get:
tags:
- transfer_order
summary: Get Transfer Order
description: Get a single transfer order.
parameters:
- name: id
in: path
description: Id of the transfer order.
required: true
schema:
type: integer
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TransferOrder'
put:
tags:
- transfer_order
summary: Edit Transfer Order
description: Edit a transfer order.
parameters:
- name: id
in: path
description: Id of the transfer order.
required: true
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/TransferOrderEdit'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TransferOrder'
example:
id: 78
originWarehouse:
id: 1
name: "Main Warehouse"
destinationWarehouse:
id: 2
name: "Second Warehouse"
draft: false
completed: false
requiredBy: "2023-07-30T12:00:00-07:00"
createdDate: "2023-07-26T16:36:47-07:00"
preparedBy:
id: 1
name: Mr Sparks
preparedDate: "2023-07-26T17:23:18-07:00"
shipVia: "fedex_ground"
deleted: false
deletedBy: null
deletedDate: ""
cancelled: false
cancelledBy: null
cancelledDate: ""
cancelledReason: ""
notes: "Monthly transfer"
tags: []
items:
- id: 96
itemId: 2330
sku: "FumoFumo-006"
description: "Alice Margatroid"
quantity: 10
uom: each
allocatedQuantity: 0
pickedQuantity: 0
deliveredQuantity: 0
- id: 97
itemId: 2306
sku: "FumoFumo-002"
description: "Marisa Kirisame"
quantity: 15
uom: each
allocatedQuantity: 0
pickedQuantity: 0
deliveredQuantity: 0
/transfer-orders/{id}/cancel:
put:
tags:
- transfer_order
summary: Cancel Transfer Order
description: Cancel a transfer order.
parameters:
- name: id
in: path
description: Id of the transfer order.
required: true
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/TransferOrderCancel'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TransferOrder'
example:
id: 78
originWarehouse:
id: 1
name: "Main Warehouse"
destinationWarehouse:
id: 2
name: "Second Warehouse"
draft: false
completed: false
requiredBy: "2023-07-30T12:00:00-07:00"
createdDate: "2023-07-26T16:36:47-07:00"
preparedBy:
id: 1
name: Mr Sparks
preparedDate: "2023-07-26T17:23:18-07:00"
shipVia: "fedex_ground"
deleted: false
deletedBy: null
deletedDate: ""
cancelled: true
cancelledBy:
id: 1
name: Mr Sparks
cancelledDate: "2023-07-27T17:23:18-07:00"
cancelledReason: "Warehouse no longer needs the stock."
notes: "Monthly transfer"
tags: []
items:
- id: 96
itemId: 2330
sku: "FumoFumo-006"
description: "Alice Margatroid"
quantity: 10
uom: each
allocatedQuantity: 0
pickedQuantity: 0
deliveredQuantity: 0
- id: 97
itemId: 2306
sku: "FumoFumo-002"
description: "Marisa Kirisame"
quantity: 15
uom: each
allocatedQuantity: 0
pickedQuantity: 0
deliveredQuantity: 0
/transfer-orders/{id}/receive:
put:
tags:
- transfer_order
summary: Receive Transfer Order
description: Receive shipping items from the origin warehouse into the destination warehouse.
parameters:
- name: id
in: path
description: Id of the transfer order.
required: true
schema:
type: integer
requestBody:
$ref: '#/components/requestBodies/TransferOrderReceive'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/TransferOrder'
example:
id: 78
originWarehouse:
id: 1
name: "Main Warehouse"
destinationWarehouse:
id: 2
name: "Second Warehouse"
draft: false
completed: false
requiredBy: "2023-07-30T12:00:00-07:00"
createdDate: "2023-07-26T16:36:47-07:00"
preparedBy:
id: 1
name: Mr Sparks
preparedDate: "2023-07-26T17:23:18-07:00"
shipVia: "fedex_ground"
deleted: false
deletedBy: null
deletedDate: ""
cancelled: false
cancelledBy: null
cancelledDate: ""
cancelledReason: ""
notes: "Monthly transfer"
tags: []
items:
- id: 96
itemId: 2330
sku: "FumoFumo-006"
description: "Alice Margatroid"
quantity: 10
uom: each
allocatedQuantity: 0
pickedQuantity: 0
deliveredQuantity: 5
- id: 97
itemId: 2306
sku: "FumoFumo-002"
description: "Marisa Kirisame"
quantity: 15
uom: each
allocatedQuantity: 0
pickedQuantity: 0
deliveredQuantity: 0
components:
parameters:
OrderDir: # '#/components/parameters/OrderDir'
name: orderDir
in: query
description: Direction to order the results by. Only used if orderBy is not an empty string.
schema:
type: string
default: asc
enum:
- asc
- desc
Page: # '#/components/parameters/Page'
name: page
in: query
description: Page number of the results to get.
schema:
type: integer
default: 1
PerPage: # '#/components/parameters/PerPage'
name: perPage
in: query
description: Page number of the results to get.
schema:
type: integer
minimum: 20
maximum: 100
default: 20
schemas:
ErrorResponse: # '#/components/schemas/ErrorResponse'
type: object
properties:
code:
description: The code for the error.
type: string
enum:
- forbidden
- invalid_action
- invalid_object
- invalid_parameter
- invalid_parameter_missing
- not_found
- server
- unauthorized
- undefined
example: invalid_parameter
message:
description: A message describing the error.
type: string
example: Invalid value for parameter.
parameter:
description: |
The parameter that caused the error.
Only for invalid_parameter and invalid_parameter_missing errors.
type:
- string
- null
example: 'orderNumber'
PaginationMeta: # '#/components/schemas/PaginationMeta'
type: object
properties:
count:
description: Total number of objects in the result set.
type: integer
example: 70
page:
description: The page of the result set in the response.
type: integer
example: 1
perPage:
description: Number of objects per page.
type: integer
example: 20
totalPages:
description: Total number of pages in the result set.
type: integer
example: 4
Address: # '#/components/schemas/Address'
type: object
properties:
id:
example: 666
type: integer
company:
example: Aconite
type: string
name:
example: Anna Fuugo
type: string
line1:
example: 123 Home Street
type: string
line2:
example: ""
type: string
line3:
example: ""
type: string
city:
example: Phoenix
type: string
state:
example: AZ
type: string
zip:
example: 85013
type: string
country:
example: United States
type: string
countryCode:
example: US
type: string
phone:
example: 555-555-5555
type: string
code:
example: ""
type: string
verifiedStatus:
example: "awaiting"
type: string
verifiedDate:
example: ""
type: string
format: date-time
verifiedMessage:
example: ""
type: string
ClientCompact: # '#/components/schemas/ClientCompact'
type: object
properties:
id:
example: 3
type: integer
name:
example: Hardware Store
type: string
CustomerCompact: # '#/components/schemas/CustomerCompact'
type: object
properties:
id:
example: 6382
type: integer
title:
example: ""
type: string
name:
example: Anna
type: string
surname:
example: Fuugo
type: string
email:
example: email@address.com
type: string
company:
example: Aconite
type: string
accountNumber:
example: S01E07
type: string
ItemBasic: # '#/components/schemas/ItemBasic'
type: object
properties:
id:
example: 2330
type: integer
sku:
example: "FumoFumo-006"
type: string
upc:
example: ''
type: string
description:
example: "Alice Margatroid"
type: string
category:
example: "Fumo"
type: string
ItemCompact: # '#/components/schemas/ItemCompact'
type: object
properties:
id:
example: 2330
type: integer
sku:
example: "FumoFumo-006"
type: string
LocationCompact: # '#/components/schemas/LocationCompact'
type: object
properties:
id:
example: 1800
type: integer
name:
example: Isle A
type: string
SupplierCompact: # '#/components/schemas/SupplierCompact'
type: object
properties:
id:
example: 35
type: integer
name:
example: Gift
type: string
Tag: # '#/components/schemas/Tag'
type: object
properties:
id:
example: 1
type: integer
tag:
example: Expedite
type: string
note:
example: Expedite this order.
type: string
UserCompact: # '#/components/schemas/UserCompact'
type: object
properties:
id:
example: 1
type: integer
name:
example: "Mr Sparks"
type: string
WarehouseCompact: # '#/components/schemas/WarehouseCompact'
type: object
properties:
id:
example: 1
type: integer
name:
example: Main Warehouse
type: string
CustomerOrder: # '#/components/schemas/CustomerOrder'
type: object
properties:
id:
example: 10376
type: integer
orderNumber:
example: 101156
type: string
orderReference:
example: ""
type: string
customer:
allOf:
- $ref: '#/components/schemas/CustomerCompact'
client:
allOf:
- $ref: '#/components/schemas/ClientCompact'
example: null
orderedDate:
example: "2022-09-20T11:31:01-07:00"
type: string
format: date-time
createdDate:
example: "2022-09-20T11:31:01-07:00"
type: string
format: date-time
modifiedDate:
example: "2022-09-20T11:31:01-07:00"
type: string
format: date-time
orderPlaced:
example: true
type: boolean
createdBy:
allOf:
- $ref: '#/components/schemas/UserCompact'
completed:
example: false
type: boolean
completedDate:
example: ""
type: string
format: date-time
cancelled:
example: false
type: boolean
cancelledDate:
example: ""
type: string
format: date-time
cancelledReason:
example: ""
type: string
cancelledBy:
allOf:
- $ref: '#/components/schemas/UserCompact'
example: null
onHold:
example: false
type: boolean
onHoldUntil:
example: ""
type: string
format: date-time
postageAccount:
example: "sender"
type: string
buyerPaidShipping:
example: 0
type: number
shippingAddress:
allOf:
- $ref: "#/components/schemas/Address"
billingAddress:
allOf:
- $ref: "#/components/schemas/Address"
shipVia:
example: fedex_ground
type: string
shipViaPackaging:
example: ""
type: string
shipViaConfirmation:
example: direct_signature
type: string
dryIceWeight:
example: 0
type: number
packageSku:
example: ""
type: string
shipFromWarehouse:
allOf:
- $ref: '#/components/schemas/WarehouseCompact'
projectNumber:
example: ""
type: string
discountPercentage:
example: 0
type: number
orderSource:
example: REST API
type: string
internalNote:
example: ""
type: string
noteFromCustomer:
example: ""
type: string
noteToCustomer:
example: ""
type: string
notificationEmail:
example: ""
type: string
userField1:
example: ""
type: string
userField2:
example: ""
type: string
userField3:
example: ""
type: string
myList1:
example: ""
type: string
myList2:
example: ""
type: string
tags:
type: array
items:
allOf:
- $ref: '#/components/schemas/Tag'
items:
type: array
items:
$ref: '#/components/schemas/CustomerOrderItem'
example:
- id: 13664
itemId: 2306
sku: FumoFumo-002
description: Marisa Kirisame
orderQuantity: 5
uom: Each
quantity: 5
allocatedQuantity: 0
pickedQuantity: 0
price: 50
discountPercentage: 0
partOfKit: false
componentOf: 0
additionalFields: null
- id: 13665
itemId: 2330
sku: FumoFumo-006
description: Alice Margatroid
orderQuantity: 1
uom: Case
quantity: 6
allocatedQuantity: 0
pickedQuantity: 0
price: 50
discountPercentage: 0
partOfKit: false
componentOf: 0
additionalFields: null
CustomerOrderItem: # '#/components/schemas/CustomerOrderItem'
type: object
properties:
id:
example: 13664
type: integer
itemId:
example: 2306
type: integer
sku:
example: FumoFumo-002
type: string
description:
example: Marisa Kirisame
type: string
orderQuantity:
example: 5
type: integer
uom:
example: Each
type: string
quantity:
example: 5
type: integer
allocatedQuantity:
example: 0
type: integer
pickedQuantity:
example: 0
type: integer
price:
example: 50
type: number
discountPercentage:
example: 0
type: number
partOfKit:
example: false
type: boolean
componentOf:
example: 0
type: integer
additionalFields:
allOf:
- $ref: '#/components/schemas/CustomerOrderAdditionalFields'
CustomerOrderAdditionalFields: # '#/components/schemas/CustomerOrderAdditionalFields'
type: object
properties:
pickedLotNumbers:
type: array
items:
type: object
properties:
lotNumber:
type: string
quantity:
type: number
pickedExpirationDates:
type: array
items:
type: object
properties:
expirationDate:
type: date-time
quantity:
type: number
pickedLotNumbersAndExpirationDates:
type: array
items:
type: object
properties:
lotNumber:
type: string
expirationDate:
type: date-time
quantity:
type: number
pickedSerialNumbers:
type: array
items:
type: object
properties:
serial:
type: string
serialField1:
type: string
serialField2:
type: string
serialField3:
type: string
serialField4:
type: string
CustomerOrderList: # '#/components/schemas/CustomerOrderList'
type: object
properties:
customerOrders:
type: array
items:
$ref: '#/components/schemas/CustomerOrder'
example:
- id: 10376
orderNumber: "101156"
orderReference: ""
customer:
id: 6382
title: ""
name: Anna
surname: Fuugo
email: email@address.com
company: Aconite
accountNumber: S01E07
client: null
orderedDate: 2022-09-20T11:31:01-07:00
createdDate: 2022-09-20T11:31:01-07:00
modifiedDate: 2022-09-20T11:31:01-07:00
orderPlaced: true
createdBy:
id: 1
name: Mr Sparks
completed: false
completedDate: ""
cancelled: false
cancelledDate: ""
cancelledReason: ""
cancelledBy: null
onHold: false
onHoldUntil: ""
postageAccount: sender
buyerPaidShipping: 0
shippingAddress:
id: 666
company: Aconite
name: Anna Fuugo
line1: 123 Home Street
line2: ""
line3: ""
city: Phoenix
state: AZ
zip: "85013"
country: United States
countryCode: US
phone: "555-555-5555"
code: anna-test
verifiedStatus: "awaiting"
verifiedDate: ""
verifiedMessage: ""
billingAddress:
id: 666
company: Aconite
name: Anna Fuugo
line1: 123 Home Street
line2: ""
line3: ""
city: Phoenix
state: AZ
zip: "85013"
country: United States
countryCode: US
phone: "555-555-5555"
code: anna-test
verifiedStatus: "awaiting"
verifiedDate: ""
verifiedMessage: ""
shipVia: fedex_ground
shipViaPackaging: ""
shipViaConfirmation: direct_signature
dryIceWeight: 0
packageSku: ""
shipFromWarehouse:
id: 1
name: Main Warehouse
projectNumber: ""
discountPercentage: 0
orderSource: REST API
internalNote: ""
noteFromCustomer: ""
noteToCustomer: ""
notificationEmail: ""
userField1: ""
userField2: ""
userField3: ""
myList1: ""
myList2: ""
tags:
- id: 1
tag: Expedite
note: Expedite this order.
items:
- id: 13664
itemId: 2306
sku: FumoFumo-002
description: Marisa Kirisame
orderQuantity: 5
uom: Each
quantity: 5
allocatedQuantity: 0
pickedQuantity: 0
price: 50
discountPercentage: 0
partOfKit: false
componentOf: 0
additionalFields: null
- id: 13665
itemId: 2330
sku: FumoFumo-006
description: Alice Margatroid
orderQuantity: 1
uom: Case
quantity: 6
allocatedQuantity: 0
pickedQuantity: 0
price: 50
discountPercentage: 0
partOfKit: false
componentOf: 0
additionalFields: null
- ...
meta:
$ref: '#/components/schemas/PaginationMeta'
CycleCount: # '#/components/schemas/CycleCount'
type: object
properties:
id:
example: 118
type: integer
adjustment:
example: false
type: boolean
progress:
example: 100
type: number
accuracy:
example: 100
type: number
warehouse:
allOf:
- $ref: '#/components/schemas/WarehouseCompact'
createdDate:
example: "2021-02-01T10:50:30-07:00"
type: string
format: date-time
createdBy:
allOf:
- $ref: '#/components/schemas/UserCompact'
claimedBy:
allOf:
- $ref: '#/components/schemas/UserCompact'
completed:
example: true
type: boolean
completedDate:
example: "2021-02-01T12:50:30-07:00"
type: string
format: date-time
completedBy:
allOf:
- $ref: '#/components/schemas/UserCompact'
approved:
example: true
type: boolean
approvedDate:
example: "2021-02-02T10:50:30-07:00"
type: string
format: date-time
approvedBy:
allOf:
- $ref: '#/components/schemas/UserCompact'
locations:
type: array
items:
$ref: '#/components/schemas/CycleCountLocation'
CycleCountLocation: # '#/components/schemas/CycleCountLocation'
type: object
properties:
id:
example: 150
type: integer
location:
allOf:
- $ref: '#/components/schemas/LocationCompact'
accuracy:
example: 100
type: number
completed:
example: true
type: boolean
completedDate:
example: "2021-02-01T12:50:30-07:00"
type: string
format: date-time
completedBy:
allOf:
- $ref: '#/components/schemas/UserCompact'
approved:
example: true
type: boolean
approvedDate:
example: "2021-02-02T10:50:30-07:00"
type: string
format: date-time
approvedBy:
allOf:
- $ref: '#/components/schemas/UserCompact'
CycleCountList: # '#/components/schemas/CycleCountList'
type: object
properties:
cycleCounts:
type: array
items:
$ref: '#/components/schemas/CycleCount'
meta:
allOf:
- $ref: '#/components/schemas/PaginationMeta'
example:
count: 1
page: 1
perPage: 20
totalPages: 1
CycleCountAdjustment: # '#/components/schemas/CycleCountAdjustment'
type: object
properties:
item:
allOf:
- $ref: '#/components/schemas/ItemCompact'
warehouse:
allOf:
- $ref: '#/components/schemas/WarehouseCompact'
inventory:
type: array
items:
type: object
properties:
location:
allOf:
- $ref: '#/components/schemas/LocationCompact'
expected:
type: integer
serialNumber:
type: string
lotNumber:
type: string
expirationDate:
type: string
example:
- location:
id: 1502
name: Shelf A
expected: 9964
serialNumber: null
lotNumber: null
expirationDate: null
- location:
id: 1498
name: Shelf B
expected: 10
serialNumber: null
lotNumber: null
expirationDate: null
InventoryList: # '#/components/schemas/InventoryList'
type: object
properties:
inventory:
type: array
items:
type: object
properties:
item:
allOf:
- $ref: '#/components/schemas/ItemBasic'
client:
allOf:
- $ref: '#/components/schemas/ClientCompact'
inStock:
type: integer
allocated:
type: integer
sellable:
type: integer
underPar:
type: integer
inbound:
type: integer
meta:
$ref: '#/components/schemas/PaginationMeta'
example:
inventory:
- item:
id: 2306
sku: "FumoFumo-002"
upc: ""
description: "Marisa Kirisame"
category: "Fumo"
client: null
inStock: 8226
allocated: 43
sellable: 8176
underPar: 0
inbound: 65
- item:
id: 2330
sku: "FumoFumo-006"
upc: ""
description: "Alice Margatroid"
category: "Fumo"
client: null
inStock: 9974
allocated: 72
sellable: 9895
underPar: 0
inbound: 10
InventoryKitList: # '#/components/schemas/InventoryKitList'
type: object
properties:
inventory:
type: array
items:
type: object
properties:
item:
allOf:
- $ref: '#/components/schemas/ItemBasic'
client:
allOf:
- $ref: '#/components/schemas/ClientCompact'
buildable:
type: integer
meta:
$ref: '#/components/schemas/PaginationMeta'
example:
inventory:
- item:
id: 1932
sku: "KITM1"
upc: ""
description: "Kit Master 1"
category: "Kits"
client: null
buildable: 6
- item:
id: 2316
sku: "KML-01"
upc: ""
description: "Kit Master Level One"
category: "Kits"
client: null
buildable: 0
InventoryAssemblyList: # '#/components/schemas/InventoryAssemblyList'
type: object
properties:
inventory:
type: array
items:
type: object
properties:
item:
allOf:
- $ref: '#/components/schemas/ItemBasic'
client:
allOf:
- $ref: '#/components/schemas/ClientCompact'
inStock:
type: integer
allocated:
type: integer
sellable:
type: integer
underPar:
type: integer
buildable:
type: integer
meta:
$ref: '#/components/schemas/PaginationMeta'
example:
inventory:
- item:
id: 2733
sku: "AS-01"
upc: ""
description: "Assembly Main"
category: "Assembly"
client: null
inStock: 10
allocated: 0
sellable: 10
underPar: 0
buildable: 20
- item:
id: 2409
sku: "LEG-00"
upc: ""
description: "The Legacy"
category: "Assembly"
client: null
inStock: 0
allocated: 0
sellable: 0
underPar: 0
buildable: 0
InventoryItemList: # '#/components/schemas/InventoryItemList'
type: object
properties:
inventory:
type: array
items:
type: object
properties:
item:
allOf:
- $ref: '#/components/schemas/ItemBasic'
client:
allOf:
- $ref: '#/components/schemas/ClientCompact'
inStock:
type: integer
lotNumber:
type: string
expirationDate:
type: date-time
meta:
$ref: '#/components/schemas/PaginationMeta'
example:
inventory:
- item:
id: 1853
sku: "lot01"
upc: ""
description: "Lot Item 01"
category: "Lots"
client: null
inStock: 5
lotNumber: "001"
expirationDate: ""
- item:
id: 1853
sku: "lot01"
upc: ""
description: "Lot Item 01"
category: "Lots"
client: null
inStock: 16
lotNumber: "005"
expirationDate: ""
InventorySerialList: # '#/components/schemas/InventorySerialList'
type: object
properties:
inventory:
type: array
items:
type: object
properties:
item:
allOf:
- $ref: '#/components/schemas/ItemBasic'
client:
allOf:
- $ref: '#/components/schemas/ClientCompact'
serials:
type: array
items:
type: object
properties:
serial:
type: string
serialField1:
type: string
serialField2:
type: string
serialField3:
type: string
serialField4:
type: string
example:
inventory:
- item:
id: 1846
sku: "serial01"
upc: ""
description: "Serial 01"
category: "Serials"
client: null
serials:
- serial: "01002"
serialField1: ""
serialField2: ""
serialField3: ""
serialField4: ""
- serial: "01003"
serialField1: ""
serialField2: ""
serialField3: ""
serialField4: ""
- serial: "01004"
serialField1: ""
serialField2: ""
serialField3: ""
serialField4: ""
- item:
id: 1945
sku: "serial02"
upc: ""
description: "Serial 02"
category: "Serials"
client: null
serials:
- serial: "02005"
serialField1: ""
serialField2: ""
serialField3: ""
serialField4: ""
- serial: "02006"
serialField1: ""
serialField2: ""
serialField3: ""
serialField4: ""
- serial: "02007"
serialField1: ""
serialField2: ""
serialField3: ""
serialField4: ""
InventoryMoveResponse: # '#/components/schemas/InventoryMoveResponse'
type: object
properties:
hasErrors:
description: True if any destinations had at least one error.
type: boolean
successfulDestinations:
description: Associative array of destinations that had no errors. Indexed by their index from the request.
type: array
items:
type: object
properties:
error:
description: The error if there was an issue with the destination location.
allOf:
- $ref: '#/components/schemas/ErrorResponse'
successfulItems:
description: Associative array of successful item movements. Indexed by their index from the request.
type: array
failedItems:
description: Associative array of failed item movements. Indexed by their index from the request.
type: array
items:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
failedDestinations:
description: Associative array of destinations that had at least one error. Indexed by their index from the request.
type: array
items:
type: object
properties:
error:
description: The error if there was an issue with the destination location.
allOf:
- $ref: '#/components/schemas/ErrorResponse'
successfulItems:
description: Associative array of successful item movements. Indexed by their index from the request.
type: array
failedItems:
description: Associative array of failed item movements. Indexed by their index from the request.
type: array
items:
allOf:
- $ref: '#/components/schemas/ErrorResponse'
example:
hasErrors: true
successfulDestinations:
1:
error: null
successfulItems:
0: true
failedItems: []
failedDestinations:
0:
error: null
successfulItems:
0: true
failedItems:
1:
code: "invalid_parameter"
message: "Quantity exceeds movable quantity at location."
parameter: "quantity"
Item: # '#/components/schemas/Item'
type: object
properties:
id:
type: integer
sku:
type: string
upc:
type: string
description:
type: string
category:
type: string
client:
allOf:
- $ref: '#/components/schemas/ClientCompact'
baseUom:
type: string
unitCost:
type: number
leadTime:
type: integer
defaultEconOrder:
type: integer
rrp:
type: number
price:
type: number
active:
type: boolean
kit:
type: boolean
assembly:
type: boolean
perishable:
type: boolean
trackLot:
type: boolean
serialized:
type: boolean
nonInventory:
type: boolean
weight:
type: number
storageLength:
type: number
storageWidth:
type: number
storageHeight:
type: number
storageVolume:
type: number
safetyStock:
type: integer
userField1:
type: string
userField2:
type: string
userField3:
type: string
userField4:
type: string
userField5:
type: string
userField6:
type: string
format: date-time
createdDate:
type: string
format: date-time
modifiedDate:
type: string
format: date-time
notes:
type: string
example:
id: 2330
sku: "FumoFumo-006"
upc: ""
description: "Alice Margatroid"
category: "Fumo"
client: null
baseUom: "Each"
unitCost: 10
leadTime: 0
defaultEconOrder: 0
rrp: 0
price: 50
active: true
kit: false
assembly: false
perishable: false
trackLot: false
serialized: false
nonInventory: false
weight: 0
storageLength: 0
storageWidth: 0
storageHeight: 0
storageVolume: 0
safetyStock: 0
userField1: ""
userField2: ""
userField3: ""
userField4: ""
userField5: ""
userField6: ""
createdDate: "2017-08-07T10:45:53-07:00"
modifiedDate: "2017-08-07T10:45:53-07:00"
notes: ""
ItemWithAdditional: # '#/components/schemas/ItemWithAdditional'
allOf:
- $ref: '#/components/schemas/Item'
- type: object
properties:
additionalFields:
allOf:
- $ref: '#/components/schemas/ItemAdditionalFields'
ItemAdditionalFields: # '#/components/schemas/ItemAdditionalFields'
type: object
properties:
units:
type: array
items:
type: object
properties:
name:
type: string
quantity:
type: integer
assemblyBom:
type: array
items:
type: object
properties:
id:
type: integer
sku:
type: string
uom:
type: string
quantity:
type: integer
kitBom:
type: array
items:
type: object
properties:
id:
type: integer
sku:
type: string
uom:
type: string
quantity:
type: integer
image:
type: string
example:
units:
- name: "Each"
quantity: 1
- name: "Case"
quantity: 6
ItemList: # '#/components/schemas/ItemList'
type: object
properties:
items:
type: array
items:
title: "Item"
$ref: '#/components/schemas/ItemWithAdditional'
meta:
$ref: '#/components/schemas/PaginationMeta'
example:
items:
- id: 2306
sku: "FumoFumo-002"
upc: ""
description: "Marisa Kirisame"
category: "Fumo"
client: null
baseUom: "Each"
unitCost: 10
leadTime: 0
defaultEconOrder: 0
rrp: 0
price: 50
active: true
kit: false
assembly: false
perishable: false
trackLot: false
serialized: false
nonInventory: false
weight: 0
storageLength: 0
storageWidth: 0
storageHeight: 0
storageVolume: 0
safetyStock: 0
userField1: ""
userField2: ""
userField3: ""
userField4: ""
userField5: ""
userField6: ""
createdDate: "2017-08-06T10:45:53-07:00"
modifiedDate: "2017-08-06T10:45:53-07:00"
notes: ""
additionalFields:
units:
- name: "Each"
quantity: 1
- id: 2330
sku: "FumoFumo-006"
upc: ""
description: "Alice Margatroid"
category: "Fumo"
client: null
baseUom: "Each"
unitCost: 10
leadTime: 0
defaultEconOrder: 0
rrp: 0
price: 50
active: true
kit: false
assembly: false
perishable: false
trackLot: false
serialized: false
nonInventory: false
weight: 0
storageLength: 0
storageWidth: 0
storageHeight: 0
storageVolume: 0
safetyStock: 0
userField1: ""
userField2: ""
userField3: ""
userField4: ""
userField5: ""
userField6: ""
createdDate: "2017-08-07T10:45:53-07:00"
modifiedDate: "2017-08-07T10:45:53-07:00"
notes: ""
additionalFields:
units:
- name: "Each"
quantity: 1
- name: "Case"
quantity: 6
meta:
count: 2
page: 1
perPage: 20
totalPages: 1
PurchaseOrder: # '#/components/schemas/PurchaseOrder'
type: object
properties:
id:
example: 333
type: integer
orderNumber:
example: "PO#375"
type: string
supplier:
allOf:
- $ref: '#/components/schemas/SupplierCompact'
warehouse:
allOf:
- $ref: '#/components/schemas/WarehouseCompact'
client:
allOf:
- $ref: '#/components/schemas/ClientCompact'
example: null
user:
allOf:
- $ref: '#/components/schemas/UserCompact'
draft:
example: true
type: boolean
completed:
example: false
type: boolean
deleted:
example: false
type: boolean
createdDate:
example: "2020-12-02T10:24:26-07:00"
type: string
format: date-time
preparedDate:
example: ""
type: string
format: date-time
requiredByDate:
example: "2020-12-02"
type: string
format: date
projectNumber:
example: ""
type: string
notes:
example: ""
type: string
shipMethod:
example: ""
type: string
terms:
example: ""
type: string
userField1:
example: ""
type: string
userField2:
example: ""
type: string
userField3:
example: ""
type: string
items:
type: array
items:
$ref: '#/components/schemas/PurchaseOrderItem'
example:
- id: 456
itemId: 2306
sku: FumoFumo-002
description: Marisa Kirisame
quantity: 10
uom: Each
unitCost: 20
- id: 457
itemId: 2330
sku: FumoFumo-006
description: Alice Margatroid
quantity: 10
uom: Each
unitCost: 20
PurchaseOrderItem: # '#/components/schemas/PurchaseOrderItem'
type: object
properties:
id:
type: integer
itemId:
type: integer
sku:
type: string
description:
type: string
quantity:
type: integer
uom:
type: string
unitCost:
type: number
example:
id: 123
itemId: 2306
sku: FumoFumo-006
description: Alice Margatroid
quantity: 10
uom: Each
unitCost: 20
PurchaseOrderList: # '#/components/schemas/PurchaseOrderList'
type: object
properties:
purchaseOrders:
type: array
items:
$ref: '#/components/schemas/PurchaseOrder'
example:
- id: 333
orderNumber: "PO#375"
supplier:
id: 35
name: Gift
warehouse:
id: 1
name: Main Warehouse
client: name
user:
id: 1
name: Mr Sparks
draft: true
completed: false
deleted: false
createdDate: "20220-12-02T10:24:26-07:00"
preparedDate: ""
requiredByDate: "2020-12-02"
projectNumber: ""
notes: ""
shipMethod: ""
terms: ""
userField1: ""
userField2: ""
userField3: ""
items:
- id: 456
itemId: 2306
sku: FumoFumo-002
description: Marisa Kirisame
quantity: 10
uom: Each
unitCost: 20
- id: 457
itemId: 2330
sku: FumoFumo-006
description: Alice Margatroid
quantity: 10
uom: Each
unitCost: 20
- id: 334
orderNumber: "PO#376"
supplier:
id: 35
name: Gift
warehouse:
id: 1
name: Main Warehouse
client: name
user:
id: 1
name: Mr Sparks
draft: true
completed: false
deleted: false
createdDate: "20220-12-04T12:09:37-07:00"
preparedDate: ""
requiredByDate: "2020-12-05"
projectNumber: ""
notes: ""
shipMethod: ""
terms: ""
userField1: ""
userField2: ""
userField3: ""
items:
- id: 458
itemId: 2305
sku: FumoFumo-001
description: Reimu Hakurei
quantity: 10
uom: Each
unitCost: 20
- id: 459
itemId: 2308
sku: FumoFumo-004
description: Remilia Scarlet
quantity: 5
uom: Each
unitCost: 20
- ...
meta:
$ref: '#/components/schemas/PaginationMeta'
TransferOrder: # '#/components/schemas/TransferOrder'
type: object
properties:
id:
type: integer
originWarehouse:
allOf:
- $ref: '#/components/schemas/WarehouseCompact'
destinationWarehouse:
allOf:
- $ref: '#/components/schemas/WarehouseCompact'
draft:
type: boolean
completed:
type: boolean
requiredBy:
type: string
format: date-time
createdDate:
type: string
format: date-time
preparedBy:
allOf:
- $ref: '#/components/schemas/UserCompact'
preparedDate:
type: string
format: date-time
shipVia:
type: string
deleted:
type: boolean
deletedBy:
allOf:
- $ref: '#/components/schemas/UserCompact'
deletedDate:
type: string
format: date-time
cancelled:
type: boolean
cancelledBy:
allOf:
- $ref: '#/components/schemas/UserCompact'
cancelledDate:
type: string
format: date-time
cancelledReason:
type: string
notes:
type: string
tags:
type: array
items:
allOf:
- $ref: '#/components/schemas/Tag'
items:
type: array
items:
allOf:
- $ref: '#/components/schemas/TransferOrderItem'
example:
id: 78
originWarehouse:
id: 1
name: "Main Warehouse"
destinationWarehouse:
id: 2
name: "Second Warehouse"
draft: false
completed: false
requiredBy: "2023-07-30T12:00:00-07:00"
createdDate: "2023-07-26T16:36:47-07:00"
preparedBy:
id: 1
name: Mr Sparks
preparedDate: "2023-07-26T17:23:18-07:00"
shipVia: "fedex_ground"
deleted: false
deletedBy: null
deletedDate: ""
cancelled: false
cancelledBy: null
cancelledDate: ""
cancelledReason: ""
notes: "Monthly transfer"
tags: []
items:
- id: 96
itemId: 2330
sku: "FumoFumo-006"
description: "Alice Margatroid"
quantity: 5
uom: each
allocatedQuantity: 0
pickedQuantity: 0
deliveredQuantity: 0
- id: 97
itemId: 2306
sku: "FumoFumo-002"
description: "Marisa Kirisame"
quantity: 5
uom: each
allocatedQuantity: 0
pickedQuantity: 0
deliveredQuantity: 0
TransferOrderItem: # '#/components/schemas/TransferOrderItem'
type: object
properties:
id:
type: integer
itemId:
type: integer
sku:
type: string
description:
type: string
quantity:
type: integer
uom:
type: string
allocatedQuantity:
type: integer
pickedQuantity:
type: integer
deliveredQuantity:
type: integer
example:
id: 96
itemId: 2330
sku: "FumoFumo-006"
description: "Alice Margatroid"
quantity: 5
uom: each
allocatedQuantity: 0
pickedQuantity: 0
deliveredQuantity: 0
TransferOrderList: # '#/components/schemas/TransferOrderList'
type: object
properties:
transferOrders:
type: array
items:
allOf:
- $ref: '#/components/schemas/TransferOrder'
meta:
$ref: '#/components/schemas/PaginationMeta'
example:
transferOrders:
- id: 78
originWarehouse:
id: 1
name: "Main Warehouse"
destinationWarehouse:
id: 2
name: "Second Warehouse"
draft: false
completed: false
requiredBy: "2023-07-30T12:00:00-07:00"
createdDate: "2023-07-26T16:36:47-07:00"
preparedBy:
id: 1
name: Mr Sparks
preparedDate: "2023-07-26T17:23:18-07:00"
shipVia: "fedex_ground"
deleted: false
deletedBy: null
deletedDate: ""
cancelled: false
cancelledBy: null
cancelledDate: ""
cancelledReason: ""
notes: "Monthly transfer"
tags: []
items:
- id: 96
itemId: 2330
sku: "FumoFumo-006"
description: "Alice Margatroid"
quantity: 5
uom: each
allocatedQuantity: 0
pickedQuantity: 0
deliveredQuantity: 0
- id: 97
itemId: 2306
sku: "FumoFumo-002"
description: "Marisa Kirisame"
quantity: 5
uom: each
allocatedQuantity: 0
pickedQuantity: 0
deliveredQuantity: 0
meta:
count: 1
page: 1
perPage: 20
totalPages: 1
requestBodies:
CustomerOrderCreate: # '#/components/requestBodies/CustomerOrderCreate'
content:
application/json:
schema:
type: object
required:
- customer
- shippingAddress
- billingAddress
- items
properties:
orderNumber:
description: Order number for the customer order. If blank, one will automatically be generated.
type: string
clientId:
description: Id of the client that the customer order is for. Defaults to the user's client id.
type: integer
clientName:
description: Name of the client that the customer order is for. Ignored if clientId is provided and is nonzero.
type: string
customer:
description: Customer who placed the order.
type: object
properties:
id:
description: |
Id of the customer. If none is provided, will attempt to find an existing customer based on the other
customer fields and shipping address. Other fields not used if id is provided.
type: integer
title:
type: string
name:
description: A combination of name and surname is required if the customer is new.
type: string
surname:
description: A combination of name and surname is required if the customer is new.
type: string
email:
type: string
company:
type: string
accountNumber:
description: Will only match a customer on this field if provided.
type: string
shippingAddress:
description: Address the customer order is being shipped to. countryCode and at least one line is required for new addresses.
type: object
properties:
id:
description: Id of the shipping address. Other fields will not be used if provided.
type: integer
code:
description: Used to find an existing address. Other fields not used if an address is successfully found.
type: string
company:
type: string
name:
type: string
line1:
type: string
line2:
type: string
line3:
type: string
city:
type: string
state:
type: string
zip:
type: string
countryCode:
type: string
phone:
type: string
billingAddress:
description: Address the customer order is being billed to. countryCode and at least one line is required for new addresses.
type: object
properties:
sameAsShipping:
description: True if the billing address is the same as the shipping address. No other fields will be used if true.
type: boolean
id:
description: Id of the billing address. Other fields will not be used if provided.
type: integer
code:
description: Used to find an existing address. Other fields not used if an address is successfully found.
type: string
company:
type: string
name:
type: string
line1:
type: string
line2:
type: string
line3:
type: string
city:
type: string
state:
type: string
zip:
type: string
countryCode:
type: string
phone:
type: string
shipFromWarehouseId:
description: Id of the warehouse the ordered items will be allocated from. If no warehouse parameters are given, then
the user's current warehouse will be used.
type: integer
shipFromWarehouseName:
description: Name of the warehouse the ordered items will be allocated from. Ignored if warehouseId is provided.
type: string
shipVia:
description: Code of the carrier or service to use for shipping.
type: string
shipViaPackaging:
description: Code of the package type to use for shipping.
type: string
shipViaConfirmation:
description: Code of the confirmation type to use for shipping.
type: string
postageAccount:
description: Who to bill for shipping.
default: sender
type: string
enum:
- sender
- client
- recipient
postageAccountNumber:
description: If provided, attempts to associate the account number with the ship via carrier. Not needed if the account number is already on file.
type: string
orderReference:
type: string
projectNumber:
type: string
internalNote:
type: string
noteFromCustomer:
type: string
noteToCustomer:
type: string
notificationEmail:
type: string
userField1:
type: string
userField2:
type: string
userField3:
type: string
myList1:
type: string
myList2:
type: string
buyerPaidShipping:
type: number
dryIceWeight:
type: number
packageSku:
type: string
discountPercentage:
description: If not provided, the customer's default discount percentage will be used.
type: number
items:
description: Items being ordered by the customer.
type: array
items:
type: object
required:
- itemId
- sku
- quantity
properties:
itemId:
description: Id of the item master.
type: integer
sku:
description: SKU of the item master. Ignored if itemId is provided.
type: string
quantity:
description: How many are being ordered. Must be nonzero.
type: integer
uom:
description: The unit of measurement being ordered. Uses the item master's default uom if blank.
type: string
price:
description: The price which the item is beng sold for. If not provided, the item master's price is used.
type: number
discountPercentage:
description: Percentage discount to be applied only to this line item. The customer order's discount percentage will be applied on top of this one.
type: number
createNew:
description: If sku is provided, true to create a new item instead of returning an error if no item matches the sku.
type: boolean
default: false
saveAsDraft:
description: True to save the customer order as a draft and finalize at a later time.
type: boolean
default: false
skipAutomation:
description: True to skip all automation rules.
type: boolean
default: false
example:
orderNumber: "101156"
clientId: 0
customer:
accountNumber: S01E07
shippingAddress:
id: 666
billingAddress:
sameAsShipping: true
shipFromWarehouseName: Main Warehouse
shipVia: fedex_ground
shipViaConfirmation: direct_signature
postageAccount: sender
items:
- itemId: 2306
quantity: 5
price: 50
- sku: FumoFumo-006
quantity: 1
uom: Case
CustomerOrderEdit: # '#/components/requestBodies/CustomerOrderEdit'
content:
application/json:
schema:
type: object
required:
- customer
- shippingAddress
- billingAddress
- items
properties:
clientId:
description: Id of the client that the customer order is for. Defaults to the user's client id. Client cannot be changed if the customer order has been partial shipped.
type: integer
clientName:
description: Name of the client that the customer order is for. Ignored if clientId is provided and is nonzero.
type: string
customer:
description: Customer who placed the order.
type: object
properties:
id:
description: |
Id of the customer. If none is provided, will attempt to find an existing customer based on the other
customer fields and shipping address. Other fields not used if id is provided.
type: integer
title:
type: string
name:
description: A combination of name and surname is required if the customer is new.
type: string
surname:
description: A combination of name and surname is required if the customer is new.
type: string
email:
type: string
company:
type: string
accountNumber:
description: Will only match a customer on this field if provided.
type: string
shippingAddress:
description: Address the customer order is being shipped to. countryCode and at least one line is required for new addresses.
type: object
properties:
id:
description: Id of the shipping address. Other fields will not be used if provided.
type: integer
code:
description: Used to find an existing address. Other fields not used if an address is successfully found.
type: string
company:
type: string
name:
type: string
line1:
type: string
line2:
type: string
line3:
type: string
city:
type: string
state:
type: string
zip:
type: string
countryCode:
type: string
phone:
type: string
billingAddress:
description: Address the customer order is being billed to. countryCode and at least one line is required for new addresses.
type: object
properties:
sameAsShipping:
description: True if the billing address is the same as the shipping address. No other fields will be used if true.
type: boolean
id:
description: Id of the billing address. Other fields will not be used if provided.
type: integer
code:
description: Used to find an existing address. Other fields not used if an address is successfully found.
type: string
company:
type: string
name:
type: string
line1:
type: string
line2:
type: string
line3:
type: string
city:
type: string
state:
type: string
zip:
type: string
countryCode:
type: string
phone:
type: string
shipFromWarehouseId:
description: Id of the warehouse the ordered items will be allocated from. If no warehouse parameters are given, then
the user's current warehouse will be used.
type: integer
shipFromWarehouseName:
description: Name of the warehouse the ordered items will be allocated from. Ignored if warehouseId is provided.
type: string
shipVia:
description: Code of the carrier or service to use for shipping.
type: string
shipViaPackaging:
description: Code of the package type to use for shipping.
type: string
shipViaConfirmation:
description: Code of the confirmation type to use for shipping.
type: string
postageAccount:
description: Who to bill for shipping.
default: sender
type: string
enum:
- sender
- client
- recipient
postageAccountNumber:
description: If provided, attempts to associate the account number with the ship via carrier. Not needed if the account number is already on file.
type: string
orderReference:
type: string
projectNumber:
type: string
internalNote:
type: string
noteFromCustomer:
type: string
noteToCustomer:
type: string
notificationEmail:
type: string
userField1:
type: string
userField2:
type: string
userField3:
type: string
myList1:
type: string
myList2:
type: string
buyerPaidShipping:
type: number
dryIceWeight:
type: number
packageSku:
type: string
discountPercentage:
description: If not provided, the customer's default discount percentage will be used.
type: number
items:
description: Items being ordered by the customer. Exclude an existing line item to leave it unchanged.
type: array
items:
type: object
required:
- id
- itemId
- sku
- quantity
properties:
id:
description: Id of the customer order line item. Must be provided to edit an existing line item.
If not provided, then the item will be added as a new line item to the customer order.
type: integer
itemId:
description: Id of the item master.
type: integer
sku:
description: SKU of the item master. Ignored if itemId is provided.
type: string
quantity:
description: How many are being ordered. Set the quantity to zero if you wish to remove the line item.
type: integer
uom:
description: The unit of measurement being ordered. Uses the item master's default uom if blank.
type: string
price:
description: The price which the item is beng sold for. If not provided, the item master's price is used.
type: number
discountPercentage:
description: Percentage discount to be applied only to this line item. The customer order's discount percentage will be applied on top of this one.
type: number
createNew:
description: If sku is provided, true to create a new item instead of returning an error if no item matches the sku.
type: boolean
default: false
skipAutomation:
description: True to skip all automation rules.
type: boolean
default: false
example:
clientId: 0
customer:
id: 6382
shippingAddress:
id: 666
billingAddress:
sameAsShipping: true
shipFromWarehouseName: Main Warehouse
shipVia: fedex_ground
shipViaConfirmation: direct_signature
postageAccount: sender
internalNote: Has been edited
items:
- id: 13665
itemId: 2330
quantity: 2
uom: Case
CustomerOrderCancel: # '#/components/requestBodies/CustomerOrderCancel'
content:
application/json:
schema:
type: object
properties:
cancelReason:
description: The reason for cancellation.
type: string
example:
cancelReason: "Customer requested cancellation."
CycleCountAdjustmentCreate: # '#/components/requestBodies/CycleCountAdjustmentCreate'
content:
application/json:
schema:
type: object
required:
- itemId
- itemSku
- inventory
properties:
itemId:
description: Id of the item whose stock is being adjusted.
type: integer
itemSku:
description: SKU of the item whose stock is being adjusted. Ignored if itemId is provided.
type: string
warehouseId:
description: Id of the warehouse the adjusted stock is in. If no warehouse parameters are given, then
the user's current warehouse will be used.
type: integer
warehouseName:
description: Name of the warehouse the adjusted stock is in. If no warehouse parameters are given, then
the user's current warehouse will be used.
type: string
clientId:
description: Id of the client that the item belongs to. Defaults to the user's client id.
type: integer
clientName:
description: Name of the client that the item belongs to. Ignored if clientId is provided and is nonzero.
type: string
note:
description: Note to attach to this adjustment.
type: string
inventory:
description: List of reported inventory levels for the item. Inventory not reported is assumed to be 100% correct.
type: array
items:
type: object
required:
- locationId
- locationName
properties:
locationId:
description: Id of the location the inventory is at.
type: integer
locationName:
description: Name of the location the inventory is at. Ignored if locationId is provided.
type: string
found:
description: Item quantity found at the location.
type: integer
default: 0
damaged:
description: Amount of the found inventory that is damaged.
type: integer
default: 0
serialNumber:
description: Serial number of an item that is expected to be at this location. Only used if the item is serialized.
type: string
lotNumber:
description: Lot number of an item(s) that is expected to be at this location. Only used if the item tracks lots.
type: string
expirationDate:
description: Expiration date of an item(s) that is expected to be at this location. Only used if the item is perishable.
type: string
format: date-time
example:
itemId: 2330
warehouseId: 1
clientId: 0
note: "Adjusting inventory levels."
inventory:
- locationId: 1502
found: 9500
serialNumber: null
lotNumber: null
expirationDate: null
- locationId: 1498
found: 5
serialNumber: null
lotNumber: null
expirationDate: null
InventoryMove: # '#/components/requestBodies/InventoryMove'
content:
application/json:
schema:
type: object
required:
- originLocationId
- originLocationName
properties:
warehouseId:
description: Id of the warehouse the inventory is in. If no warehouse parameters are given, then
the user's current warehouse will be used.
type: integer
warehouseName:
description: Name of the warehouse the inventory is in. If no warehouse parameters are given, then
the user's current warehouse will be used.
type: string
originLocationId:
description: Id of the location the inventory is being moved from.
type: integer
originLocationName:
description: Name of the location the inventory is being moved from. Ignored if originLocationId is provided.
type: string
note:
description: A note about the inventory moves.
type: string
destinations:
description: List of inventory moves to be made.
type: array
items:
type: object
required:
- locationId
- locationName
properties:
locationId:
description: Id of the location the inventory is being moved to.
type: integer
locationName:
description: Name of the location the inventory is being moved to. Ignored if locationId is provided.
type: string
items:
type: array
items:
type: object
required:
- itemId
- sku
properties:
itemId:
description: Id of the item whose stock is being moved.
type: integer
sku:
description: SKU of the item whose stock is being moved. Ignored if itemId is provided.
type: string
quantity:
description: The amount of stock to be moved.
type: string
moveAll:
description: True to ignore quantity and move all stock of the item at the location.
type: boolean
lotNumber:
description: Only move stock with this lot number. Only used if the item tracks lots.
type: string
expirationDate:
description: Only move stock with this expiration date. Only used fi the item is perishable.
type: string
format: date-time
serialNumbers:
description: List of serial numbers being moved. Unless moveAll is true, this is required if item is serialized and must match quantity.
type: array
example:
warehouseId: 1
originLocationId: 1498
destinations:
- locationId: 1502
items:
- itemId: 2305
moveAll: true
- itemId: 2306
quantity: 10
- locationId: 1503
items:
- itemId: 2306
quantity: 15
ItemCreate: # '#/components/requestBodies/ItemCreate'
content:
application/json:
schema:
type: object
required:
- sku
properties:
sku:
description: The item's SKU.
type: string
clientId:
description: Id of the client that the item belongs to. Defaults to the user's client id.
type: integer
clientName:
description: Name of the client that the item belongs to. Ignored if clientId is provided and is nonzero.
type: string
upc:
description: The item's UPC.
type: string
description:
description: The item's description.
type: string
category:
description: The item's category to be grouped by.
type: string
baseUom:
description: The item's base unit of measurement.
type: string
unitCost:
description: How much the item costs you to stock.
type: number
leadTime:
description: The item's lead time.
type: integer
defaultEconOrder:
description: The item's default order quantity for purchase orders.
type: integer
orderLimit:
description: The item's order limit.
type: integer
rrp:
description: The item's recommended retail price.
type: number
price:
description: How much the item is sold for.
type: number
active:
description: True if the item is active. Inactive items are hidden from most processes.
type: boolean
default: true
kit:
description: True if the item is a kit item made up of other items. An item cannot both be a kit and an assembly item.
type: boolean
default: false
assembly:
description: True if the item is stocked by combining other items together. An item cannot both be a kit and an assembly item.
type: boolean
default: false
perishable:
description: True if the item has an expiration date. A non-inventory or serialized item cannot also be this.
type: boolean
default: false
trackLot:
description: True if the item is tracked by lot numbers. A non-inventory or serialized item cannot also be this.
type: boolean
default: false
serialized:
description: True if the item is tracked by serial numbers. A non-inventory item cannot be serialized.
type: boolean
default: false
nonInventory:
description: True if the item does not have inventory. A kit or assembly cannot also be non-inventory.
type: boolean
default: false
weight:
description: The item's weight;
type: number
storageLength:
description: Part of the dimensions the item takes to store.
type: number
storageWidth:
description: Part of the dimensions the item takes to store.
type: number
storageHeight:
description: Part of the dimensions the item takes to store.
type: number
safetyStock:
description: How much stock should be withheld when reporting stock levels to marketplace integrations.
type: integer
userField1:
description: User defined field for the item.
type: string
userField2:
description: User defined field for the item.
type: string
userField3:
description: User defined field for the item.
type: string
userField4:
description: User defined field for the item.
type: string
userField5:
description: User defined field for the item.
type: string
userField6:
description: User defined field for the item.
type: string
format: date-time
notes:
description: Notes for the item.
type: string
assignToAllWarehouses:
description: True to assign to all warehouses on creation.
type: boolean
assignToWarehouse:
description: True to assign the item to a specific warehouse.
type: boolean
warehouseId:
description: Id of the warehouse the item will be assigned to. If no warehouse parameters are given, then the user's current warehouse will be used.
type: integer
warehouseName:
description: Name of the warehouse the item will be assigned to. Ignored if warehouseId is provided.
type: string
reorderLevel:
description: Reorder level for the item's warehouse assignment.
type: integer
example:
sku: "FumoFumo-006"
upc: ""
description: "Alice Margatroid"
category: "Fumo"
clientId: null
baseUom: "Each"
unitCost: 10
leadTime: 0
defaultEconOrder: 0
orderLimit: 0
rrp: 0
price: 50
active: true
kit: false
assembly: false
perishable: false
trackLot: false
serialized: false
nonInventory: false
weight: 0
storageLength: 0
storageWidth: 0
storageHeight: 0
safetyStock: 0
userField1: ""
userField2: ""
userField3: ""
userField4: ""
userField5: ""
userField6: ""
notes: ""
assignToWarehouse: true
warehouseId: 1
reorderLevel: 10
ItemEdit: # '#/components/requestBodies/ItemEdit'
content:
application/json:
schema:
type: object
required:
- sku
properties:
sku:
description: The item's SKU.
type: string
upc:
description: The item's UPC.
type: string
description:
description: The item's description.
type: string
category:
description: The item's category to be grouped by.
type: string
baseUom:
description: The item's base unit of measurement.
type: string
unitCost:
description: How much the item costs you to stock.
type: number
leadTime:
description: The item's lead time.
type: integer
defaultEconOrder:
description: The item's default order quantity for purchase orders.
type: integer
orderLimit:
description: The item's order limit.
type: integer
rrp:
description: The item's recommended retail price.
type: number
price:
description: How much the item is sold for.
type: number
active:
description: True if the item is active. Inactive items are hidden from most processes.
type: boolean
default: true
kit:
description: True if the item is a kit item made up of other items. An item cannot both be a kit and an assembly item.
type: boolean
default: false
assembly:
description: True if the item is stocked by combining other items together. An item cannot both be a kit and an assembly item.
type: boolean
default: false
perishable:
description: True if the item has an expiration date. A non-inventory or serialized item cannot also be this.
type: boolean
default: false
trackLot:
description: True if the item is tracked by lot numbers. A non-inventory or serialized item cannot also be this.
type: boolean
default: false
serialized:
description: True if the item is tracked by serial numbers. A non-inventory item cannot be serialized.
type: boolean
default: false
nonInventory:
description: True if the item does not have inventory. A kit or assembly cannot also be non-inventory.
type: boolean
default: false
weight:
description: The item's weight;
type: number
storageLength:
description: Part of the dimensions the item takes to store.
type: number
storageWidth:
description: Part of the dimensions the item takes to store.
type: number
storageHeight:
description: Part of the dimensions the item takes to store.
type: number
safetyStock:
description: How much stock should be withheld when reporting stock levels to marketplace integrations.
type: integer
userField1:
description: User defined field for the item.
type: string
userField2:
description: User defined field for the item.
type: string
userField3:
description: User defined field for the item.
type: string
userField4:
description: User defined field for the item.
type: string
userField5:
description: User defined field for the item.
type: string
userField6:
description: User defined field for the item.
type: string
format: date-time
notes:
description: Notes for the item.
type: string
example:
sku: "FumoFumo-006"
upc: ""
description: "Alice Margatroid"
category: "Fumo"
baseUom: "Each"
unitCost: 10
leadTime: 0
defaultEconOrder: 0
orderLimit: 0
rrp: 0
price: 50
active: true
kit: false
assembly: false
perishable: false
trackLot: false
serialized: false
nonInventory: false
weight: 0
storageLength: 0
storageWidth: 0
storageHeight: 0
safetyStock: 0
userField1: ""
userField2: ""
userField3: ""
userField4: ""
userField5: ""
userField6: ""
notes: ""
PurchaseOrderCreate: # '#/components/requestBodies/PurchaseOrderCreate'
content:
application/json:
schema:
type: object
required:
- supplierId
- supplierName
properties:
supplierId:
description: Id of the supplier that is being ordered from.
type: integer
supplierName:
description: Name of the supplier that is being ordered from. Ignored if supplierId is provided.
type: string
warehouseId:
description: Id of the warehouse the items will be delivered to. If no warehouse parameters are given, then
the user's current warehouse will be used.
type: integer
warehouseName:
description: Name of the warehouse the items will be delivered to. Ignored if warehouseId is provided.
type: string
clientId:
description: Id of the client that the purchase order is for. Defaults to the user's client id.
type: integer
clientName:
description: Name of the client that the purchase order is for. Ignored if clientId is provided and is nonzero.
type: string
orderNumber:
description: Order number for the purchase order. If blank, one will automatically be generated.
type: string
draft:
description: True if the purchase order should be created as a draft to allow future editing.
type: boolean
default: false
requiredByDate:
type: string
format: date
default: Today
projectNumber:
type: string
notes:
type: string
shipMethod:
type: string
terms:
type: string
userField1:
type: string
userField2:
type: string
userField3:
type: string
purchasedForClient:
description: Can only be true if the purchase order is for a client.
type: boolean
default: false
items:
description: Items being ordered. Can be empty, but if so then will be created as a draft regardless of draft's value.
type: array
items:
type: object
required:
- itemId
- sku
- description
- quantity
properties:
itemId:
description: Id of the item master.
type: integer
sku:
description: SKU of the item master. Ignored if itemId is provided.
type: string
description:
description: Description of the item. Defaults to the item master's description if not provided, but an error will be returned if the item master is also lacking a description.
type: string
quantity:
description: How many are being ordered. Must be nonzero.
type: integer
uom:
description: The unit of measurement being ordered. Uses the item master's default uom if blank.
type: string
unitCost:
description: Cost per unit. Defaults to the cost of the item in the supplier's catalog.
If not in the catalog, then the item master's default item cost is used.
type: number
createNew:
description: If sku is provided, true to create a new item instead of returning an error if no item matches the sku.
type: boolean
default: false
example:
supplierId: 35
warehouseId: 1
clientId: 0
draft: true
items:
- itemId: 2306
quantity: 10
- sku: FumoFumo-006
quantity: 10
PurchaseOrderEdit: # '#/components/requestBodies/PurchaseOrderEdit'
content:
application/json:
schema:
type: object
required:
- supplierId
- supplierName
properties:
supplierId:
description: Id of the supplier that is being ordered from.
type: integer
supplierName:
description: Name of the supplier that is being ordered from. Ignored if supplierId is provided.
type: string
warehouseId:
description: Id of the warehouse the items will be delivered to. If no warehouse parameters are given, then
the user's current warehouse will be used.
type: integer
warehouseName:
description: Name of the warehouse the items will be delivered to. Ignored if warehouseId is provided.
type: string
draft:
description: True if the purchase order should be created as a draft to allow future editing.
type: boolean
default: false
requiredByDate:
type: string
format: date
default: Today
projectNumber:
type: string
notes:
type: string
shipMethod:
type: string
terms:
type: string
userField1:
type: string
userField2:
type: string
userField3:
type: string
purchasedForClient:
description: Can only be true if the purchase order is for a client.
type: boolean
default: false
items:
description: Items being ordered. Exclude an existing line item to leave it unchanged.
type: array
items:
type: object
required:
- id
- itemId
- sku
- description
- quantity
properties:
id:
description: Id of the purchase order line item. Must be provided to edit an existing line item.
If not provided, then the item will be added as a new line item to the purchase order.
type: integer
itemId:
description: Id of the item master.
type: integer
sku:
description: SKU of the item master. Ignored if itemId is provided.
type: string
description:
description: Description of the item. Defaults to the item master's description if not provided, but an error will be returned if the item master is also lacking a description.
type: string
quantity:
description: How many are being ordered. Set the quantity to zero if you wish to remove the line item.
type: integer
uom:
description: The unit of measurement being ordered. Uses the item master's default uom if blank.
type: string
unitCost:
description: Cost per unit. Defaults to the cost of the item in the supplier's catalog.
If not in the catalog, then the item master's default item cost is used.
type: number
createNew:
description: If sku is provided, true to create a new item instead of returning an error if no item matches the sku.
type: boolean
default: false
example:
supplierId: 35
warehouseId: 1
draft: false
projectNumber: "new number"
notes: New note
shipMethod: Fast
terms: None
userField1: uf1E
userField2: uf2E
userField3: uf3E
items:
- id: 456
itemId: 2306
quantity: 10
- id: 457
itemId: 2330
quantity: 0
- itemId: 2305
quantity: 5
TransferOrderCreate: # '#/components/schemas/TransferOrder'
content:
application/json:
schema:
type: object
required:
- originWarehouseId
- originWarehouseName
- destinationWarehouseId
- destinationWarehouseName
- requiredBy
properties:
originWarehouseId:
description: Id of the warehouse the inventory is being transferred from.
type: integer
originWarehouseName:
description: Name of the warehouse the inventory is being transferred from. Ignored if originWarehouseId is provided.
type: string
destinationWarehouseId:
description: Id of the warehouse the inventory is being transferred to.
type: integer
destinationWarehouseName:
description: Name of the warehouse the inventory is being transferred to. Ignored if destinationWarehouseId is provided.
type: string
requiredBy:
description: The date the transfer order needs to be completed by.
type: date-time
draft:
description: True if the transfer order is a draft.
type: boolean
default: false
shipVia:
description: The code of the carrier or service to use for shipping.
type: string
notes:
type: string
items:
description: Items being transferred.
type: array
items:
type: object
required:
- itemId
- sku
- quantity
properties:
itemId:
description: Id of the item master.
type: integer
sku:
description: SKU of the item master. Ignored if itemId is provided.
type: string
quantity:
description: How many are being transferred. Must be nonzero.
type: integer
example:
originWarehouseId: 1
destinationWarehouseId: 2
requiredBy: "2023-07-30 12:00:00"
draft: false
shipVia: "fedex_ground"
notes: "Monthly transfer"
items:
- itemId: 2330
quantity: 5
- sku: "FumoFumo-002"
quantity: 5
TransferOrderEdit: # '#/components/requestBodies/TransferOrderEdit'
content:
application/json:
schema:
type: object
required:
- originWarehouseId
- originWarehouseName
- destinationWarehouseId
- destinationWarehouseName
- requiredBy
properties:
originWarehouseId:
description: Id of the warehouse the inventory is being transferred from.
type: integer
originWarehouseName:
description: Name of the warehouse the inventory is being transferred from. Ignored if originWarehouseId is provided.
type: string
destinationWarehouseId:
description: Id of the warehouse the inventory is being transferred to.
type: integer
destinationWarehouseName:
description: Name of the warehouse the inventory is being transferred to. Ignored if destinationWarehouseId is provided.
type: string
requiredBy:
description: The date the transfer order needs to be completed by.
type: date-time
draft:
description: True if the transfer order is a draft.
type: boolean
default: false
shipVia:
description: The code of the carrier or service to use for shipping.
type: string
notes:
type: string
items:
description: Items being transferred. Exclude an existing line item to leave it unchanged.
type: array
items:
type: object
required:
- id
- itemId
- sku
- quantity
properties:
id:
description: Id of the transfer order line item. Must be provided to edit an existing line item.
If not provided, then the item will be added as a new line item to the transfer order.
type: integer
itemId:
description: Id of the item master.
type: integer
sku:
description: SKU of the item master. Ignored if itemId is provided.
type: string
quantity:
description: How many are being transferred. Set the quantity to zero if you wish to remove the line item.
type: integer
example:
originWarehouseId: 1
destinationWarehouseId: 2
requiredBy: "2023-07-30 12:00:00"
draft: false
shipVia: "fedex_ground"
notes: "Monthly transfer"
items:
- id: 96
- itemId: 2330
quantity: 10
- id: 97
sku: "FumoFumo-002"
quantity: 15
TransferOrderCancel: # '#/components/requestBodies/TransferOrderCancel'
content:
application/json:
schema:
type: object
properties:
cancelledReason:
description: The reason for cancellation.
type: string
example:
cancelledReason: "Warehouse no longer needs the stock."
TransferOrderReceive: # '#/components/requestBodies/TransferOrderReceive'
content:
application/json:
schema:
type: object
required:
- locationId
- locationName
properties:
locationId:
description: Id of the location in the destination warehouse the inventory will be placed in.
type: integer
locationName:
description: Name of the location in the destination warehouse the inventory will be placed in. Ignored if locationId is provided.
type: integer
receiveLocationId:
description: Id of the staging location in the destination warehouse the inventory will first be placed in. Only used if staged delivery is enabled in the settings.
type: integer
receiveLocationName:
description: Name of the staging location in the destination warehouse the inventory will first be placed in. Only used if staged delivery is enabled in the settings. Ignored if receiveLocationId is provided.
type: integer
items:
description: Items being received in.
type: array
items:
type: object
required:
- id
- quantity
properties:
id:
description: Id of the transfer order line item.
type: integer
quantity:
description: Number of items being received. Cannot exceed the amount shipped.
type: integer
serialNumbers:
description: List of serial numbers being received. Required if item is serialized and must match quantity.
type: array
example:
locationId: 9
items:
- id: 96
quantity: 5
x-filters:
CustomerOrderFilter: # '#/components/x-filters/CustomerOrderFilter'
type: object
properties:
orderNumber:
description: Filter by the customer order's orderNumber. String field.
type: string
orderReference:
description: Filter by the customer order's orderReference. String field.
type: string
projectNumber:
description: Filter by the customer order's projectNumber. String field.
type: string
internalNote:
description: Filter by the customer order's note. String field.
type: string
noteFromCustomer:
description: Filter by the customer order's noteFromCustomer. String field.
type: string
noteToCustomer:
description: Filter by the customer order's noteToCustomer. String field.
type: string
userField1:
description: Filter by the customer order's userField1. String field.
type: string
userField2:
description: Filter by the customer order's userField2. String field.
type: string
userField3:
description: Filter by the customer order's userField3. String field.
type: string
orderSource:
description: Filter by the customer order's orderSource. String field.
type: string
customerName:
description: Filter by the customer's name and surname. String field.
type: string
customerAccountNumber:
description: Filter by the customer's accountNumber. String field.
type: string
customerCompany:
description: Filter by the customer's company. String field.
type: string
customerEmail:
description: Filter by the customer's email. String field.
type: string
shippingAddressCompany:
description: Filter by the shipping address's company. String field.
type: string
shippingAddressName:
description: Filter by the shipping address's name. String field.
type: string
shippingAddressLine1:
description: Filter by the shipping address's line1. String field.
type: string
shippingAddressLine2:
description: Filter by the shipping address's line2. String field.
type: string
shippingAddressLine3:
description: Filter by the shipping address's line3. String field.
type: string
shippingAddressCity:
description: Filter by the shipping address's city. String field.
type: string
shippingAddressState:
description: Filter by the shipping address's state. String field.
type: string
shippingAddressZip:
description: Filter by the shipping address's zip. String field.
type: string
shippingAddressPhone:
description: Filter by the shipping address's phone. String field.
type: string
shippingAddressCode:
description: Filter by the shipping address's code. String field.
type: string
itemSku:
description: Filters by checking if any item on the customer order has a sku that matches the condition. String field.
type: string
itemNoSku:
description: Filters by checking if no item on the customer order has a sku that matches the condition. String field.
type: string
itemDescription:
description: Filters by checking if any item on the customer order has a description that matches the condition. String field.
type: string
itemNoDescription:
description: Filters by checking if no item on the customer order has a description that matches the condition. String field.
type: string
itemSerialNumber:
description: Filters by checking the serial numbers of items allocated to a customer order. String field.
type: string
itemLotNumber:
description: Filters by checking the lot numbers of items allocated to a customer order. String field.
Conditional:
description: |
Possible conditional values for string fields. "empty" and "not_empty" will ignore the
value parameter, but it must still be included in the query parameter list.
"matches_one_of", "not_matches_one_of", "contains_one_of", "not_contains_one_of" support an array
of values when the value parameter is CSV formatted.
type: string
enum:
- starts_with
- not_starts_with
- ends_with
- not_ends_with
- contains
- not_contains
- matches
- not_matches
- empty
- not_empty
- matches_one_of
- not_matches_one_of
- contains_one_of
- not_contains_one_of
default: matches
itemQuantity:
description: Filter by the customer order's total ordered quantity in base units. Number field.
type: number
Conditional:
description: |
Possible conditional values for number fields.
type: string
enum:
- equal
- not_equal
- greater
- greater_or_equal
- lesser
- lesser_or_equal
default: equal
orderedDate:
description: Filter by the customer order's orderedDate. Date field.
type: date-time
modifiedDate:
description: Filter by the customer order's modifiedDate. Date field.
type: date-time
pickedDate:
description: Filter by when the customer order was picked. Date field.
type: date-time
shippedDate:
description: Filter by when the customer order was shipped. Date field.
type: date-time
onHoldUntil:
description: Filter by the customer order's onHoldUntil. Date field.
type: date-time
itemExpirationDate:
description: Filters by checking the expiration date of items allocated to a customer order. Date field.
Conditional:
description: |
Possible conditional values for date fields. "current_date" and "date_not_set" will ignore the
value parameter, but it must still be included in the query parameter list.
"less_than_x_days_past", "more_than_x_days_past", "less_than_x_days_future", "more_than_x_days_future" requires
the value parameter to be an integer instead of a date-time and be greater than zero.
type: string
enum:
- on_or_before
- on_or_after
- current_date
- less_than_x_days_past
- more_than_x_days_past
- less_than_x_days_future
- more_than_x_days_future
- date_not_set
default: on_or_after
onHold:
description: Filters by the customer order's onHold. Does not have a Conditional parameter.
type: boolean
allocationProgress:
description: Filter by the customer order's allocation progress. Multi-select field.
type: string
enum:
- none
- part
- full
pickProgress:
description: Filter by the customer order's pick progress. Multi-select field.
type: string
enum:
- none
- part
- full
shipProgress:
description: Filter by the customer order's shipping progress. Multi-select field.
type: string
enum:
- none
- part
- full
createdBy:
description: Filter by the the user who created the customer order. Value can be the user's id or username. Multi-select field.
type: string/integer
pickAssignee:
description: Filter by the the user who is assigned to pick the customer order. Value can be the user's id or username. Multi-select field.
type: string/integer
pickedBy:
description: Filter by the the user who picked the customer order. Value can be the user's id or username. Multi-select field.
type: string/integer
shippedBy:
description: Filter by the the user who shipped the customer order. Value can be the user's id or username. Multi-select field.
type: string/integer
shipFromWarehouse:
description: Filter by the customer order's shipFromWarehouse. Value can be the warehouse's id or name. Multi-select field.
type: string/integer
client:
description: Filter by the customer order's client. Value can be the client's id or name. Multi-select field.
type: string/integer
shippingAddressCountry:
description: Filter by the shipping address's countryCode. Multi-select field.
type: string
shippingAddressValidation:
description: Filter by the shipping address's validation status.
type: string
enum:
- missing_values
- awaiting
- verified
- warning
- error
Conditional:
description: |
Possible conditional values for multi-select fields. "matches_one_of", "not_matches_one_of" support an array
of values when the value parameter is CSV formatted.
type: string
enum:
- equal
- matches_one_of
- not_matches_one_of
default: equal
tags:
description: Filter by the customer order's tags. Takes a CSV formatted string which each individual value being either the tag or its id. Contains field.
type: string
Conditional:
description: |
Possible conditional values for contains fields.
type: string
enum:
- all
- any
- none
defualt: all
shippingAddressType:
description: Filter by the shipping address's type. No conditional parameter as the only option is equals.
type: string
enum:
- unknown
- residential
- commercial
itemLocation:
description: |
Filters by checking if any item has been allocated from the given location. The value can be the location's
id, import code, or name. No conditional parameter as the only option is equals.
type: string/integer
itemParentLocation:
description: |
Filters by checking if any item has been allocated from a location whose parent location is the given location.
The value can be the location's id, import code, or name. No conditional parameter as the only option is equals.
type: string/integer
itemWarehouse:
description: |
Optional parameter for itemLocation and itemParentLocation. Changes which warehouse the location is a part of
from your current warehouse to the warehouse given by this parameter. Value can the warehouse's id or name.
type: string/integer
shipVia:
description: Filter by the customer order's shipVia. Value is either a carrier code or service code. No conditional parameter as the only option is equals.
type: string
shippingCarrier:
description: Filters for customer orders shipped using the given carrier or service. Value is either a carrier code or service code. No conditional parameter as the only option is equals.
type: string
example: ?orderNumber=101156&orderNumberConditional=matches&itemQuantity=5&itemQuantityConditional=greater_or_equal