List roles
/api/v1/rolesReturns the roles defined for the active Application within the current Environment as an unpaginated { items } collection, each enriched with a permission_count. By default only active roles are returned; pass include_inactive=true to include deactivated roles, and filter by type=system or type=custom. Requires the rbac.view_roles permission.
Authentication
Bearer Token
Authorization Option A JWT access token. Never send alongside X-API-Key: a request carrying both is refused.
API Key
X-API-Key Option B API key for management-tier access. Never send alongside an Authorization header: a request carrying both is refused.
Query Parameters
include_inactiveenum Optional Include deactivated roles in the list.
typeenum Optional Filter by role origin.
Responses
application/json
items *RoleResponseDto[]
application/json
error *ApiErrorBodyDto
application/json
error *ApiErrorBodyDto
Returned object
curl -X GET "https://auth.canopy-io.com/api/v1/roles?include_inactive=true&type=system" \ -H "X-API-Key: $CANOPY_API_KEY"
{ "items": [ { "id": "string", "application_id": "string", "name": "string", "description": "string", "is_system_role": false, "system_key": "string", "is_active": false, "created_at": "2026-04-20T12:00:00.000Z", "updated_at": "2026-04-20T12:00:00.000Z", "version": 0, "permission_count": 0, "member_count": 0 } ] }
Tell us how we can improve this guide.