---
title: "Get Roles"
method: GET
path: "/api/v1/admin/roles"
tags: ["Admin APIs", "roles"]
---

# Get Roles

`GET /api/v1/admin/roles`

Get all roles with optional filtering based on client compliance status.

- Non-compliance managed clients: Returns only Client Admin and User roles
- Compliance managed clients: Returns all roles
- No client_id: Returns all roles

## Query parameters

- `client_id` string, nullable — Filter roles by client's compliance status
- `filter` string, nullable
- `sort` string, nullable
- `range` string, nullable

## Response `200`

Successful Response

- RoleRead[]
  - `name` string, required
  - `description` string, nullable
  - `parent_id` string, uuid4, nullable
  - `id` string, uuid4, required
  - `policy_rules` PolicyRule[], required
    - `resource_id` string, uuid4, required
    - `action_id` string, uuid4, required
    - `scope_id` string, uuid4, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/carbonarc/apis/carbon-arc-client-admin-api.md) · [All operations](https://skmtc.net/carbonarc/apis/carbon-arc-client-admin-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/carbonarc/carbon-arc-client-admin-api/revisions/a8ca30023371/schema)
