PLEXICHATNarrative Docs

Settings

Guides, route-group overviews, and live schema entry points for the Plexichat backend.

REST http://api.plexichat.com/api/v1Gateway ws://api.plexichat.com/gatewayVersion a.1.0-49

User Settings API

Cloud-synced key-value store for user preferences.

Settings are stored server-side and sync across all devices. Use this for storing user preferences like theme, notification settings, and UI customizations.

GET /users/@me/settings

Get all settings for the current user.

Headers


Authorization: Bearer <token>

Response (200 OK)


{
  "settings": {
    "theme": "dark",
    "notifications_enabled": "true",
    "compact_mode": "false"
  },
  "count": 3,
  "limit": 100
}

Response Fields

FieldTypeDescription
settingsobjectKey-value pairs of settings
countintNumber of settings stored
limitintMaximum settings allowed

GET /users/@me/settings/{key}

Get a specific setting by key.

Headers


Authorization: Bearer <token>

Path Parameters

ParameterTypeDescription
keystringSetting key

Response (200 OK)


{
  "key": "theme",
  "value": "dark",
  "created_at": 1704067200,
  "updated_at": 1704153600
}

Error Responses

StatusCodeDescription
404Setting not foundSetting with key doesn't exist

PUT /users/@me/settings/{key}

Set a setting value. Creates or updates the setting.

Headers


Authorization: Bearer <token>

Path Parameters

ParameterTypeDescription
keystringSetting key

Request Body

FieldTypeRequiredConstraintsDescription
valuestringYesMax 10000 charsSetting value

Example Request


{
  "value": "dark"
}

Response (200 OK)


{
  "key": "theme",
  "value": "dark",
  "created_at": 1704067200,
  "updated_at": 1704153600
}

Error Responses

StatusCodeDescription
400Limit exceededToo many settings stored
400Key too longKey exceeds max length
400Value too longValue exceeds 10000 characters
400Key reservedKey is reserved for system use

DELETE /users/@me/settings/{key}

Delete a setting.

Headers


Authorization: Bearer <token>

Path Parameters

ParameterTypeDescription
keystringSetting key

Response (200 OK)


{
  "success": true
}

Error Responses

StatusCodeDescription
404Setting not foundSetting with key doesn't exist

---

Common Settings Keys

These are commonly used setting keys (not enforced, just conventions):

KeyDescriptionExample Values
themeUI theme"dark", "light", "system"
compact_modeCompact message display"true", "false"
notifications_enabledEnable notifications"true", "false"
notification_soundNotification sound"default", "none", "custom"
message_displayMessage grouping"standard", "compact"
developer_modeShow developer options"true", "false"
localeLanguage preference"en-US", "es-ES"
timezoneUser timezone"America/New_York"

---

Related Endpoints

  • Users - User profile management
  • Features - User features and badges