Get Inventory Logs
curl --request GET \
--url https://api.decodahealth.com/inventory/logs/{stock_id} \
--header 'API-KEY: <api-key>' \
--header 'TENANT: <tenant>'import requests
url = "https://api.decodahealth.com/inventory/logs/{stock_id}"
headers = {
"TENANT": "<tenant>",
"API-KEY": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {TENANT: '<tenant>', 'API-KEY': '<api-key>'}};
fetch('https://api.decodahealth.com/inventory/logs/{stock_id}', 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/logs/{stock_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"API-KEY: <api-key>",
"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"
"net/http"
"io"
)
func main() {
url := "https://api.decodahealth.com/inventory/logs/{stock_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("TENANT", "<tenant>")
req.Header.Add("API-KEY", "<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.decodahealth.com/inventory/logs/{stock_id}")
.header("TENANT", "<tenant>")
.header("API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.decodahealth.com/inventory/logs/{stock_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["TENANT"] = '<tenant>'
request["API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"stockId": "<string>",
"creatorId": "<string>",
"id": "<string>",
"itemId": "<string>",
"quantity": 123,
"chargeId": "<string>",
"createdDate": "2023-11-07T05:31:56Z",
"shipmentId": "<string>",
"note": "<string>",
"stock": {
"name": "<string>",
"id": "<string>",
"description": "<string>",
"notes": "<string>",
"category": "<string>",
"isArchived": false
},
"item": {
"name": "<string>",
"price": 123,
"id": "<string>",
"brandName": "<string>",
"description": "<string>",
"category": "<string>",
"isPhysical": true,
"isArchived": false,
"internalNotes": "<string>",
"taxable": false,
"sortOrder": 123,
"allowCustomPricing": false,
"type": "PRODUCT",
"stocks": [
{
"itemId": "<string>",
"stockId": "<string>",
"quantityUsed": 123
}
]
},
"charge": {
"patientId": "<string>",
"totalOutstanding": 123,
"id": "<string>",
"patient": {
"id": "<string>",
"createdDate": "2023-11-07T05:31:56Z",
"firstName": "<string>",
"lastName": "<string>",
"phoneNumber": "<string>",
"email": "<string>",
"locationId": "<string>",
"externalId": "<string>",
"address": "<string>",
"addressLineTwo": "<string>",
"city": "<string>",
"state": "<string>",
"zipCode": "<string>",
"country": "<string>",
"addressValid": true,
"meta": {},
"isArchived": true,
"primaryLocationId": "<string>",
"gender": "<string>",
"dateOfBirth": "2023-12-25",
"patientMedications": [
"<string>"
],
"onSchedulingBlacklist": true,
"surchargeDisabled": true,
"tags": [
{
"id": "<string>",
"name": "<string>",
"isActive": true,
"createdDate": "2023-11-07T05:31:56Z",
"emoji": "<string>",
"color": "<string>",
"updatedDate": "2023-11-07T05:31:56Z"
}
],
"creditBalance": 123,
"preferredProviderId": "<string>"
},
"total": 0,
"description": "<string>",
"status": "OUTSTANDING",
"discountAmount": 0,
"discountPercentage": 0,
"externalId": "<string>",
"externalCreatedDate": "2023-11-07T05:31:56Z",
"ruleSetId": "<string>",
"createdDate": "2023-11-07T05:31:56Z",
"creatorId": "<string>",
"items": [],
"tips": [],
"locationId": "<string>",
"eventId": "<string>",
"memberId": "<string>",
"comment": "<string>",
"meta": {},
"merchantAccountId": "<string>"
},
"shipment": {
"stockId": "<string>",
"supplierId": "<string>",
"locationId": "<string>",
"quantity": 123,
"remainingQuantity": 123,
"locationName": "<string>",
"id": "<string>",
"lotNumber": "<string>",
"expiryDate": "2023-11-07T05:31:56Z",
"sku": "<string>",
"cost": 123,
"supplier": {
"name": "<string>",
"id": "<string>",
"description": "<string>",
"website": "<string>",
"email": "<string>",
"preferredContactMethod": "<string>",
"phoneNumber": "<string>",
"addressLineOne": "<string>",
"addressLineTwo": "<string>",
"city": "<string>",
"state": "<string>",
"zipCode": "<string>",
"country": "<string>",
"isArchived": false
},
"createdDate": "2023-11-07T05:31:56Z",
"note": "<string>"
},
"creator": {
"id": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"phoneNumber": "<string>",
"email": "<string>",
"locationId": "<string>"
}
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Inventory
Get Inventory Logs
Get inventory logs with cursor-based day pagination.
The cursor represents a point in time - logs BEFORE this time are fetched.
The days parameter controls how many days of data to fetch per request.
Date range parameters (start_date, end_date) act as absolute boundaries.
GET
/
inventory
/
logs
/
{stock_id}
Get Inventory Logs
curl --request GET \
--url https://api.decodahealth.com/inventory/logs/{stock_id} \
--header 'API-KEY: <api-key>' \
--header 'TENANT: <tenant>'import requests
url = "https://api.decodahealth.com/inventory/logs/{stock_id}"
headers = {
"TENANT": "<tenant>",
"API-KEY": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {TENANT: '<tenant>', 'API-KEY': '<api-key>'}};
fetch('https://api.decodahealth.com/inventory/logs/{stock_id}', 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/logs/{stock_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"API-KEY: <api-key>",
"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"
"net/http"
"io"
)
func main() {
url := "https://api.decodahealth.com/inventory/logs/{stock_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("TENANT", "<tenant>")
req.Header.Add("API-KEY", "<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.decodahealth.com/inventory/logs/{stock_id}")
.header("TENANT", "<tenant>")
.header("API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.decodahealth.com/inventory/logs/{stock_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["TENANT"] = '<tenant>'
request["API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"stockId": "<string>",
"creatorId": "<string>",
"id": "<string>",
"itemId": "<string>",
"quantity": 123,
"chargeId": "<string>",
"createdDate": "2023-11-07T05:31:56Z",
"shipmentId": "<string>",
"note": "<string>",
"stock": {
"name": "<string>",
"id": "<string>",
"description": "<string>",
"notes": "<string>",
"category": "<string>",
"isArchived": false
},
"item": {
"name": "<string>",
"price": 123,
"id": "<string>",
"brandName": "<string>",
"description": "<string>",
"category": "<string>",
"isPhysical": true,
"isArchived": false,
"internalNotes": "<string>",
"taxable": false,
"sortOrder": 123,
"allowCustomPricing": false,
"type": "PRODUCT",
"stocks": [
{
"itemId": "<string>",
"stockId": "<string>",
"quantityUsed": 123
}
]
},
"charge": {
"patientId": "<string>",
"totalOutstanding": 123,
"id": "<string>",
"patient": {
"id": "<string>",
"createdDate": "2023-11-07T05:31:56Z",
"firstName": "<string>",
"lastName": "<string>",
"phoneNumber": "<string>",
"email": "<string>",
"locationId": "<string>",
"externalId": "<string>",
"address": "<string>",
"addressLineTwo": "<string>",
"city": "<string>",
"state": "<string>",
"zipCode": "<string>",
"country": "<string>",
"addressValid": true,
"meta": {},
"isArchived": true,
"primaryLocationId": "<string>",
"gender": "<string>",
"dateOfBirth": "2023-12-25",
"patientMedications": [
"<string>"
],
"onSchedulingBlacklist": true,
"surchargeDisabled": true,
"tags": [
{
"id": "<string>",
"name": "<string>",
"isActive": true,
"createdDate": "2023-11-07T05:31:56Z",
"emoji": "<string>",
"color": "<string>",
"updatedDate": "2023-11-07T05:31:56Z"
}
],
"creditBalance": 123,
"preferredProviderId": "<string>"
},
"total": 0,
"description": "<string>",
"status": "OUTSTANDING",
"discountAmount": 0,
"discountPercentage": 0,
"externalId": "<string>",
"externalCreatedDate": "2023-11-07T05:31:56Z",
"ruleSetId": "<string>",
"createdDate": "2023-11-07T05:31:56Z",
"creatorId": "<string>",
"items": [],
"tips": [],
"locationId": "<string>",
"eventId": "<string>",
"memberId": "<string>",
"comment": "<string>",
"meta": {},
"merchantAccountId": "<string>"
},
"shipment": {
"stockId": "<string>",
"supplierId": "<string>",
"locationId": "<string>",
"quantity": 123,
"remainingQuantity": 123,
"locationName": "<string>",
"id": "<string>",
"lotNumber": "<string>",
"expiryDate": "2023-11-07T05:31:56Z",
"sku": "<string>",
"cost": 123,
"supplier": {
"name": "<string>",
"id": "<string>",
"description": "<string>",
"website": "<string>",
"email": "<string>",
"preferredContactMethod": "<string>",
"phoneNumber": "<string>",
"addressLineOne": "<string>",
"addressLineTwo": "<string>",
"city": "<string>",
"state": "<string>",
"zipCode": "<string>",
"country": "<string>",
"isArchived": false
},
"createdDate": "2023-11-07T05:31:56Z",
"note": "<string>"
},
"creator": {
"id": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"phoneNumber": "<string>",
"email": "<string>",
"locationId": "<string>"
}
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Headers
The tenant you are making this request on behalf of
Your api key
Path Parameters
Query Parameters
Available options:
STOCK_CREATED, STOCK_UPDATED, STOCK_ARCHIVED, DRAWDOWN, RESTORED, SHIPMENT_RECEIVED, SHIPMENT_UPDATED, SHIPMENT_ARCHIVED, ITEM_LINKED, ITEM_UNLINKED Response
Successful Response
ID of the stock
Action performed on the stock
Available options:
STOCK_CREATED, STOCK_UPDATED, STOCK_ARCHIVED, DRAWDOWN, RESTORED, SHIPMENT_RECEIVED, SHIPMENT_UPDATED, SHIPMENT_ARCHIVED, ITEM_LINKED, ITEM_UNLINKED ID of the creator
Unique identifier for the inventory log
ID of the item
Quantity of the stock
ID of the charge
Date and time the log was created
ID of the shipment
Optional note about the inventory action
Stock
Show child attributes
Show child attributes
Item
Show child attributes
Show child attributes
Charge
Show child attributes
Show child attributes
Shipment
Show child attributes
Show child attributes
Creator
Show child attributes
Show child attributes
⌘I
