Skip to content

Branding

Branding settings live in the Options table under the branding_* key prefix. Changes are read by both the backend (where templated emails reference the site name and logo) and the frontend (where they're injected into the document head and topbar).

Configuration

KeyPurpose
branding_site-nameBrowser tab title and email From display name. Defaults to "Sosyabot".
branding_site-taglineTagline shown on auth pages and emails.
branding_logo-urlAbsolute URL or repo-relative path to the logo (PNG or SVG recommended).
branding_favicon-urlPath or URL to the favicon.
branding_default-themelight | dark | system. Users can still override per device.

Storage

GET /api/v1/options                          list with optional ?prefix=branding_
PUT /api/v1/options    { key, value }        upsert one

All values are stored as UTF-8 strings. Restarting the API is not required — the frontend re-reads on next page load.

Asset hosting

Logo and favicon URLs can point at:

  • The Sosyabot file store (paste a URL from Files Library).
  • An S3 bucket / CDN you control.
  • A path under the API's static-files mount.

For self-hosted deployments, dropping assets into backend/dist/public/branding/ and referencing them as /branding/logo.svg is the simplest path.