For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
13.5kProductPricingSign inStart free trialBook a demo
DocsAPIsSDKsEnterprise EdgeGuidesAcademyRelease notes
DocsAPIsSDKsEnterprise EdgeGuidesAcademyRelease notes
    • API overview
  • Client API
  • Frontend API
  • Admin API
      • GETRetrieves all licensed users data.
      • GETGet a list of groups
      • POSTCreate a new group
      • GETGet a single group
      • PUTUpdate a group
      • DELDelete a single group
      • DELDelete all SCIM groups
      • GETGet a list of roles
      • POSTCreate a new role
      • GETGet a single role
      • PUTUpdate a role
      • DELDelete a custom role
      • POSTValidate a role
      • GETGet all pending user access requests.
      • POSTApprove a user access request.
      • DELReject a user access request.
      • GETGet your own user details
      • GETGet your own user profile
      • POSTChange your own password
      • GETGet roles for currently logged in user
      • GETGets inactive users
      • POSTDeletes inactive users
      • POSTValidate password for a user
      • POSTChange password for a user
      • POSTReset user password
      • GETGet all users and [root roles](https://docs.getunleash.io/concepts/rbac#predefined-roles)
      • POSTCreate a new user
      • GETSearch users
      • GETGet basic user and group information
      • GETGet total count of admin accounts
      • GETGet user
      • PUTUpdate a user
      • DELDelete a user
      • DELDelete all SCIM users

Unleash reduces the risk of releasing new features, drives innovation by streamlining the software release process, and increases revenue by optimizing end-user experience. While we serve the needs of the world's largest, most security-conscious organizations, we are also rated the “Easiest Feature Management system to use” by G2.

GitHubGitHubLinkedInLinkedInX (Twitter)X (Twitter)SlackSlackStack OverflowStack OverflowYouTubeYouTube

Server SDKs

  • Node.js
  • Java
  • Go
  • Rust
  • Ruby
  • Python
  • .NET
  • PHP
  • All SDKs

Frontend SDKs

  • JavaScript
  • React
  • Next.js
  • Vue
  • iOS
  • Android
  • Flutter

Feature Flag use cases

  • Secure, scalable feature flags
  • Rollbacks
  • FedRAMP, SOC2, ISO2700 compliance
  • Progressive or gradual rollouts
  • Trunk-based development
  • Software kill switches
  • A/B testing
  • Feature management
  • Canary releases

Product

  • Quickstart
  • Unleash architecture
  • Pricing
  • Product vision
  • Open live demo
  • Open source
  • Enterprise feature management platform
  • Unleash vs LaunchDarkly

Support

  • Help center
  • Status
  • Changelog
Made in a cosy atmosphere in the Nordic countries.Copyright © 2026 Unleash
LogoLogo
13.5kProductPricingSign inStart free trialBook a demo
Admin APIUsers

Create a new role

||View as Markdown|
POST
https://app.unleash-instance.example.com/api/admin/roles
POST
/api/admin/roles
$curl -X POST https://app.unleash-instance.example.com/api/admin/roles \
> -H "Authorization: <apiKey>" \
> -H "Content-Type: application/json" \
> -d '{
> "name": "external-contributors"
>}'
1{
2 "version": 1,
3 "roles": {
4 "id": 9,
5 "type": "root",
6 "name": "Editor",
7 "description": "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.",
8 "project": "default"
9 }
10}

Enterprise feature

Create a new custom role for Role-Based Access Control

Was this page helpful?
Previous

Get a single role

Next
Built with

Authentication

Authorizationstring
API key needed to access this API
OR
AuthorizationBearer
API key needed to access this API, in Bearer token format

Request

createRoleWithPermissionsSchema
objectRequired
OR
objectRequired

Response

roleWithVersionSchema
versioninteger>=1
The version of this schema
rolesobject
A single role

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
409
Conflict Error