Skip to main content

Create a new role

POST 

/api/admin/roles

Create a new custom role for Role-Based Access Control

Request

Body

required

createRoleWithPermissionsSchema

    anyOf

    name stringrequired

    The name of the custom role

    Example: external-contributors
    description string

    A more detailed description of the custom role and what use it's intended for

    Example: Users with external-contributors role have limited access to most features in Unleash
    type string

    Custom root roles (type=root-custom) are root roles with a custom set of permissions. Custom project roles (type=custom) contain a specific set of permissions for project resources.

    Possible values: [root-custom, custom]

    Example: root-custom

    permissions

    object[]

    A list of permissions assigned to this role

  • Array [

  • name stringrequired

    The name of the permission

    Example: CREATE_PROJECT
    environment string

    The environments of the permission if the permission is environment specific

    Example: development
  • ]

Responses

roleWithVersionSchema

Schema

    version integerrequired

    The version of this schema

    Possible values: >= 1

    Example: 1

    roles

    object

    required

    A role holds permissions to allow Unleash to decide what actions a role holder is allowed to perform

    id integerrequired

    The role id

    Example: 9
    type stringrequired

    A role can either be a global root role (applies to all projects) or a project role

    Example: root
    name stringrequired

    The name of the role

    Example: Editor
    description string

    A more detailed description of the role and what use it's intended for

    Example: Users with the editor role have access to most features in Unleash but can not manage users and roles in the global scope. Editors will be added as project owners when creating projects and get superuser rights within the context of these projects. Users with the editor role will also get access to most permissions on the default project by default.
    project stringnullable

    What project the role belongs to

    Example: default
Loading...