Custom domain and branding
Make your portal look like the rest of your product, and serve it at your own address, such as feedback.example.com.
Branding#
Owners and admins set the portal's look under Settings → Branding. It applies to the portal and to the widget, which shows the portal inside your app.
- Logo: a PNG, JPEG, GIF or WebP image, up to 10 MB, shown about 28 pixels high in the portal's header. Without a logo, the portal shows your workspace's initial.
- Accent color: check An accent color of your own and pick one for the portal's buttons and links. Leave it unchecked for the default.
- Theme: System follows each visitor's device, light or dark, and gives them a switch in the portal's header to choose the other. Light and Dark always use that one, for everyone.
- "Powered by Swingback": shown at the bottom of the portal. Uncheck it to hide it.
Then click Save.
Custom domain#
Your portal lives at your workspace's subdomain. A custom domain moves it to a hostname of yours. A workspace has one custom domain, and only owners add, check and remove it, under Settings → Custom domain.
Add your domain#
- Enter the Hostname, such as
feedback.example.com, and click Add domain. It must be a subdomain of a domain you own, not the domain itself (example.com). - At your DNS provider, publish the two records the page shows:
- a TXT record named
_swingback-verify.feedback.example.com, holding the value shown (swingback-verify=…). It proves the domain is yours. - a CNAME record from
feedback.example.comto the target shown. It points the domain at the portal. Where a CNAME can't go, A and AAAA records holding all of the target's addresses work too.
- a TXT record named
- Wait for the check, or click Check now.
Swingback checks the records every minute for the first hour, then every 10 minutes, for a week. The page shows what the last check found for each record. Check now looks at once, up to 30 times an hour.
Once it's active#
When both records match, the domain is verified and shows as Being set up while its HTTPS certificate is issued, which usually takes about a minute. It then shows as Active: reload the page, or click Check now. Then:
- The portal answers on your domain, with an HTTPS certificate of its own, renewed automatically.
- The portal's usual address redirects there, keeping the page that was asked for.
- The links Swingback sends use your domain: emails, sign-in links, Slack and Discord announcements, webhook payloads.
- Visitors who were signed in on the usual address sign in again on your domain.
A hostname belongs to the first workspace that verifies it.
When a domain stops#
An active domain's records are checked every day. If they fail three checks in a row, the domain stops and the portal goes back to its usual address. A stopped domain shows Stopped, and the page says why:
| The page says | What happened |
|---|---|
| Its records didn't verify it within a week. | The records never matched during the first week. |
| Another workspace verified this hostname first. | Another workspace proved control of the hostname before yours. |
| It couldn't be set up. | Its certificate could not be issued, again and again. |
| Its records changed, so the portal went back to its usual address. | The TXT or CNAME record failed three daily checks in a row. |
Fix what's wrong, then click Check now: the domain starts over, with another week to verify.
Remove your domain#
Remove domain sends the portal back to its usual address, and links to your domain stop working. Visitors signed in there sign in again. If you add the domain again later, it gets a new TXT value to publish.
Renaming your workspace#
The workspace's slug names the portal's usual address. Owners change it under Settings → General. The old address keeps working: it redirects to the new one, and no other workspace can take the old slug. A workspace keeps its five most recent old slugs; older ones are released, and another workspace may then take them.
