Manage Users & Access Control
Overview
This guide walks you through managing users, roles, and access controls in the N-Central platform. The User & Access Management APIs allow you to create, retrieve, update, and manage user accounts, roles, and access groups. In this guide, you'll learn how to:
- Manage Users and User Lists
- Create and Configure Access Groups
- Define and Manage User Roles
- Implement Role-Based Access Control
- Handle Access Group Relationships
Managing Users
List Users in Organization
To retrieve a list of users within an organization unit, use the List Users endpoint. This endpoint supports pagination and sorting to manage large user lists effectively.
Required Parameters:
orgUnitId: The ID of the organization unitAuthorization: Bearer token for authentication
Optional Parameters:
pageSize: Number of results per page (default: 50, max: 1000)pageNumber: Page number to retrievesortBy: Field to sort by (lastName, username, accountstatus, etc.)sortOrder: Sort direction (asc/desc)
Request
GET https://api.n-able.com/api/org-units/{orgUnitId}/users
Authorization: Bearer <YOUR_JWT_HERE>Response
Upon success, N-able returns a 200 status code along with the list of users and pagination details:
{
"data": [
{
"firstName": "John",
"lastName": "Doe",
"userName": "[email protected]",
"userId": 1234567890,
"isEnabled": true,
"apiOnlyUser": false,
"twoFactorEnabled": false,
"roleIds": [12, 13, 14],
"accessGroupIds": [1, 2, 3]
}
],
"pageNumber": 1,
"pageSize": 50,
"totalItems": 150,
"totalPages": 3
}Key points in the response:
userId: Unique identifier for the userisEnabled: Current status of the user accountroleIds: Array of assigned role identifiersaccessGroupIds: Array of associated access group IDs
Managing Access Groups
Create Device Access Group
To create a new device access group, use the Create Device Access Group endpoint. This allows you to define access boundaries for specific devices.
Required Parameters:
orgUnitId: Organization unit identifiergroupName: Name of the access groupgroupDescription: Description of the group
Optional Parameters:
deviceIds: Array of device IDs to includeuserIds: Array of user IDs to associate
Request
POST https://api.n-able.com/api/org-units/{orgUnitId}/device-access-groups
Authorization: Bearer <YOUR_JWT_HERE>
Content-Type: application/json
{
"groupName": "Production Servers",
"groupDescription": "Access group for production server management",
"deviceIds": ["1001", "1002"],
"userIds": ["5001", "5002"]
}Response
A successful creation returns a 204 status code with no content.
Error Responses:
400: Invalid request format401: Authentication failure403: Insufficient permissions404: Organization unit not found429: Too many requests
Managing User Roles
Create User Role
To add a new user role in an organization, use the Create User Role endpoint.
Required Parameters:
orgUnitId: Organization unit identifierroleName: Name of the roledescription: Role descriptionpermissionIds: Array of permission identifiers
Request
POST https://api.n-able.com/api/org-units/{orgUnitId}/user-roles
Authorization: Bearer <YOUR_JWT_HERE>
Content-Type: application/json
{
"roleName": "Support Team Lead",
"description": "Senior support team access with elevated permissions",
"permissionIds": ["1", "2", "3"],
"userIds": ["5001", "5002"]
}Response
Success returns a 201 status code with the created role details:
{
"data": {
"roleId": 123,
"roleName": "Support Team Lead",
"description": "Senior support team access with elevated permissions",
"permissionIds": ["1", "2", "3"],
"userIds": ["5001", "5002"]
}
}Implementing Role-Based Access Control (RBAC)
Best Practices for Role Design
-
Role Hierarchy
- Create roles based on job functions
- Implement least-privilege access
- Use inheritance where appropriate
-
Permission Assignment
- Group related permissions logically
- Document permission combinations
- Regular review and audit
Example Role Structure
{
"roles": {
"admin": {
"permissions": ["USER_MANAGE", "ROLE_MANAGE", "ACCESS_GROUP_MANAGE"],
"description": "Full system administration access"
},
"support": {
"permissions": ["DEVICE_VIEW", "TICKET_MANAGE"],
"description": "Support team access"
}
}
}Managing Access Group Relationships
Link Users to Access Groups
To associate users with access groups, update the access group membership:
PUT https://api.n-able.com/api/org-units/{orgUnitId}/access-groups/{groupId}
Authorization: Bearer <YOUR_JWT_HERE>
Content-Type: application/json
{
"userIds": ["user1", "user2"]
}Link Devices to Access Groups
Add devices to device access groups:
PUT https://api.n-able.com/api/org-units/{orgUnitId}/device-access-groups/{groupId}
Authorization: Bearer <YOUR_JWT_HERE>
Content-Type: application/json
{
"deviceIds": ["device1", "device2"]
}Updated 3 months ago