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