Skip to content

Roles ​

APIs for defining user roles and permissions. Control what each role can access in the project.

Get User Roles GET ​

Lists all user roles defined in the project.

GET /{project}/users/roles

Path Parameters ​

NameTypeRequiredDescription
projectstringYes-

Response (200 OK) ​

json
[
  {
    "id": "string",
    "name": "string",
    "system": true,
    "permissions": [
      "string"
    ]
  }
]

cURL Example ​

bash
curl -X GET "https://my-project.atlascms.io/{project}/users/roles" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json"

Create User Role POST ​

Creates a new role with configurable permissions.

POST /{project}/users/roles

Path Parameters ​

NameTypeRequiredDescription
projectstringYes-

Request Body ​

json
{
  "name": "string",
  "permissions": [
    "string"
  ]
}

Response (200 OK) ​

json
{
  "result": "string"
}

cURL Example ​

bash
curl -X POST "https://my-project.atlascms.io/{project}/users/roles" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{"name":"string","permissions":["string"]}'

Update User Role PUT ​

Updates an existing role's permissions.

PUT /{project}/users/roles/{id}

Path Parameters ​

NameTypeRequiredDescription
projectstringYes-
idstringYes-

Request Body ​

json
{
  "name": "string",
  "permissions": [
    "string"
  ]
}

cURL Example ​

bash
curl -X PUT "https://my-project.atlascms.io/{project}/users/roles/item-id" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{"name":"string","permissions":["string"]}'

Delete User Role DELETE ​

Deletes a role. Users with this role must be reassigned.

DELETE /{project}/users/roles/{id}

Path Parameters ​

NameTypeRequiredDescription
idstringYes-
projectstringYes-

cURL Example ​

bash
curl -X DELETE "https://my-project.atlascms.io/{project}/users/roles/item-id" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json"

User Permission Set GET ​

Returns the list of available permissions for assigning to roles.

GET /{project}/users/roles/permissions

Path Parameters ​

NameTypeRequiredDescription
projectstringYes-

Response (200 OK) ​

json
[
  {
    "group": "string",
    "type": "string",
    "key": "string",
    "sections": [
      {
        "name": "string",
        "feature": "string",
        "permissions": []
      }
    ]
  }
]

cURL Example ​

bash
curl -X GET "https://my-project.atlascms.io/{project}/users/roles/permissions" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json"

Atlas CMS Documentation