---
title: "Get Purchase Order Items"
method: GET
path: "/v2/po/items"
tags: ["Routes", "Purchase Orders", "Items"]
---

# Get Purchase Order Items

`GET /v2/po/items`

This request gets information associated with PO items. Every line item on a PO is an item returned by this call.

Return data description

poID | The unique ID of the purchase order associated to this item.
poItemID | The unqiue ID of this Purchase Order Item
itemType | Which type (Part, Service, or Other) this item is.
name | The name of the item.
description | A more detailed description of the item.
glID | The unique ID of the GL associated to this item.
partID | The unique ID of the part associated to this item.
taskID | The unique ID of the task associated to this item.
poNumber | The user-set Purchase Order number.
qty | The quantity purchased.
rate | The billing rate for the item on the Purchase Order.
tax | The tax percent rate for the item on the Purchase Order.
discount | The discount percent rate for the item on the Purchase Order.
shipping | The shipping rate for the item on the Purchase Order.
qtyReceived | A number representing the total quantity that has been marked as "received" for this item.
lastEdited | Last time this PO item was edited, this field outputs a UNIX timestamp.
orderUnitAbbreviation | The abbreviation for the unit of measure in which the PO item was ordered. (NULL for items not assigned to a unit of measure)

## Query parameters

- `pos` string
- `items` string
- `numbers` string
- `cursor` integer
- `limit` integer
- `lastEditedStart` integer
- `lastEditedEnd` integer

## Response `200`

Get Purchase Order Items

- POItem[]
  - `poID` integer
  - `poItemID` integer
  - `itemType` integer
  - `name` unknown
  - `description` unknown
  - `glID` integer
  - `partID` integer
  - `taskID` integer
  - `poNumber` integer
  - `qty` integer
  - `rate` integer
  - `tax` integer
  - `discount` integer
  - `shipping` integer
  - `qtyReceived` integer
  - `orderUnitAbbreviation` unknown
  - `lastEdited` integer
  - `meta` object
    - `po` string

## Other responses

- `400` — The request was malformed — either invalid JSON syntax or a validation failure (missing required field, wrong type, etc.).
- `401` — No `Authorization` header was provided on the request.
- `403` — The supplied credentials are invalid, the customer account is inactive, or the credentials do not have permission to perform this action.
- `429` — The per-minute or per-hour rate limit for this credential and method has been exhausted. Inspect the `X-RateLimit-*` headers to determine when to retry.
- `500` — An unhandled server-side error. The body message is generic (`System unavailable...`) when the underlying cause is a database fault; otherwise it reflects the raised error.

---

[API](https://skmtc.net/limblecmms/apis/limble-api-v2.md) · [All operations](https://skmtc.net/limblecmms/apis/limble-api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/limblecmms/limble-api-v2/revisions/eceb9442ed4d/schema)
