Tenants can use <slug>.supdesk.co.uk or attach a custom hostname such as support.clientname.app. The help center, widget iframe, and /api/v1 public API all share that host.
Add the hostname
In the dashboard go to Settings → Domains → Add domain. Enter the full hostname (no path). Status starts as pending until DNS verifies.
DNS record
Create a CNAME from your chosen hostname to the fallback origin shown in the dashboard (Cloudflare for SaaS custom hostname). Do not proxy through a conflicting TLS terminator unless you understand the implications — we issue the certificate on our edge.
Verification
Click Refresh in the dashboard or call POST /api/admin/domains/:id/refresh. When Cloudflare marks the hostname active, status becomes active and tenant resolution matches the Host header against the domains table (cached 60s in KV).
Widget allowed origins
If you embed the widget on a different origin (for example app.yourcompany.com), add that origin under Settings → Widget → Allowed origins. An empty list allows all origins (development only).