Get a date-grouped inventory timeline for a specific system.
Returns a filtered summary (severity counters) and groups of inventory dates.
Each group includes inventory_ids — the IDs of inventory records collected that day.
Groups with no matching diffs still appear with change_count: 0, allowing the UI
to display "X inventories, no changes" badges. Pagination is over date groups.
To fetch the actual diffs for a group, call GET /systems/{id}/inventory/diffs?inventory_id=<ids>
with the inventory_ids from the group.
Query parameters
-
Page number
Minimum value is
1. Default value is1. -
Items per page
Minimum value is
1, maximum value is100. Default value is20. -
Filter by severity level
Values are
low,medium,high, orcritical. -
Filter by change category
Values are
os,hardware,network,security,backup,features,modules,cluster,nodes, orsystem. -
Filter by diff type
Values are
create,update, ordelete. -
Show dates from this timestamp (RFC3339 format)
-
Show dates up to this timestamp (RFC3339 format)
curl \
--request GET 'https://api.your-domain.com/api/systems/sys_123456789/inventory/timeline' \
--header "Authorization: Bearer $ACCESS_TOKEN"
{
"code": 200,
"message": "inventory timeline retrieved successfully",
"data": {
"summary": {
"total": 12,
"critical": 1,
"high": 3,
"medium": 8,
"low": 0
},
"groups": [
{
"date": "2026-03-04",
"inventory_count": 3,
"change_count": 2,
"inventory_ids": [
42,
43
]
}
],
"pagination": {
"page": 1,
"page_size": 20,
"total_count": 156,
"total_pages": 8,
"has_next": true,
"has_prev": false,
"next_page": 2,
"prev_page": 42,
"sort_by": "name",
"sort_direction": "asc"
}
}
}
{
"code": 401,
"message": "invalid token",
"data": {}
}
{
"code": 403,
"message": "insufficient permissions",
"data": {}
}
{
"code": 400,
"message": "validation failed",
"data": {
"type": "validation_error",
"errors": [
{
"key": "username",
"message": "required",
"value": "string"
}
]
}
}