Profiles and preferences API
5 endpoints under /v1/me/ and /v1/profiles/.
| Method | Path | Purpose |
|---|---|---|
GET |
/v1/me |
Your profile + tenant context. |
PUT |
/v1/me |
Update display name, avatar, bio. |
GET |
/v1/me/preferences |
Your preferences. |
PUT |
/v1/me/preferences |
Update preferences (merge-update). |
PUT |
/v1/me/presence |
Set presence state manually. |
GET /v1/me#
json
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | |
Preferences#
jsonc
{
"data": {
"locale": "en", // ui language: en | nl | de
"timezone": "Europe/Amsterdam", // IANA tz
"time_format": "24h", // "12h" | "24h"
"ai_response_mode": "conversational", // "streaming" | "conversational"; updated by room-wide flips
"ai_engagement_mode": "always", // "always" | "mention" | "keyword" | "autonomous"
// — applied when this user invites an AI into a new group room
"default_mode": "all", // notification floor: "all" | "mentions" | "none"
"quiet_hours": {
"enabled": false,
"start": null, "end": null,
"weekdays_only": false, "weekends_only": false
},
"keyword_alerts": [],
"read_marker_mode": "leave", // "leave" | "scroll"
"push": true,
"email": false,
"email_address": null
}
}
PUT /v1/me/preferences is merge-update — only the keys you
send are touched; everything else is preserved.
Presence#
bash
1 2 3 | |
States: online, idle, busy, appear_offline. Setting any of
these is sticky — the auto-detect rule stops applying until you
explicitly reset:
bash
1 2 3 | |