purchaseOrders
Requires at least one of the permissions purchase:grn:create, purchase:purchase_order:list or purchase:purchase_order:read.
Lists purchase orders with optional filters and paging. Needs the purchase order read or list permission (or GRN create, to pick the order a receipt is raised against) and the purchase orders feature on your plan.
Errors: a failed call returns a GraphQL errors entry, not a field on the result, and data may be null or partial. Read the entry's extensions.code and message; every shape and code is in the Error reference.
Example:
- GraphQL
- cURL
query PurchaseOrders {
purchaseOrders {
id
orderNumber
supplierCode
trackingCode
creatorName
projectName
items {
id
productName
uomName
variantName
createdAt
canceledQuantity
}
}
}
curl -X POST "https://<api-host>/graphql" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
--data @- <<'EOF'
{
"query": "query PurchaseOrders {\n purchaseOrders {\n id\n orderNumber\n supplierCode\n trackingCode\n creatorName\n projectName\n items {\n id\n productName\n uomName\n variantName\n createdAt\n canceledQuantity\n }\n }\n}"
}
EOF
Response:
{
"data": {
"purchaseOrders": [
{
"id": "id",
"orderNumber": "string",
"supplierCode": "string",
"trackingCode": "string",
"creatorName": "string",
"projectName": "string",
"items": [
{
"id": "id",
"productName": "string",
"uomName": "string",
"variantName": "string",
"createdAt": "2025-01-15T00:00:00Z",
"canceledQuantity": 0
}
]
}
]
}
}
purchaseOrders(
filters: PurchaseOrderFiltersInput
skip: Int
take: Int
): [PurchaseOrder!]!
Arguments
purchaseOrders.filters ● PurchaseOrderFiltersInput input
Filter criteria for purchase order records. Omit to match all.
purchaseOrders.skip ● Int scalar
Number of records to skip. Send with take to page through results.
purchaseOrders.take ● Int scalar
Number of records to return.
Type
PurchaseOrder object
A purchase order raised with a supplier.