Users / Update
Update user
Route: /api/sys/v{version:apiVersion}/users/{id}
Method: PUT
Authorisation: Minimum role: USER
Response object
Response status: 200 (OK)
Response type: DTO_user
Wrapper: DTO_response_wrap
Other response statuses: 400 (BadRequest), 403 (Forbidden)
Response body example
DTO_user
| Name | Type | ReadOnly | Description |
|---|---|---|---|
| tenant_user | DTO_tenant_user | Tenant user | |
| created_by | DTO_reference_user | ReadOnly | Created by |
| last_updated_by | DTO_reference_user | ReadOnly | Last updated by |
| language | DTO_translation_language | ReadOnly | Language |
| admin_roles | admin_role[] | ReadOnly | Admin roles held by the user. Empty list = not an admin (normal app user). A user may hold multiple roles simultaneously. |
| permissions | admin_permission[] | ReadOnly | Granular admin permissions. Empty unless at least one admin_role is held. Ignored for SUPER_ADMIN. |
| id | Int32 | ReadOnly | Id |
| String | |||
| given_name | String | Given name | |
| family_name | String | Family name | |
| full_name | String | ReadOnly | Name |
| profile_pic | String | ReadOnly | Profile pic |
| created | DateTime | ReadOnly | Created |
| last_updated | DateTime | ReadOnly | Last updated |
| display_absolute_time | Boolean | ReadOnly | Display absolute time |
| is_deleted | Boolean | ReadOnly | Is deleted |
DTO_tenant_user
| Name | Type | ReadOnly | Description |
|---|---|---|---|
| groups | DTO_reference_is_admin[] | Groups | |
| brand_users | DTO_brand_user[] | Brands within this tenant that the user has explicit BrandUser access to. SUPER_ADMIN / OWNER / ADMIN tenant-wide brand access is not expanded here — the FE should derive that from + . | |
| id | Int32 | ReadOnly | Id |
| tenant_id | Int32 | Tenant id | |
| user_id | Int32 | User id | |
| role | ENUM tenant_user_role | Tenant role | |
| status | ENUM tenant_user_status | Status | |
| last_seen | DateTime | Last seen |
DTO_reference_is_admin
| Name | Type | ReadOnly | Description |
|---|---|---|---|
| is_admin | Boolean | ReadOnly | Is admin |
| id | Int32 | Id | |
| label | Object | ReadOnly | Label |
DTO_brand_user
| Name | Type | ReadOnly | Description |
|---|---|---|---|
| tenant_id | Int32 | Tenant id | |
| brand_id | Int32 | Brand id | |
| role | ENUM brand_user_role | Role |
DTO_reference_user
| Name | Type | ReadOnly | Description |
|---|---|---|---|
| profile_pic | String | ReadOnly | Profile pic |
| String | ReadOnly | ||
| role_enum_id | tenant_user_role (nullable) | Role enum id | |
| id | Int32 | Id | |
| label | Object | ReadOnly | Label |
DTO_translation_language
| Name | Type | ReadOnly | Description |
|---|---|---|---|
| id | Int32 | ReadOnly | Leave empty on input |
| name | String | Name | |
| code | String | Code | |
| icon | String | ReadOnly | Icon |
| icon_sqare | String | ReadOnly | Icon sqare |
ENUM tenant_user_role
| Value | Name | Description |
|---|---|---|
| 0 | UNKNOWN | UNKNOWN |
| 1 | OWNER | Owner |
| 2 | ADMIN | Admin |
| 3 | USER | User |
ENUM tenant_user_status
| Value | Name | Description |
|---|---|---|
| 0 | UNKNOWN | UNKNOWN |
| 1 | ACTIVE | ACTIVE |
| 2 | DEACTIVE | DEACTIVE |
ENUM brand_user_role
| Value | Name | Description |
|---|---|---|
| 0 | UNKNOWN | UNKNOWN |
| 1 | USER | User |
| 2 | READ_ONLY | Read only |