Skip to main content

Items

Items, also known as line items, are the individual itemized costs on an Order.

Schema​

Item​

NameTypeDescriptionExample
idIDUnique identifier for this item"ckmnpybisiy5x08abky4g2d1f"
backorderLeadTimeDateTime?Lead time for a backordered item"2021-03-24 17:26:46.983Z"
backorderQuantityfloat?Amount on backorder for a backordered item20.0
createdAtDateTimeWhen this item was created"2021-03-24 17:26:46.983Z"
descriptionstring?Description of the item"3/4" EMT"
extPricefloat?EXT Price of the item125.00
glCodeGLCode?GL Code of the itemSee GL Code docs
lineNumberintNumber representing the index of the line item within it's order3
manufacturerstring?Name of the manufacturer for this item"Marcus Manufacturing"
manufacturerPartNumberstring?Manufacturer part number for this item (MPN)"267254567"
needByDateDateTime?When this item is needed by"2021-03-24 17:26:46.983Z"
expectedDeliveryTimeDateTime?Expected delivery time for this item"2021-03-25 10:00:00.000Z"
notesstring?Additional handwritten details attached to this item"Requested ASAP"
orderOrder?Order this item is attached to, if attached to oneSee Order docs
orderIdID?ID of the order this item is attached to, if attached to one"ckmnpybisiy5x08abky4g2d1f"
quantityfloat?Quantity of this item100.0
requisitionItemIdsID[]?The IDs of any Requisition Items that this PO Item is sourced from["ckmnpybisiy5x08abky4g2d1f"]
taxCodeTaxCode?Tax code of the itemSee Tax Code docs
unitDiscountfloat?Discount being applied to the item (precision of 13)1.25
unitPricefloat?Unit price of the item1.25
unitsOfMeasurestring?Unit of measurement for this item"inches"
universalProductCodestring?Universal product code for this item (UPC)"037000282525"
updatedAtDateTimeWhen this item was last updated"2021-03-24 17:26:46.983Z"
vendorPartNumberstring?Part number for this item in the vendor's catalog"73595677"
customColumnValuestring?Value associated with the custom column"438076873"

Queries​

item​

Get a single item by ID.

Parameters​

NameTypeDescription
idIDUnique identifier for this item

Response​

A single Item.

Example Request​

query {
item(id: "ckb91igzt01e90733giki0v0p") {
description
lineNumber
id
quantity
unitPrice
unitsOfMeasure
}
}

Example Response​

{
"description": "3/4\" EMT",
"id": "ckb91igzt01e90733giki0v0p",
"lineNumber": 1,
"quantity": 2000,
"unitPrice": 0.22,
"unitsOfMeasure": "ft"
}

items​

Get the items on an order.

Parameters​

NameTypeDescription
orderIdIDThe order ID to retrieve items for

Accepts all standard pagination parameters.

Allowed orderBy fields: backorderLeadTime, createdAt, id, lineNumber, needByDate, universalProductCode, updatedAt, vendorPartNumber.

Default (direction, orderBy): (lineNumber, ASC)

Allowed filter fields: backorderLeadTime, createdAt, id, lineNumber, needByDate, universalProductCode, updatedAt, vendorPartNumber.

Response​

A list of Item objects.

Example Request​

query {
items(orderId: "ckb91igzt01e90733giki0v0p") {
description
lineNumber
id
quantity
unitPrice
unitsOfMeasure
}
}

Example Response​

[
{
"description": "3/4\" EMT",
"id": "ckb91igzt01e90733giki0v0p",
"lineNumber": 1,
"quantity": 2000,
"unitPrice": 0.22,
"unitsOfMeasure": "ft"
}
]

allItems​

Get all items across all orders for your organization. This endpoint is designed for bulk data retrieval and data warehousing use cases, allowing you to fetch items without needing to iterate through individual orders.

Note: This query enforces a maximum limit of 2500 items per request to maintain performance.

Parameters​

NameTypeDescription
filterItemFilter?Optional. Filter criteria for items

Accepts all standard pagination parameters.

Allowed orderBy fields: backorderLeadTime, createdAt, id, lineNumber, needByDate, universalProductCode, updatedAt, vendorPartNumber.

Default (direction, orderBy): (createdAt, DESC)

Filter Options​

The filter parameter accepts an ItemFilter object with the following fields:

