Every end-user in the caller's own tenant, newest first
const url = 'http://localhost:3000/operator/inspect/users?limit=25';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'http://localhost:3000/operator/inspect/users?limit=25' \ --header 'Authorization: Bearer <token>'Same tenant-from-session shape as GET /operator/inspect/activities. Keyset
pagination on (created_at DESC, id DESC) via next. Both owner and member
may read; platform staff have no tenant and get 403. cursor is still accepted
as a deprecated alias for next, for consistency with the rest of the API — new
callers should use next.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”Page size, 1-100.
Opaque paging token. Pass the next value from the previous page.
Responses
Section titled “Responses”A page of users, newest first.
object
An end-user of the tenant’s app. custom is deliberately absent — it is tenant-defined arbitrary JSON and does not belong in a list view.
object
Opaque cursor. Null when no further page.
Examplegenerated
{ "results": [ { "id": "example", "created_at": "2026-04-15T12:00:00Z", "updated_at": "2026-04-15T12:00:00Z", "revoked_before": "2026-04-15T12:00:00Z" } ], "next": "example"}Validation failed — malformed next or an out-of-range limit.
object
object
Present only for VALIDATION_FAILED.
object
Example
{ "error": { "code": "VALIDATION_FAILED" }}Invalid, expired, revoked, or absent token.
object
object
Present only for VALIDATION_FAILED.
object
Example
{ "error": { "code": "VALIDATION_FAILED" }}Caller is platform staff, who have no tenant to inspect.
object
object
Present only for VALIDATION_FAILED.
object
Example
{ "error": { "code": "VALIDATION_FAILED" }}