Get filterable attributes for Purchase Orders
curl --request GET \
--url https://api.zivio.net/api/v4/purchase_orders/help \
--header 'Authorization: Bearer <token>' \
--header 'zivio-tenant-id: <api-key>'import requests
url = "https://api.zivio.net/api/v4/purchase_orders/help"
headers = {
"Authorization": "Bearer <token>",
"zivio-tenant-id": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {Authorization: 'Bearer <token>', 'zivio-tenant-id': '<api-key>'}
};
fetch('https://api.zivio.net/api/v4/purchase_orders/help', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.zivio.net/api/v4/purchase_orders/help",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"zivio-tenant-id: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.zivio.net/api/v4/purchase_orders/help"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("zivio-tenant-id", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.zivio.net/api/v4/purchase_orders/help")
.header("Authorization", "Bearer <token>")
.header("zivio-tenant-id", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zivio.net/api/v4/purchase_orders/help")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
request["zivio-tenant-id"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"model": "PurchaseOrder",
"endpoint": "api/v4/purchase_orders",
"attributes": {
"id": {
"type": "integer",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[id]=123"
},
"created_at": {
"type": "datetime",
"operators": [
"eq",
"not_eq",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[created_at][gte]=2024-01-01T00:00:00Z"
},
"updated_at": {
"type": "datetime",
"operators": [
"eq",
"not_eq",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[updated_at][gte]=2024-01-01T00:00:00Z"
},
"client_org_id": {
"type": "integer",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[client_org_id]=123"
},
"external_provider": {
"type": "string",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"like",
"not_like"
],
"example": "filter[external_provider][like]=search_term"
},
"external_id": {
"type": "string",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"like",
"not_like"
],
"example": "filter[external_id][like]=search_term"
},
"status": {
"type": "integer",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[status]=123"
},
"deleted_at": {
"type": "datetime",
"operators": [
"eq",
"not_eq",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[deleted_at][gte]=2024-01-01T00:00:00Z"
},
"po_number": {
"type": "string",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"like",
"not_like"
],
"example": "filter[po_number][like]=search_term"
},
"version": {
"type": "integer",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[version]=123"
},
"updating": {
"type": "boolean",
"operators": [
"eq",
"not_eq"
],
"example": "filter[updating]=true"
},
"expiry_date": {
"type": "date",
"operators": [
"eq",
"not_eq",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[expiry_date]=2024-12-31"
},
"ccy": {
"type": "string",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"like",
"not_like"
],
"example": "filter[ccy][like]=search_term"
}
},
"operators": {
"eq": {
"description": "Equal to (default when no operator specified)",
"usage": "filter[<attribute>]=value"
},
"not_eq": {
"description": "Not equal to",
"usage": "filter[<attribute>][not_eq]=value"
},
"gt": {
"description": "Greater than",
"usage": "filter[<attribute>][gt]=value"
},
"gte": {
"description": "Greater than or equal to",
"usage": "filter[<attribute>][gte]=value"
},
"lt": {
"description": "Less than",
"usage": "filter[<attribute>][lt]=value"
},
"lte": {
"description": "Less than or equal to",
"usage": "filter[<attribute>][lte]=value"
},
"between": {
"description": "Between two values (inclusive)",
"usage": "filter[<attribute>][between]=min,max"
},
"in": {
"description": "Matches any of the provided values (implicit when value contains comma)",
"usage": "filter[<attribute>]=val1,val2,val3"
},
"not_in": {
"description": "Does not match any of the provided values",
"usage": "filter[<attribute>][not_in]=val1,val2,val3"
},
"like": {
"description": "Contains text (case-insensitive)",
"usage": "filter[<attribute>][like]=text"
},
"not_like": {
"description": "Does not contain text",
"usage": "filter[<attribute>][not_like]=text"
}
},
"sorting": {
"description": "Sort results by an attribute",
"usage": "sort[<attribute>]=asc or sort[<attribute>]=desc",
"default": "asc"
}
}{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token",
"required_scope": "purchase_orders:read",
"provided_scopes": [
"welcome:read"
]
}Purchase Orders
Get filterable attributes for Purchase Orders
Returns metadata about available filter attributes, operators, and usage examples.
GET
/
purchase_orders
/
help
Get filterable attributes for Purchase Orders
curl --request GET \
--url https://api.zivio.net/api/v4/purchase_orders/help \
--header 'Authorization: Bearer <token>' \
--header 'zivio-tenant-id: <api-key>'import requests
url = "https://api.zivio.net/api/v4/purchase_orders/help"
headers = {
"Authorization": "Bearer <token>",
"zivio-tenant-id": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {Authorization: 'Bearer <token>', 'zivio-tenant-id': '<api-key>'}
};
fetch('https://api.zivio.net/api/v4/purchase_orders/help', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.zivio.net/api/v4/purchase_orders/help",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"zivio-tenant-id: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.zivio.net/api/v4/purchase_orders/help"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("zivio-tenant-id", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.zivio.net/api/v4/purchase_orders/help")
.header("Authorization", "Bearer <token>")
.header("zivio-tenant-id", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zivio.net/api/v4/purchase_orders/help")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
request["zivio-tenant-id"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"model": "PurchaseOrder",
"endpoint": "api/v4/purchase_orders",
"attributes": {
"id": {
"type": "integer",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[id]=123"
},
"created_at": {
"type": "datetime",
"operators": [
"eq",
"not_eq",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[created_at][gte]=2024-01-01T00:00:00Z"
},
"updated_at": {
"type": "datetime",
"operators": [
"eq",
"not_eq",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[updated_at][gte]=2024-01-01T00:00:00Z"
},
"client_org_id": {
"type": "integer",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[client_org_id]=123"
},
"external_provider": {
"type": "string",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"like",
"not_like"
],
"example": "filter[external_provider][like]=search_term"
},
"external_id": {
"type": "string",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"like",
"not_like"
],
"example": "filter[external_id][like]=search_term"
},
"status": {
"type": "integer",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[status]=123"
},
"deleted_at": {
"type": "datetime",
"operators": [
"eq",
"not_eq",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[deleted_at][gte]=2024-01-01T00:00:00Z"
},
"po_number": {
"type": "string",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"like",
"not_like"
],
"example": "filter[po_number][like]=search_term"
},
"version": {
"type": "integer",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[version]=123"
},
"updating": {
"type": "boolean",
"operators": [
"eq",
"not_eq"
],
"example": "filter[updating]=true"
},
"expiry_date": {
"type": "date",
"operators": [
"eq",
"not_eq",
"gt",
"gte",
"lt",
"lte",
"between"
],
"example": "filter[expiry_date]=2024-12-31"
},
"ccy": {
"type": "string",
"operators": [
"eq",
"not_eq",
"in",
"not_in",
"like",
"not_like"
],
"example": "filter[ccy][like]=search_term"
}
},
"operators": {
"eq": {
"description": "Equal to (default when no operator specified)",
"usage": "filter[<attribute>]=value"
},
"not_eq": {
"description": "Not equal to",
"usage": "filter[<attribute>][not_eq]=value"
},
"gt": {
"description": "Greater than",
"usage": "filter[<attribute>][gt]=value"
},
"gte": {
"description": "Greater than or equal to",
"usage": "filter[<attribute>][gte]=value"
},
"lt": {
"description": "Less than",
"usage": "filter[<attribute>][lt]=value"
},
"lte": {
"description": "Less than or equal to",
"usage": "filter[<attribute>][lte]=value"
},
"between": {
"description": "Between two values (inclusive)",
"usage": "filter[<attribute>][between]=min,max"
},
"in": {
"description": "Matches any of the provided values (implicit when value contains comma)",
"usage": "filter[<attribute>]=val1,val2,val3"
},
"not_in": {
"description": "Does not match any of the provided values",
"usage": "filter[<attribute>][not_in]=val1,val2,val3"
},
"like": {
"description": "Contains text (case-insensitive)",
"usage": "filter[<attribute>][like]=text"
},
"not_like": {
"description": "Does not contain text",
"usage": "filter[<attribute>][not_like]=text"
}
},
"sorting": {
"description": "Sort results by an attribute",
"usage": "sort[<attribute>]=asc or sort[<attribute>]=desc",
"default": "asc"
}
}{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token",
"required_scope": "purchase_orders:read",
"provided_scopes": [
"welcome:read"
]
}Authorizations
OAuth 2.0 client credentials. The access token from POST /oauth/token is sent as a bearer token. Request only the scopes you need.
Your Zivio organisation identifier. The regional API endpoints serve every Zivio organisation, so each request must identify yours.

