GET OneStop/Groups/{GroupID}/Devices/{DeviceID}/Consumables/{ConsumableID}/Readings?ValidReadingsOnly={ValidReadingsOnly}&FromDate={FromDate}&ToDate={ToDate}
Gets readings for specified consumable
Request Information
URI Parameters
| Name | Description | Type | Additional information |
|---|---|---|---|
| GroupID | integer |
Required |
|
| DeviceID |
ID of Device to Get |
integer |
Required |
| ConsumableID |
Consumable ID |
integer |
Required |
| ValidReadingsOnly |
Only include readings that have passed validation |
boolean |
Default value is True |
| FromDate |
Include all readings from this date. Default to DateTime.Minvalue |
date |
None. |
| ToDate |
Include all readings up to this date. Default to DateTime.MaxValue |
date |
None. |
Body Parameters
None.
Response Information
Resource Description
Collection of ConsumableReadingDTO| Name | Description | Type | Additional information |
|---|---|---|---|
| ReadingID |
Reading ID |
integer |
None. |
| ConsumableID |
Consumable ID |
integer |
None. |
| CurrentLevel |
Current consumable level |
integer |
None. |
| DeviceTotal |
Device total count |
integer |
None. |
| ReadingDate |
Reading date |
date |
None. |
| ChangedDate |
Date consumable was changed, if no the current consumable |
date |
None. |
| SerialNumber |
Consumable serial number, if reported |
string |
None. |
| LastKnownLevel |
Last known level (ignores 'some' or 'unknown') |
integer |
None. |
| TotalColour |
Device total colour count |
integer |
None. |
| TotalMono |
Device total mono count |
integer |
None. |
| InvalidReason |
flag is reading is deemed invalid 1=Date earlier than most recent reading, 2=Level increase but no serial number change NoSerialNumberChange, 3=Failed PagesPerPercent validation, 4=Failed consumable change validation, 5=Level changed but meter reading has not, 6=Unknown level reported after a previous known level |
InvalidConsumableReadingReason |
None. |
Response Formats
application/json, text/json
[
{
"ReadingID": 1,
"ConsumableID": 2,
"CurrentLevel": 3,
"DeviceTotal": 4,
"ReadingDate": "2026-07-07T14:50:16.1833487+01:00",
"ChangedDate": "2026-07-07T14:50:16.1833487+01:00",
"SerialNumber": "sample string 6",
"LastKnownLevel": 1,
"TotalColour": 1,
"TotalMono": 1,
"InvalidReason": 0
},
{
"ReadingID": 1,
"ConsumableID": 2,
"CurrentLevel": 3,
"DeviceTotal": 4,
"ReadingDate": "2026-07-07T14:50:16.1833487+01:00",
"ChangedDate": "2026-07-07T14:50:16.1833487+01:00",
"SerialNumber": "sample string 6",
"LastKnownLevel": 1,
"TotalColour": 1,
"TotalMono": 1,
"InvalidReason": 0
}
]
application/xml, text/xml
<ArrayOfConsumableReadingDTO xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/OneStopWebAPI.DTO">
<ConsumableReadingDTO>
<ChangedDate>2026-07-07T14:50:16.1833487+01:00</ChangedDate>
<ConsumableID>2</ConsumableID>
<CurrentLevel>3</CurrentLevel>
<DeviceTotal>4</DeviceTotal>
<InvalidReason>ValidReading</InvalidReason>
<LastKnownLevel>1</LastKnownLevel>
<ReadingDate>2026-07-07T14:50:16.1833487+01:00</ReadingDate>
<ReadingID>1</ReadingID>
<SerialNumber>sample string 6</SerialNumber>
<TotalColour>1</TotalColour>
<TotalMono>1</TotalMono>
</ConsumableReadingDTO>
<ConsumableReadingDTO>
<ChangedDate>2026-07-07T14:50:16.1833487+01:00</ChangedDate>
<ConsumableID>2</ConsumableID>
<CurrentLevel>3</CurrentLevel>
<DeviceTotal>4</DeviceTotal>
<InvalidReason>ValidReading</InvalidReason>
<LastKnownLevel>1</LastKnownLevel>
<ReadingDate>2026-07-07T14:50:16.1833487+01:00</ReadingDate>
<ReadingID>1</ReadingID>
<SerialNumber>sample string 6</SerialNumber>
<TotalColour>1</TotalColour>
<TotalMono>1</TotalMono>
</ConsumableReadingDTO>
</ArrayOfConsumableReadingDTO>