---
title: "Create role"
method: POST
path: "/access-control/roles"
tags: ["Access Control"]
---

# Create role

`POST /access-control/roles`

Creates a new role.

## Request body

- CreateRoleRequest
  - `description` string, nullable
  - `is_system` boolean, required
  - `name` string, required
  - `weight` integer, nullable

## Response `201`

Created

- CreateRoleResponse
  - `role` Role, required
    - `created_at` string, date-time, required
    - `description` string, nullable
    - `id` string, required
    - `is_system` boolean, required
    - `name` string, required
    - `updated_at` string, date-time, required
    - `weight` integer, required

## Changes

- **2026-07-09** `dad8e2644615` — 1 info
  - endpoint added
- **2026-07-08** `d2f9387037c5` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/authula/apis/authula-api/changes/access-control/roles/post.md)

---

[API](https://skmtc.dev/authula/apis/authula-api.md) · [All operations](https://skmtc.dev/authula/apis/authula-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/authula/authula-api/revisions/1a139f96a670/schema)
