# Role

Schema reference for role definitions and the permissions attached to them.

### Roles Table

**Table Name:** `roles`\
**Description:** Role definitions and permissions

{% tabs %}
{% tab title="Schema" %}

| Column              | Type      | Description                         |
| ------------------- | --------- | ----------------------------------- |
| `_id`               | string    | Role identifier                     |
| `created_at`        | timestamp | Creation timestamp                  |
| `description`       | string    | Role description                    |
| `expired_at`        | timestamp | Expiration timestamp                |
| `frontend_view`     | string    | Frontend view (`client` or `admin`) |
| `inherited_from`    | string    | Parent role ID                      |
| `is_base_role`      | boolean   | Base role flag                      |
| `name`              | string    | Role name                           |
| `org_id`            | string    | Organization identifier             |
| `permission_grants` | json      | Permission definitions              |
| `region_name`       | string    | Deployment region                   |
| `updated_at`        | timestamp | Last update timestamp               |
| {% endtab %}        |           |                                     |

{% tab title="Query Example" %}

```sql
SELECT
  name,
  description,
  is_base_role,
  permission_grants
FROM roles
WHERE expired_at IS NULL OR expired_at > NOW();
```

{% endtab %}
{% endtabs %}