NameTypeDescription
orderIdID?Filter items by a specific order ID
orderId_in[ID!]?Filter items by multiple order IDs
orderId_not_in[ID!]?Exclude items by order IDs
jobIdID?Filter items by a specific job ID (from the order's job)
jobId_in[ID!]?Filter items by multiple job IDs
jobId_not_in[ID!]?Exclude items by job IDs
vendorIdID?Filter items by a specific vendor ID (from the order's vendor)
vendorId_in[ID!]?Filter items by multiple vendor IDs
vendorId_not_in[ID!]?Exclude items by vendor IDs

See standard filter documentation for additional filterable fields: backorderLeadTime, createdAt, id, lineNumber, needByDate, universalProductCode, updatedAt, vendorPartNumber.

Maximum limit: 2500 items per request. Requests with a higher limit will be capped at 2500.

Response​

An AllItemsResponse object containing:

FieldTypeDescription
metaAllItemsPaginationMetaPagination metadata
meta.totalintTotal count of items matching the filters
meta.limitintThe page size requested (maximum 2500)
meta.offsetintThe starting position in the result set
data[AllItemsItem]Array of AllItemsItem objects

AllItemsItem Schema​

The AllItemsItem type is a simplified schema designed for bulk data retrieval:

NameTypeDescription
idIDUnique identifier for this item
backorderLeadTimeDateTime?Lead time for a backordered item
backorderQuantityfloat?Amount on backorder for a backordered item
costsInventoryItemLedgerEntryIdID?Associated inventory item ledger entry ID
createdAtDateTimeWhen this item was created
customColumnValuestring?Value associated with a custom column
descriptionstring?Description of the item
extPricefloat?Extended price of the item
lineNumberintNumber representing the index of the line item within its order
manufacturerstring?Name of the manufacturer for this item
manufacturerPartNumberstring?Manufacturer part number (MPN)
needByDateDateTime?When this item is needed by
expectedDeliveryTimeDateTime?Expected delivery time
notesstring?Additional handwritten details
orderIdID?ID of the order this item is attached to
quantityfloat?Quantity of this item
extendedQuantityfloat?Extended quantity (calculated with unit conversions)
unitDiscountfloat?Discount being applied to the item
unitPricefloat?Unit price of the item
unitsOfMeasurestring?Unit of measurement for this item
requestedUOMstring?Requested unit of measure
pricingUOMstring?Pricing unit of measure
extendedUOMstring?Extended unit of measure
universalProductCodestring?Universal product code (UPC)
updatedAtDateTimeWhen this item was last updated
vendorPartNumberstring?Part number in the vendor's catalog
phaseCodeCodestring?Phase code string from item or integration data
costCategoryCodestring?Cost category code string from item or integration data
glCodeCodestring?GL code string from item or integration data
taxCodeCodestring?Tax code string from item or integration data
costTypeCodestring?Cost type code string from item or integration data
jobIdID?Job ID from the parent order (denormalized)
vendorIdID?Vendor ID from the parent order (denormalized)
itemCodeItemCode?Full ItemCode object with id, code, and description
scaledUnitPricefloat?Scaled unit price (when UOM v2 feature is enabled)
itemCodeTextstring?Free-form item code text from integration data

Example Request (All Items)​

query {
allItems(limit: 100, offset: 0, orderBy: createdAt, direction: DESC) {
meta {
total
limit
offset
}
data {
id
description
lineNumber
quantity
unitPrice
extPrice
orderId
jobId
vendorId
vendorPartNumber
manufacturerPartNumber
phaseCodeCode
costCategoryCode
glCodeCode
taxCodeCode
costTypeCode
itemCode {
id
code
description
}
scaledUnitPrice
createdAt
}
}
}

Example Request (Filter by Job ID)​

query {
allItems(
filter: {
jobId: "ckmnpybisiy5x08abky4g2d1f"
}
limit: 50
offset: 0
) {
meta {
total
limit
offset
}
data {
id
description
quantity
unitPrice
orderId
}
}
}

Example Request (Filter by Vendor ID)​

query {
allItems(
filter: {
vendorId: "ckmnpybisiy5x08abky4g2d1f"
}
limit: 100
) {
meta {
total
limit
offset
}
data {
id
description
quantity
orderId
vendorPartNumber
}
}
}

Example Request (Filter by Multiple Vendor IDs)​

query {
allItems(
filter: {
vendorId_in: [
"ckmnpybisiy5x08abky4g2d1f"
"ckmnpybisiy5x08abky4g2d1g"
"ckmnpybisiy5x08abky4g2d1h"
]
}
limit: 100
) {
meta {
total
limit
offset
}
data {
id
description
quantity
orderId
vendorPartNumber
}
}
}

Example Response​

{
"meta": {
"total": 1500,
"limit": 100,
"offset": 0
},
"data": [
{
"id": "ckb91igzt01e90733giki0v0p",
"description": "3/4\" EMT",
"lineNumber": 1,
"quantity": 2000,
"unitPrice": 0.22,
"extPrice": 440.0,
"orderId": "ckb91igzr01e70733dehis81o",
"vendorPartNumber": "12634534",
"manufacturerPartNumber": "MPN-001",
"createdAt": "2020-06-10T07:37:04.646Z"
}
]
}

Use Cases​

The allItems query is particularly useful for:

  • Data Warehousing: Pull all items for bulk analysis or storage in external systems
  • Reporting: Generate organization-wide reports without making multiple API calls per order
  • Analytics: Aggregate spending, quantity, and vendor data across all orders
  • Syncing: Efficiently synchronize item data with external systems

For single order item retrieval, use the items query instead.