On this page

8 endpoints.

MethodPathSummary
GET/api/usersGet all users (requires VIEW_USERS permission)
POST/api/usersCreate new user (requires CREATE_USER permission)
DELETE/api/users/{userId}Delete user (requires DELETE_USER permission)
GET/api/users/{userId}Get user by ID (requires VIEW_USERS permission)
PUT/api/users/{userId}Update user (requires UPDATE_USER permission)
PUT/api/users/{userId}/roleUpdate user role (requires MANAGE_MEMBERS permission)
PUT/api/users/{userId}/statusToggle user status (requires UPDATE_USER permission)
PUT/api/users/profileUpdate current user's own profile

Auth: Bearer JWT required.

Parameters

NameInRequiredTypeDescription
pagequerynointeger—
limitquerynointeger—
searchquerynostring—

Responses

StatusDescriptionBody
200Paginated list of users—
403Permission denied—

Auth: Bearer JWT required.

Request body (required) — application/json

FieldTypeRequiredDescription
emailstring (email)yes—
firstNamestringyes—
familyNamestringyes—
passwordstringno—

Responses

StatusDescriptionBody
201User created successfully—
403Permission denied—

Auth: Bearer JWT required.

Parameters

NameInRequiredTypeDescription
userIdpathyesstring (uuid)—

Responses

StatusDescriptionBody
200User deleted successfully—
403Permission denied—

Auth: Bearer JWT required.

Parameters

NameInRequiredTypeDescription
userIdpathyesstring (uuid)—

Responses

StatusDescriptionBody
200User details—
403Permission denied—
404User not found—

Auth: Bearer JWT required.

Parameters

NameInRequiredTypeDescription
userIdpathyesstring (uuid)—

Request body — application/json

FieldTypeRequiredDescription
firstNamestringno—
familyNamestringno—
emailstring (email)no—

Responses

StatusDescriptionBody
200User updated successfully—
403Permission denied—

Auth: Bearer JWT required.

Parameters

NameInRequiredTypeDescription
userIdpathyesstring (uuid)—

Request body (required) — application/json

FieldTypeRequiredDescription
roleenum: ADMIN, MODERATOR, MEMBERyes—

Responses

StatusDescriptionBody
200Role updated successfully—
403Permission denied—

Auth: Bearer JWT required.

Parameters

NameInRequiredTypeDescription
userIdpathyesstring (uuid)—

Responses

StatusDescriptionBody
200User status toggled successfully—
403Permission denied—

Auth: Bearer JWT required.

Request body — multipart/form-data

FieldTypeRequiredDescription
firstNamestringno—
familyNamestringno—
avatarstring (binary)no—

Responses

StatusDescriptionBody
200Profile updated successfully—
401Authentication required—