List Device Groups
Retrieve all device groups with optional pagination, sorting, and filtering.Query Parameters
Number of results per page
Pagination token from previous response
Field name to sort by (e.g.,
name, created_at, updated_at)Sort direction:
asc or descFilter expression. Supports:
id- Group identifiername- Group nameparent_id- Parent group identifiercreated_at- Creation timestampupdated_at- Last update timestamp
Response
Bookmark for the next page
Array of device group objects
Group identifier (UUID)
Group name
Group description
Parent group ID (null for root groups)
Filters inherited from ancestor groups (composed root to parent)
ISO 8601 creation timestamp
ISO 8601 last update timestamp
Example Request
Example Response
Create Device Group
Create a new device group with optional parent and filter criteria.Request Body
Unique group identifier (UUID format)
Group name (1-255 characters)
Group description
Parent group ID for hierarchical organization (null for root groups)
Filter criteria array. Each criterion includes:
Device field:
id, dms_owner, status, tags, creation_timestamp, or metadataFilter operator. Supported operators by field type:String fields (id, dms_owner):
eq,equal- Exact match (case-sensitive)eq_ic,equal_ignorecase- Exact match (case-insensitive)ne,notequal- Not equal (case-sensitive)ne_ic,notequal_ignorecase- Not equal (case-insensitive)ct,contains- Contains substring (case-sensitive)ct_ic,contains_ignorecase- Contains substring (case-insensitive)nc,notcontains- Does not contain (case-sensitive)nc_ic,notcontains_ignorecase- Does not contain (case-insensitive)
contains- Array contains value (case-sensitive)contains_ignorecase- Array contains value (case-insensitive)
eq,equal- Exact date matchbf,before- Before dateaf,after- After date
eq,equal- Exact matchne,notequal- Not equal
jsonpath- JSONPath expression
Value to compare against
Response
Returns the created device group object including:criteria: The filters specified in the requestinherited_criteria: All filters from ancestor groups (parent, grandparent, etc.)
Example: Create Root Group
Example: Create Nested Group
Get Device Group by ID
Retrieve a specific device group by identifier.Path Parameters
Device group identifier (UUID)
Response
Returns the device group object including:criteria: Filters defined for this groupinherited_criteria: Filters from ancestor groups
Example Request
Update Device Group
Update an existing device group’s name, description, parent, or criteria.Path Parameters
Device group identifier (UUID)
Request Body
Updated group name (1-255 characters)
Updated description
Updated parent group ID (validated for circular references)
Updated filter criteria (same format as create)
Response
Returns the updated device group with all filters from the hierarchy.Example Request
Delete Device Group
Delete a device group. Child groups are not automatically deleted.Path Parameters
Device group identifier (UUID)
Response
Returns204 No Content on success.
Example Request
Get Devices in Group
Retrieve all devices matching the group’s filter criteria. Criteria are inherited and composed from parent groups in the hierarchy.Path Parameters
Device group identifier (UUID)
Query Parameters
Number of results per page
Pagination token from previous response
Field name to sort by
Sort direction:
asc or descAdditional filter expressions (applied on top of group criteria)
Response
Returns the same structure as List Devices.Example Request
Example Response
Get Device Group Statistics
Retrieve statistics for devices matching the group’s filter criteria, including total count and status distribution.Path Parameters
Device group identifier (UUID)
Response
Total number of devices in the group
Device count per status. Keys are status types:
NO_IDENTITYACTIVERENEWAL_WINDOWABOUT_TO_EXPIREEXPIREDREVOKEDDECOMMISSIONED
Example Request
Example Response
Hierarchical Group Examples
Three-Level Hierarchy
Create a three-level group hierarchy:- Tag contains “production” (from grandparent)
- Tag contains “sensor” (from parent)
- Tag contains “temperature” (own criteria)
- Status equals “ACTIVE” (own criteria)
