curl --request POST \
--url https://api.decodahealth.com/inventory/purchase-orders/auto-generate \
--header 'API-KEY: <api-key>' \
--header 'Content-Type: application/json' \
--header 'TENANT: <tenant>' \
--data '
{
"locationIds": [
"<string>"
]
}
'import requests
url = "https://api.decodahealth.com/inventory/purchase-orders/auto-generate"
payload = { "locationIds": ["<string>"] }
headers = {
"TENANT": "<tenant>",
"API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {TENANT: '<tenant>', 'API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({locationIds: ['<string>']})
};
fetch('https://api.decodahealth.com/inventory/purchase-orders/auto-generate', 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.decodahealth.com/inventory/purchase-orders/auto-generate",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'locationIds' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"API-KEY: <api-key>",
"Content-Type: application/json",
"TENANT: <tenant>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.decodahealth.com/inventory/purchase-orders/auto-generate"
payload := strings.NewReader("{\n \"locationIds\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("TENANT", "<tenant>")
req.Header.Add("API-KEY", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.decodahealth.com/inventory/purchase-orders/auto-generate")
.header("TENANT", "<tenant>")
.header("API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"locationIds\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.decodahealth.com/inventory/purchase-orders/auto-generate")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["TENANT"] = '<tenant>'
request["API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"locationIds\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body[
{
"supplierId": "<string>",
"id": "<string>",
"status": "PENDING",
"issueDate": "2023-11-07T05:31:56Z",
"completedDate": "2023-11-07T05:31:56Z",
"supplier": {
"name": "<string>",
"description": "<string>",
"website": "<string>",
"email": "<string>",
"preferredContactMethod": "<string>",
"phoneNumber": "<string>",
"addressLineOne": "<string>",
"addressLineTwo": "<string>",
"city": "<string>",
"state": "<string>",
"zipCode": "<string>",
"country": "<string>",
"shipmentTime": 123,
"isArchived": false,
"defaultNotes": [
{
"content": "<string>",
"id": "<string>",
"supplierId": "<string>",
"name": "<string>"
}
],
"id": "<string>"
},
"lineItems": [
{
"supplierToStockUomId": "<string>",
"locationId": "<string>",
"quantity": 123,
"id": "<string>",
"purchaseOrderId": "<string>",
"quantityReceived": 1,
"supplierToStockUom": {
"supplierPartNumber": "<string>",
"id": "<string>",
"supplierToStockId": "<string>",
"supplierToStock": {
"supplierId": "<string>",
"stockId": "<string>",
"id": "<string>",
"stock": {
"name": "<string>",
"id": "<string>",
"description": "<string>",
"notes": "<string>",
"category": "<string>",
"minStockLevel": 123,
"isArchived": false
}
},
"conversionFactor": 1,
"isDefault": false,
"displayLabel": "<string>",
"price": 123,
"leadTime": 1,
"createdDate": "2023-11-07T05:31:56Z",
"updatedDate": "2023-11-07T05:31:56Z",
"isArchived": false
},
"location": {
"id": "<string>",
"name": "<string>",
"isVirtual": true
},
"cost": 1,
"createdDate": "2023-11-07T05:31:56Z",
"updatedDate": "2023-11-07T05:31:56Z"
}
],
"notes": [
{
"content": "<string>",
"id": "<string>",
"purchaseOrderId": "<string>",
"name": "<string>"
}
],
"createdDate": "2023-11-07T05:31:56Z",
"updatedDate": "2023-11-07T05:31:56Z",
"isArchived": false,
"leadTimeDays": 123
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Auto Generate Purchase Orders
Auto-generate purchase orders for stocks below PAR level.
curl --request POST \
--url https://api.decodahealth.com/inventory/purchase-orders/auto-generate \
--header 'API-KEY: <api-key>' \
--header 'Content-Type: application/json' \
--header 'TENANT: <tenant>' \
--data '
{
"locationIds": [
"<string>"
]
}
'import requests
url = "https://api.decodahealth.com/inventory/purchase-orders/auto-generate"
payload = { "locationIds": ["<string>"] }
headers = {
"TENANT": "<tenant>",
"API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {TENANT: '<tenant>', 'API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({locationIds: ['<string>']})
};
fetch('https://api.decodahealth.com/inventory/purchase-orders/auto-generate', 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.decodahealth.com/inventory/purchase-orders/auto-generate",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'locationIds' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"API-KEY: <api-key>",
"Content-Type: application/json",
"TENANT: <tenant>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.decodahealth.com/inventory/purchase-orders/auto-generate"
payload := strings.NewReader("{\n \"locationIds\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("TENANT", "<tenant>")
req.Header.Add("API-KEY", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.decodahealth.com/inventory/purchase-orders/auto-generate")
.header("TENANT", "<tenant>")
.header("API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"locationIds\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.decodahealth.com/inventory/purchase-orders/auto-generate")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["TENANT"] = '<tenant>'
request["API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"locationIds\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body[
{
"supplierId": "<string>",
"id": "<string>",
"status": "PENDING",
"issueDate": "2023-11-07T05:31:56Z",
"completedDate": "2023-11-07T05:31:56Z",
"supplier": {
"name": "<string>",
"description": "<string>",
"website": "<string>",
"email": "<string>",
"preferredContactMethod": "<string>",
"phoneNumber": "<string>",
"addressLineOne": "<string>",
"addressLineTwo": "<string>",
"city": "<string>",
"state": "<string>",
"zipCode": "<string>",
"country": "<string>",
"shipmentTime": 123,
"isArchived": false,
"defaultNotes": [
{
"content": "<string>",
"id": "<string>",
"supplierId": "<string>",
"name": "<string>"
}
],
"id": "<string>"
},
"lineItems": [
{
"supplierToStockUomId": "<string>",
"locationId": "<string>",
"quantity": 123,
"id": "<string>",
"purchaseOrderId": "<string>",
"quantityReceived": 1,
"supplierToStockUom": {
"supplierPartNumber": "<string>",
"id": "<string>",
"supplierToStockId": "<string>",
"supplierToStock": {
"supplierId": "<string>",
"stockId": "<string>",
"id": "<string>",
"stock": {
"name": "<string>",
"id": "<string>",
"description": "<string>",
"notes": "<string>",
"category": "<string>",
"minStockLevel": 123,
"isArchived": false
}
},
"conversionFactor": 1,
"isDefault": false,
"displayLabel": "<string>",
"price": 123,
"leadTime": 1,
"createdDate": "2023-11-07T05:31:56Z",
"updatedDate": "2023-11-07T05:31:56Z",
"isArchived": false
},
"location": {
"id": "<string>",
"name": "<string>",
"isVirtual": true
},
"cost": 1,
"createdDate": "2023-11-07T05:31:56Z",
"updatedDate": "2023-11-07T05:31:56Z"
}
],
"notes": [
{
"content": "<string>",
"id": "<string>",
"purchaseOrderId": "<string>",
"name": "<string>"
}
],
"createdDate": "2023-11-07T05:31:56Z",
"updatedDate": "2023-11-07T05:31:56Z",
"isArchived": false,
"leadTimeDays": 123
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Headers
The tenant you are making this request on behalf of
Your api key
Body
List of location IDs to check stock levels for
Response
Successful Response
ID of the supplier
Unique identifier for the purchase order
Status of the purchase order
PENDING, PLACED, COMPLETED, CANCELLED Date when the purchase order was sent to supplier
Date when all shipments are DELIVERED (purchase order completed)
Optional supplier details
Show child attributes
Show child attributes
Line items with details
Show child attributes
Show child attributes
Notes attached to this purchase order
Show child attributes
Show child attributes
Date and time the purchase order was created
Date and time the purchase order was last updated
Whether the purchase order is archived
Maximum lead time in days across all line items (estimated delivery time from order placement)
