Skip to main content
By default, your users see Hopae-hosted URLs during verification. A custom domain lets you serve the hosted verification UI and the OIDC backend from your own branded hostnames instead, so the whole flow stays on your brand.

The two hosts

A custom domain configures two hostnames, and they play different roles:
HostFieldReplacesServes
Web Frontend URLwebDomainThe default Hopae-hosted verification UIThe hosted UI your users open during verification
OIDC Backend URLoidcDomainThe default Hopae OIDC endpointThe OIDC backend (issuer, authorize, token, userinfo)
The two hosts must be different from each other and must share the same base domain. For example, verify.example.com (web) and connect.example.com (oidc) are both under example.com — valid. Using the same host for both, or hosts on different base domains, is rejected.

Status and lifecycle

A custom domain moves through a small set of states. You can read the current state at any time and show it in your own UI.
StatusWhat it means
unconfiguredNo custom domain is set. This is where every app starts.
awaiting_dnsYou submitted the two hosts and the DNS records are ready. Add all of them at your DNS provider, then verify.
verifyingRecords were detected and ownership is being confirmed; the SSL certificate is being issued.
activeThe certificate is issued and your domain is live, serving the verification UI and OIDC backend.
invalidSomething needs fixing (for example, a missing or incorrect record, or a configuration conflict). Fix it and verify again.

Verified vs. active

Two milestones are easy to confuse:
  • Verified — your DNS records are in place and Hopae has confirmed you control the domain. This is the verifying checkpoint passing.
  • Active — the SSL certificate has been issued and the domain is live and serving traffic. This is the active status.
A domain can be verified but not yet active: ownership is confirmed (verifying) while the SSL certificate is still being issued. Only rely on the domain once it reaches active.

DNS records

When you configure a custom domain, Hopae gives you a set of DNS records to add at your DNS provider. Add every record shown, for both hosts (web and OIDC) — the domain only goes active once they are all in place. The records fall into three kinds:
RecordPurpose
Routing (CNAME)Points each host (web and OIDC) to Hopae so requests are routed to us.
Ownership (TXT)Proves you control the domain.
SSL / DCV (CNAME or TXT)Lets the certificate authority validate your domain so it can issue the SSL certificate — Hopae manages the certificate for you.
Partial records are not enough. If any record is missing, verification stays at awaiting_dns or verifying and the domain never reaches active. Add every record shown for both the web and OIDC hosts.

How status advances

Status only changes when you trigger a verify. There is no background polling and no webhooks for custom domain status — Hopae does not re-check your DNS on its own.
  • After you add the DNS records, call the verify action (POST .../custom-domain/verify).
  • Each verify re-checks DNS and SSL and returns the updated state.
  • Repeat verify (poll) until the status reaches active.
  • Reading the domain with GET .../custom-domain is read-only — it returns the stored state but never advances it.
In the Console, the custom domain screen calls verify for you on a short interval and when you click Refresh. If you integrate directly against the Workspace API, you own the polling — call verify until the status is active.

See also