Skip to content
SENS Platform Docs

List devices visible in the caller's organization scope.

GET
/v1/tenants/{tenantNumber}/devices
curl --request GET \
--url 'https://api.dev.iot-sens.schlossers.at/v1/tenants/1/devices?status=active&limit=25' \
--header 'Authorization: Bearer <token>'

Returns devices in stable ascending creation order with the Device ID as a unique tie-breaker. Items and totalCount use the same filters, organization visibility, and database snapshot. A cursor is bound to the caller, scope, filters, and page size. Malformed, stale, oversized, or query-incompatible cursors fail with VALIDATION_FAILED.

tenantNumber
required
integer format: int32
>= 1 <= 2147483647
status
string
Allowed values: active disabled retired
q
string
<= 100 characters
deviceTypeId
string format: uuid
organizationUnitId
string format: uuid
cursor
string
<= 512 characters

Opaque continuation token; reuse the original filters and scope.

limit
integer
default: 25
Allowed values: 25 50 100

Scope-filtered stable device cursor page.

Media typeapplication/json
object
items
required
Array<object>
object
deviceId
required
string format: uuid
tenantId
required
string format: uuid
deviceTypeId
required
string format: uuid
devEui
required
string
>= 16 characters <= 16 characters /^[A-F0-9]{16}$/
name
required
string
>= 1 characters <= 200 characters
status
required
string
Allowed values: active disabled retired
metadata
required
object
<= 50 properties
key
additional properties
One of:
string
currentAssignment
required
One of:
object
deviceAssignmentId
required
string format: uuid
deviceId
required
string format: uuid
tenantId
required
string format: uuid
organizationUnitId
required
string format: uuid
validFrom
required
string format: date-time
validTo
required
One of:
string format: date-time
assignedAt
required
string format: date-time
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
currentOrganizationName
required
One of:
string
>= 1 characters <= 200 characters
deviceTypeName
required
string
>= 1 characters <= 200 characters
nextCursor
string
totalCount
required
integer
Example
{
"items": [
{
"status": "active"
}
]
}

A safe platform error response.

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: VALIDATION_FAILED AUTHENTICATION_FAILED AUTHORIZATION_FAILED RESOURCE_NOT_FOUND CONFLICT DEPENDENCY_FAILURE FLOW_FAILURE RATE_LIMITED INTERNAL_ERROR
category
required
string
Allowed values: validation authentication authorization not_found conflict dependency_failure flow_failure rate_limit internal
message
required

Safe client-facing diagnostic message.

string
correlationId
required

Correlation ID for operational investigation.

string
>= 1 characters
details

Safe bounded diagnostic details.

object
key
additional properties
One of:
string
Example
{
"error": {
"code": "VALIDATION_FAILED",
"category": "validation"
}
}
Cache-Control
string
Allowed value: no-store

A safe platform error response.

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: VALIDATION_FAILED AUTHENTICATION_FAILED AUTHORIZATION_FAILED RESOURCE_NOT_FOUND CONFLICT DEPENDENCY_FAILURE FLOW_FAILURE RATE_LIMITED INTERNAL_ERROR
category
required
string
Allowed values: validation authentication authorization not_found conflict dependency_failure flow_failure rate_limit internal
message
required

Safe client-facing diagnostic message.

string
correlationId
required

Correlation ID for operational investigation.

string
>= 1 characters
details

Safe bounded diagnostic details.

object
key
additional properties
One of:
string
Example
{
"error": {
"code": "VALIDATION_FAILED",
"category": "validation"
}
}
Cache-Control
string
Allowed value: no-store