# Roles
# Paginate Roles
GET
/roles
# Example Request
curl --location --request GET 'https://yourwebsite.com/api/roles' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {api_key}' \
--header 'Authorization: Bearer {api_key}'
# Example Response
{
"data": [
{
"name": "my_role",
"display_name": "My Role",
"description": "Default system role.",
"id": 1,
"removable": true,
"users_count": 1,
"created_at": "2017-04-20 16:47:59",
"updated_at": "2017-04-27 10:47:59"
},
// ...
],
// ...
}
# Available includes
If provided, the available includes will be part of the response for each ticket object.
permissions
A list of permissions available for a each role.
users_count
A number of users with that role.
# Sortable Fields
name
, created_at
(default)
# Partial filters
name
# Create Role
POST
/roles
# Parameters
Parameter | Type | Required | Description |
---|---|---|---|
name | String | Yes | Role name for using it within the code. |
display_name | String | Yes | Role display name. |
description | String | No | A short role description. |
# Example Request
curl --location --request POST 'https://yourwebsite.com/api/roles' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {api_key}' \
--header 'Authorization: Bearer {api_key}' \
--data-raw '{
"name": "my_role",
"display_name": "My Role",
"description": "Default system role."
}'
# Example Response
{
"data": {
"name": "my_role",
"display_name": "My Role",
"description": "Default system role.",
"id": 1,
"removable": true,
"users_count": 1,
"created_at": "2017-04-20 16:47:59",
"updated_at": "2017-04-27 10:47:59"
}
}
# Get Role
GET
/roles/{id}
# Example Request
curl --location --request GET 'https://yourwebsite.com/api/roles/{id}' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {api_key}' \
--header 'Authorization: Bearer {api_key}'
# Example Response
{
"data": {
"name": "my_role",
"display_name": "My Role",
"description": "Default system role.",
"id": 1,
"removable": true,
"users_count": 1,
"created_at": "2017-04-20 16:47:59",
"updated_at": "2017-04-27 10:47:59"
}
}
# Update Role
PATCH
/roles/{id}
# Parameters
Parameter | Type | Required | Description |
---|---|---|---|
name | String | No | Role name for using it within the code. |
display_name | String | No | Role display name. |
description | String | No | A short role description. |
# Example Request
curl --location --request PATCH 'https://yourwebsite.com/api/roles/123' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {api_key}' \
--header 'Authorization: Bearer {api_key}' \
--data-raw '{
"name": "my_role",
"display_name": "My Role",
"description": "Default system role."
}'
# Example Response
{
"data": {
"name": "my_role",
"display_name": "My Role",
"description": "Default system role.",
"id": 1,
"removable": true,
"users_count": 1,
"created_at": "2017-04-20 16:47:59",
"updated_at": "2017-04-27 10:47:59"
}
}
# Delete Role
DELETE
/roles/{id}
# Example Request
curl --location --request DELETE 'https://yourwebsite.com/api/roles/123' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {api_key}' \
--header 'Authorization: Bearer {api_key}'
# Example Response
Status: 200 OK
{
"success": true
}
# Get Permissions
GET
/roles/{id}/permissions
# Example Request
curl --location --request GET 'https://yourwebsite.com/api/roles/123/permissions' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {api_key}' \
--header 'Authorization: Bearer {api_key}'
# Example Response
{
"data": [
{
"name": "users.create",
"display_name": "Create Users",
"description": "Allows user creation.",
"id": 1,
"removable": true,
"created_at": "2017-04-20 16:47:59",
"updated_at": "2017-04-27 10:47:59"
},
// ...
]
}
# Update Permissions
POST
/roles/{id}/permissions
# Parameters
Parameter | Type | Required | Description |
---|---|---|---|
permissions | Array | Yes | A list of permission IDs to assign to the given role |
# Example Request
curl --location --request GET 'https://yourwebsite.com/api/roles/123/permissions' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {api_key}' \
--header 'Authorization: Bearer {api_key}' \
--data-raw '{
"permissions": [
1,
2,
3
]
}'
# Example Response
{
"data": [
{
"name": "users.create",
"display_name": "Create Users",
"description": "Allows user creation.",
"id": 1,
"removable": true,
"created_at": "2017-04-20 16:47:59",
"updated_at": "2017-04-27 10:47:59"
},
// ...
]
}
← Sessions Permissions →