Appearance
Tenant Branding (White-label)
White-labeling is available when the tenant plan has whitelabel_enabled / whitelabelEnabled.
What you can configure
Saved as tenant attribute key branding (JSON):
| Field | Effect |
|---|---|
app_name | Browser title, header brand label, auth page copy |
sidebar_title | Sidebar / drawer brand text (falls back to app_name) |
logo_url | Header logo |
favicon_url | Browser favicon |
login_background_url | Login / signup / forgot-password background |
primary_color | Ant Design primary theme + selected sidebar item |
secondary_color | Secondary theme accents (buttons hover / tags) |
sidebar_background_color | App sidebar / drawer background |
header_background_color | Top header background |
logo_height / logo_max_width | Logo sizing in the header |
Custom app hostname is a separate attribute: custom_app_hostname (full hostname only, e.g. iot.customer.com).
Update Branding
- Open tenant settings (owner / admin).
- Edit branding fields (and optional custom hostname).
- Save. The UI applies branding immediately and persists to tenant attributes.
Upload Assets
- Open tenant settings.
- Upload logo, favicon, or login background.
- The API stores the file under tenant branding assets and returns a URL stored in the branding JSON.
Constraints:
- Plan must have white-label enabled.
- Supported image types only; size limits apply (logo/favicon ~3 MB, login background ~8 MB).
Custom hostname
- Create a CNAME from your hostname to the platform app host (shown in settings).
- Save the same hostname in
custom_app_hostname. - Unauthenticated pages resolve branding via
GET /api/public/tenant-branding?hostname=....
TLS for the customer hostname is terminated at your CDN / load balancer (not automated in-app).
Known limits
- Hosted sign-in / password-reset emails may still show Autoconnecto branding until custom domains are configured.
- Platform signup OTP (pre-tenant) stays Autoconnecto-branded.
- Native splash / store icon remain build-time; runtime branding applies to in-app chrome.
Mobile app
After sign-in, the Capacitor app loads branding from /api/tenant-attributes and applies app name, logo (login), and primary color CSS vars.
Pre-login hostname branding uses GET /api/public/tenant-branding?hostname= with:
VITE_BRANDING_HOSTNAMEwhen set (recommended for white-label mobile builds), elsewindow.location.hostname(useful for web / custom-domain wrappers)
Transactional email branding
When a tenant has branding configured, invite / alarm / report emails use:
app_namein subjects and body copyprimary_colorfor email header / CTA buttonslogo_urlin the email header when set (absolute URL)
