Skip to content

Get organization member stats

GET
/api/v1/organizations/{orgId}/members/stats
curl --request GET \
--url http://localhost:3000/api/v1/organizations/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/members/stats \
--header 'X-API-Key: <X-API-Key>'

Returns aggregate stats for members of the organization: total, byStatus (active/inactive), byRole keyed by role name, and pendingInvitations.

orgId
required
string format: uuid

Organization UUID

x-organization-id
string format: uuid

UUID of the organization (tenant) the request acts in. It selects the tenant and grants nothing: the server checks membership or an open tenant switch. Not needed for global operations. A malformed value returns 400. API keys are fixed to their own organization; another organization returns 403. The x-organization-source header grants nothing.

Stats retrieved successfully

Media typeapplication/json
object
total
required

Total number of users

number
byStatus
required

User counts by status

object
active
required

Number of active users

number
inactive
required

Number of inactive/disabled users

number
byRole
required

Organization-membership counts keyed by role name. Roles are organization-scoped, so the keys are whatever roles exist. Org-scoped this equals a user count; platform-wide a user in several organizations is counted once per membership.

object
key
additional properties
integer
pendingInvitations
required

Number of invitations that are neither accepted nor expired. These are not users and are deliberately not part of byStatus.

number
Example
{
"total": 25,
"byStatus": {
"active": 20,
"inactive": 3
},
"byRole": {
"admin": 3,
"operator": 8,
"viewer": 14
},
"pendingInvitations": 2
}

Unauthorized

Forbidden - Insufficient permissions

Organization not found