Manager Users
Role names and
user_group_idvalues are listed in User groups.
Administrative endpoints for managing user accounts. Requires manager or administrator role.
List Users
GET /manager/users.json
Retrieve all users in the company.
Response
[
{
"User": {
"id": "123",
"active": true,
"email_status": "confirmed",
"pilot": true,
"two_factor": "OFF",
"api": false,
"email": "john@example.com",
"user_group_id": "110",
"expiration": null
},
"UserDetail": {
"name": "John",
"surname": "Doe",
"photo": "https://..."
},
"UserGroup": {
"name": "Pilot",
"id": "110"
}
}
]Users List (Simplified)
GET /manager/users/list.json
Retrieve a simplified user list (ID to name mapping). Useful for dropdowns.
Response
View User
GET /manager/users/view/{id}.json
Retrieve full user details including login history and company context.
Path Parameters
id
string
User ID
Response
Create User
POST /manager/users/create.json
Create a new user account. This is also how pilot and student accounts are created (the NEO Add Pilot form and Import both post here).
Permissions
Restricted to
user_group_id∈ {1, 100, 105, 110, 120} (Company Administrators, Operations Managers, Compliance & Safety Managers and Human Resources Managers). Every other group, including Chief Pilots (150), gets403"You are not allowed to create users".User.user_group_idis required and must be between100and300; it can never be more senior (lower) than the caller's own group.On the
freeplan, creating a pilot (user_group_id151–299) is refused with400once the company has more than 100 pilots.
Request Body
Fields should match the user and user detail structure (email, name, surname, user_group_id, etc.).
Response
Validation Errors
External Auditor accounts (user_group_id: 250)
Auditor accounts are always temporary, external, read-only. These rules are enforced server-side on both create and edit — they cannot be bypassed by the client:
pilotis forced tofalse. Auditors never have flying privileges.expirationis required and must be no more than 90 days from the time of the request. Validation errors:"Auditor accounts must have an expiration date","Expiration date must be in the future","Auditor accounts cannot be granted for more than 90 days from today".Two-factor authentication is forced to
EMAIL— an auditor's credential can never be switched toTOTPorOFF, regardless of which endpoint attempts it.
Edit User
POST /manager/users/edit.json
Update an existing user account. The same External Auditor account validation described under Create User above applies here too.
Delete User
POST /manager/users/delete/{id}.json
Delete a user account. Requires confirmation.
Path Parameters
id
string
User ID
Request Body
confirm
boolean
Yes
Must be true to confirm deletion
Resend Activation
POST /pilots/reminder.json
Resend the activation/welcome email to a user.
Request Body
user
string
Yes
User ID
Billing Pilots
GET /manager/bills/pilots.json
Retrieve pilot list for billing operations.
Response
Same structure as pilot list endpoint.
Last updated