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

# Get Roles

`GET /v1/admin/roles`

## Request

- The document declares no server URL.
- Auth: HTTP bearer

## Query parameters

- `offset` integer: Number of roles to skip.
- `limit` integer: Maximum number of roles to return.
- `sort_by` 'id' | 'name' | 'created'
- `sort_order` 'asc' | 'desc'

## Response `200`

Successful Response

- RolesResponse
  - `object` 'list': Type of the object.
  - `total` integer, required: Total number of roles.
  - `offset` integer, required: Offset of the roles list.
  - `limit` integer, required: Limit of the roles list.
  - `data` RoleResponse[], required: List of roles.
    - `object` 'role': Type of the object.
    - `id` integer, required: ID of the role.
    - `name` string, required: Name of the role.
    - `permissions` PermissionType[], required: List of permissions.
    - `limits` Limit[], required: List of limits.
      - `router_id` integer, required: The router ID.
      - `type` 'tpm' | 'tpd' | 'rpm' | 'rpd', required
      - `value` integer, nullable: The limit value.
    - `users` integer, required: Number of users assigned to the role.
    - `created` integer, required: Time of creation, as Unix timestamp.
    - `updated` integer, required: Time of last update, as Unix timestamp.

## Other responses

- `401`: Invalid authentication scheme.<br>Invalid API key.
- `403`: User has no admin rights.<br>Your account has expired. Please contact support to renew your account.
- `422`: Validation Error

## Changes

- **2026-09-29** `2f7a4a0aac8f`: 1 info
  - endpoint added
- **2026-09-29** `da70d9cd1957`: 1 breaking
  - api path removed without deprecation
- **2026-08-20** `0db3023472ef`: 1 info
  - removed the `create_public_collection` enum value from the `data/items/permissions/items/` response property for the response status `200`
- **2026-05-23** `d3e7e6dcdd41`: 1 info
  - added the non-success response with the status `403`
- **2026-04-30** `d5f1d3d5614e`: 1 breaking, 2 warning, 11 info
  - removed the required property `data/items/limits/items/router` from the response with the `200` status
  - deleted the `query` request parameter `order_by`
  - deleted the `query` request parameter `order_direction`
  - added the new optional `query` request parameter `sort_by`
  - …10 more

[Operation history](https://skmtc.dev/betagouv/apis/opengatellm/changes/v1/admin/roles/get.md)

---

[API](https://skmtc.dev/betagouv/apis/opengatellm.md) - [All operations](https://skmtc.dev/betagouv/apis/opengatellm/llms.txt) - [OpenAPI document](https://skmtc.dev/betagouv/apis/opengatellm/revisions/2f7a4a0aac8f?raw)
