---
title: "Create new role"
method: POST
path: "/api/v1/roles"
tags: ["Roles"]
---

# Create new role

`POST /api/v1/roles`

Creates a new role in the system. Only admins can add roles.

## Request body

- RoleForm
  - `roleName` string, required
  - `roleKey` string
  - `parentRoleId` string
  - `canEditUsers` boolean
  - `canEditPermissions` boolean
  - `canEditLayouts` boolean
  - `description` string

## Response `200`

Role created successfully

- RoleResponseEntityView
  - `errors` ErrorEntity[]
    - `errorCode` string
    - `message` string
    - `fieldName` string
  - `entity` object
  - `messages` MessageEntity[]
    - `message` string
  - `i18nMessagesMap` object
  - `permissions` string[]
  - `pagination` Pagination
    - `currentPage` integer
    - `perPage` integer
    - `totalEntries` integer

## Other responses

- `400` — Bad request - invalid role data or role name failed
- `401` — Unauthorized - authentication required
- `403` — Forbidden - admin permissions required

---

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