Profile & Preferences
User settings, themes, and customization.
PUT /api/users/{username}/theme
Set user's theme preference.
Authentication: Required
Path Parameters:
| Parameter | Type | Description |
|---|---|---|
username | string | Username |
Request Body:
{
"theme": "dark"
}
Supported Themes:
light- Light themedark- Dark themeauto- System preference
Response:
Returns updated user object with theme saved in settings.
GET /api/top-menu-templates
Get available top menu templates for users.
Authentication: Required
Response:
{
"templates": [
{
"id": "default",
"name": "Default Menu",
"items": []
}
]
}
Use Case:
Configure user's navigation menu preferences.
User Settings
User settings are stored in the settings JSONB field and can include:
Common Settings
{
"theme": "dark",
"language": "en",
"dateFormat": "MM/DD/YYYY",
"timeFormat": "12h",
"pageSize": 50,
"notifications": {
"email": true,
"inApp": true
},
"dashboard": {
"layout": "grid",
"widgets": []
}
}
Update via PUT /api/users/\{username\} or PUT /api/me with settings object.
GET /api/users/{username}/memberships
Get user's team memberships.
Authentication: Required
Path Parameters:
| Parameter | Type | Description |
|---|---|---|
username | string | Username |
Response:
{
"_links": {
"self": { "href": "/api/users/{username}/memberships" }
},
"_embedded": {
"inf:membership": [
{
"teamId": "team:analytics",
"userId": "john.doe",
"role": "member",
"joinedAt": "2024-01-15T10:00:00Z",
"_links": {
"inf:team": { "href": "/api/teams/team:analytics" }
}
}
]
},
"start": 0,
"count": 1,
"total": 1
}
Use Case:
Display all teams a user belongs to and their roles.