Core Resources

IAM

Identity and Access Management for users, roles, and permissions within your Serverista environment.

Get all permissions

Returns a list of all available permissions

Accepts: application/json
Returns: application/json

Parameters

no parameters


Response

array of Permission

Reference Type:  Permission

description
string
Description of what this permission allows.
example: Allows update of role
id
integer
Unique identifier for the permission.
example: 5
name
string
Name of the permission.
example: role:update
GET /v1/account/permissions
curl -X GET https://api.serverista.com/v1/account/permissions \
  -H "Authorization: ApiKey YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d ''
Response
[
{
  "description": "example_description",
  "id": 123,
  "name": "example_name"
}
]

Create user in account

Create a user in account with specific types

Accepts: application/json
Returns: application/json

Parameters

Request Body
body
CreateUserRequest
Reference Type: CreateUserRequest

User create payload

Response

object of CreateUserResponse

Reference Type:  CreateUserResponse

api_key
string
API key associated with the created user, used for authentication.
example: 51HhG7Qp4WzN1X9z0T8lKQ8mUu7p5VZ2Y...
user_id
integer
Unique identifier of the newly created user.
example: 123
POST /v1/account/users
curl -X POST https://api.serverista.com/v1/account/users \
  -H "Authorization: ApiKey YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d ''
Response

{
  "api_key": "example_api_key",
  "user_id": 123
}

Delete user from account

Delete a use fro the current account

Accepts: application/json
Returns: application/json

Parameters

URL Params
id
string
User id

Response

object of GenericResponse

Reference Type:  GenericResponse

message
string
A human-readable message describing the result of the operation.
example: User created successfully.
success
boolean
Indicates whether the operation was successful.
example: true
DELETE /v1/account/users/:id
curl -X DELETE https://api.serverista.com/v1/account/users/:id \
  -H "Authorization: ApiKey YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d ''
Response

{
  "message": "example_message",
  "success": true
}

Update user role

Updates users role in the current account

Accepts: application/json
Returns: application/json

Parameters

URL Params
id
string
Role id
Request Body
body
UpdateUserRoleRequest
Reference Type: UpdateUserRoleRequest

User role update payload

Response

object of GenericResponse

Reference Type:  GenericResponse

message
string
A human-readable message describing the result of the operation.
example: User created successfully.
success
boolean
Indicates whether the operation was successful.
example: true
POST /v1/account/users/:id/update
curl -X POST https://api.serverista.com/v1/account/users/:id/update \
  -H "Authorization: ApiKey YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d ''
Response

{
  "message": "example_message",
  "success": true
}

Update role

Updates the given role name and permissions

Accepts: application/json
Returns: application/json

Parameters

URL Params
id
string
Role id
Request Body
body
UpdateRoleRequest
Reference Type: UpdateRoleRequest

Role update payload

Response

object of Role

Reference Type:  Role

created_by
integer
ID of the user who created this role.
example: 1001
created_by_name
string
Name of the user who created this role.
example: John
name
string
Name of the role.
example: Admin
role_permissions
array of RolePermission
Reference Type: RolePermission

List of role-permission associations.
system_role
boolean
Indicates if this is a system-defined role.
example: true
updated_at
string
Timestamp when the role was last updated.
example: 2025-10-25T09:21:10Z
account_id
integer
ID of the account this role belongs to.
example: 42
created_at
string
Timestamp when the role was created.
example: 2025-01-15T13:45:30Z
created_by_email
string
Email of the user who created this role.
example: [email protected]
description
string
Description of the role’s purpose or scope.
example: Full administrative access
id
integer
Unique identifier for the role.
example: 1
POST /v1/account/roles/:id/update
curl -X POST https://api.serverista.com/v1/account/roles/:id/update \
  -H "Authorization: ApiKey YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d ''
Response

{
  "account_id": 123,
  "created_at": "example_created_at",
  "created_by": 123,
  "created_by_email": "example_created_by_email",
  "created_by_name": "example_created_by_name",
  "description": "example_description",
  "id": 123,
  "name": "example_name",
  "role_permissions": [
    {
      "...": null
    }
  ],
  "system_role": true,
  "updated_at": "example_updated_at"
}

Delete role

Delete a role from the current account

Accepts: application/json
Returns: application/json

Parameters

URL Params
id
string
Role id

Response

object of GenericResponse

Reference Type:  GenericResponse

success
boolean
Indicates whether the operation was successful.
example: true
message
string
A human-readable message describing the result of the operation.
example: User created successfully.
DELETE /v1/account/roles/:id
curl -X DELETE https://api.serverista.com/v1/account/roles/:id \
  -H "Authorization: ApiKey YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d ''
Response

{
  "message": "example_message",
  "success": true
}

Get account roles

Returns a list of all roles in the account

Accepts: application/json
Returns: application/json

Parameters

no parameters


Response

array of Role

Reference Type:  Role

role_permissions
array of RolePermission
Reference Type: RolePermission

List of role-permission associations.
system_role
boolean
Indicates if this is a system-defined role.
example: true
account_id
integer
ID of the account this role belongs to.
example: 42
created_at
string
Timestamp when the role was created.
example: 2025-01-15T13:45:30Z
created_by_email
string
Email of the user who created this role.
example: [email protected]
created_by_name
string
Name of the user who created this role.
example: John
updated_at
string
Timestamp when the role was last updated.
example: 2025-10-25T09:21:10Z
created_by
integer
ID of the user who created this role.
example: 1001
description
string
Description of the role’s purpose or scope.
example: Full administrative access
id
integer
Unique identifier for the role.
example: 1
name
string
Name of the role.
example: Admin
GET /v1/account/roles
curl -X GET https://api.serverista.com/v1/account/roles \
  -H "Authorization: ApiKey YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d ''
Response
[
{
  "account_id": 123,
  "created_at": "example_created_at",
  "created_by": 123,
  "created_by_email": "example_created_by_email",
  "created_by_name": "example_created_by_name",
  "description": "example_description",
  "id": 123,
  "name": "example_name",
  "role_permissions": [
    {
      "...": null
    }
  ],
  "system_role": true,
  "updated_at": "example_updated_at"
}
]

Create role in account

Create a role in account with selected permissions

Accepts: application/json
Returns: application/json

Parameters

Request Body
body
CreateRoleRequest
Reference Type: CreateRoleRequest

Role create payload

Response

object of Role

Reference Type:  Role

created_at
string
Timestamp when the role was created.
example: 2025-01-15T13:45:30Z
created_by
integer
ID of the user who created this role.
example: 1001
created_by_email
string
Email of the user who created this role.
example: [email protected]
description
string
Description of the role’s purpose or scope.
example: Full administrative access
name
string
Name of the role.
example: Admin
system_role
boolean
Indicates if this is a system-defined role.
example: true
updated_at
string
Timestamp when the role was last updated.
example: 2025-10-25T09:21:10Z
account_id
integer
ID of the account this role belongs to.
example: 42
created_by_name
string
Name of the user who created this role.
example: John
id
integer
Unique identifier for the role.
example: 1
role_permissions
array of RolePermission
Reference Type: RolePermission

List of role-permission associations.
POST /v1/account/roles
curl -X POST https://api.serverista.com/v1/account/roles \
  -H "Authorization: ApiKey YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d ''
Response

{
  "account_id": 123,
  "created_at": "example_created_at",
  "created_by": 123,
  "created_by_email": "example_created_by_email",
  "created_by_name": "example_created_by_name",
  "description": "example_description",
  "id": 123,
  "name": "example_name",
  "role_permissions": [
    {
      "...": null
    }
  ],
  "system_role": true,
  "updated_at": "example_updated_at"
}