Settings, Preferences and Devices
Each user has settings that follow them across browsers and devices: preferences for how the product looks and behaves, notification settings for what reaches them and where, and a registry of their devices. They are all personal, so every call acts on the signed-in user and nobody else's.
Preferences
A preference is a key and a JSON value, such as schema:action-menu-mode set to "grid". A preference has a scope, global (the default) or project. A project-scoped preference carries the project id as its scope id, so the same key can hold a different value in each project.
| Task | Call |
|---|---|
| List all of your preferences | GET /preferences |
| Read or delete one by key | GET or DELETE /preferences/{key} |
| Set one or more | PUT /preferences |
| Merge a batch from a client | POST /preferences/sync |
Sync is for clients that keep a local copy. Each item carries the client's updatedAt, and the merge is last-write-wins on that timestamp.
Notification settings
A notification setting decides whether a category of notification reaches you on a channel.
- Categories:
WORKFLOW,BACKLOG,KNOWLEDGE,SESSION,BRAINSTORMING,SCM,GOVERNANCE,ARTIFACT,NOTIFICATIONandSYSTEM. - Channels:
web(the in-app bell) andemail. - Each setting has
enabledand an optionalminSeverity, the lowest severity you want to hear about on that channel.
GET /notification-settings returns every category and channel pair. A pair you have never changed shows the platform default and has isDefault: true; one you set shows isDefault: false. PUT /notification-settings upserts many at once, PUT /notification-settings/{category}/{channel} sets one, and DELETE on the same path resets that pair to the platform default.
Devices
A device registry tells Xema where you are signed in, per channel. POST /devices registers a device or updates one you already registered, with a channel, a client-generated deviceId and optional metadata. The record keeps when the device was last seen. GET /devices lists your devices and DELETE /devices/{deviceId} removes one.
Your inbox
GET /notificationslists your notifications (paged), andGET /notifications/unreadreturns the unread count and stats.PATCH /notifications/{id}/readmarks one read, andPATCH /notifications/read-allmarks all of them.PATCH /notifications/{id}/dismissdismisses one, which is permanent.GET /questionslists questions waiting on you (approvals, choices, free-form answers and reviews), andGET /questions/badgereturns the pending count for a badge.
Previous: ← Groups