DoDomain

Custom domains for SaaS: API, widget, SDKs

Add custom domains to your SaaS. Create a connect session over REST, your user connects DNS in a hosted flow, and a signed webhook confirms it.

DoDomain adds custom domains for SaaS products (the DNS half of "bring your own domain", done for you). Instead of building DNS instructions, verification polling, and provider quirks into your own product, you drop in DoDomain: your server mints a connect session over REST, your end user finishes DNS setup in a hosted flow (or an embedded widget), and DoDomain verifies the records against the domain's authoritative nameservers and calls your webhook with a signed event. TLS stays at your own host; DoDomain never proxies traffic.

How it works

  1. Your server creates a session: one POST /api/v1/sessions call describing the DNS records your product needs on the customer's domain (for example a CNAME pointing at your edge).
  2. Your user connects the domain: the returned connectUrl opens a hosted flow that detects the user's DNS provider and picks the best path: on Cloudflare it offers a real one-click apply via OAuth; everywhere else it shows provider-specific, copy-paste instructions with live per-record verification.
  3. DoDomain verifies and tells you: records are checked against the domain's authoritative nameservers, and a signed connection.verified webhook fires the moment everything matches.
  4. Monitoring keeps it honest, free, on every plan: verified connections are re-checked automatically (every 10 minutes for their first day, then hourly for a week, then every 6 hours); if DNS drifts, the suspicion is confirmed on three consecutive checks, you get a connection.failed webhook naming the failing records, and you can trigger a re-verify on demand. There is no "monitored domains" meter and no monitoring add-on: see Webhooks and monitoring.

The pieces

Still choosing a route? Custom domains for SaaS: every option compared weighs DoDomain against Cloudflare for SaaS, Entri, Approximated and building it yourself.

Where things live

  • dodomain.io: the marketing site and public docs; dodomain.io/changelog is the dated record of what shipped.
  • app.dodomain.io: the dashboard, the hosted connect flow, and the API base URL.
  • npm: @dodomain/node (server SDK) and @dodomain/connect (browser widget), both MIT-licensed with zero runtime dependencies.
  • PyPI: dodomain-sdk (Python server SDK, sync and async), MIT-licensed, httpx its only dependency.

On this page

We use analytics cookies to understand how DoDomain is used. The sign-in cookie is essential and is set regardless; the privacy policy names every service involved. Privacy policy