---
title: "Create a role"
method: POST
path: "/roles"
tags: ["roles"]
---

# Create a role

`POST /roles`

Create a new role with optional initial permissions

## Request body

- V1RolesCreateRoleRequest
  - `description` string
  - `name` string
  - `permission_ids` string[]

## Response `200`

OK

- Role
  - `description` string
  - `id` string
  - `name` string
  - `permissions` Permission[]
    - `action` string
    - `description` string
    - `id` string
    - `name` string
    - `resource_type` string

## Other responses

- `400` — Bad Request
- `409` — Conflict

## Changes

- **2026-07-04** `44c969026994` — 1 info
  - endpoint added
- **2025-06-02** `0c070796939d` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/marmotdata/apis/marmot-api/changes/roles/post.md)

---

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