Site index
Sitemap
Find every guide, supported platform, reusable component, core concept, and TypeScript API reference in Domain SDK.
Getting started
Guides
- Custom domain implementation guidesBuild secure SaaS custom-domain workflows with practical TypeScript guides for setup, DNS, polling, persistence, testing, and troubleshooting.
- Add and remove customer domainsUse safe idempotency without silently claiming domains from another resource.
- Build a custom-domain settings pageConnect an authenticated tenant endpoint to Domain SDK without exposing credentials.
- Display DNS records correctlyGive customers complete instructions without registrar-specific assumptions.
- Give tenants managed subdomainsSafely map tenant labels to subdomains under a parent domain you own.
- Handle apex domains and subdomainsRespect adapter capabilities without guessing public-suffix boundaries.
- Poll until a domain is activeWait sequentially with cancellation, timeout, and provider backoff.
- Production credential setupScope and store platform credentials for server-side domain management.
- Store domain state in your databasePersist tenant ownership and cached UI state while keeping the provider authoritative.
- Switch providers safelyBuild a deliberate migration without pretending Domain SDK moves live traffic.
- Tenant authorization and domain securityPrevent cross-tenant access and abandoned-domain takeover.
- Test without external API callsSimulate latency, failures, transitions, and calls with isolated memory providers.
- Troubleshoot certificate issuanceSeparate certificate validation from routing and hostname ownership.
- Troubleshoot pending DNSDiagnose routing and ownership records that remain pending or invalid.
Providers
- Custom domain provider comparisonCompare custom domain support across Vercel, Cloudflare for SaaS, Railway, Render, and Netlify before choosing a TypeScript adapter.
- Cloudflare for SaaS custom domainsManage Cloudflare for SaaS Custom Hostnames with a server-side TypeScript adapter for normalized status, DNS records, and certificates.
- Netlify custom domainsAdd, monitor, and remove customer domains as aliases on an existing Netlify site with a typed server-side TypeScript adapter.
- Railway custom domainsAdd, monitor, and remove Railway custom domains for one project, environment, and service with a typed server-side TypeScript adapter.
- Render custom domainsAdd, verify, monitor, and remove custom domains for a Render web service or static site with a server-side TypeScript adapter.
- Testing providerExercise domain flows without credentials, network calls, or shared state.
- Vercel custom domainsAdd, verify, monitor, and remove Vercel project domains with a typed, server-side TypeScript adapter that preserves exact DNS instructions.
Components
- Custom domain UI componentsAdd accessible, copy-ready DNS instructions and optional one-click DNS setup to a React custom-domain settings page.
- DNS records UI componentAdd a copy-ready React DNS records table to your SaaS domain settings page so customers can configure routing, ownership, and certificates.
- One-click DNS setup componentSend customers from your SaaS domain settings page to a supported DNS provider for reviewed, automatic record configuration.
Concepts
- Custom domain architecture conceptsUnderstand the domain lifecycle, DNS records, ownership verification, managed TLS, provider capabilities, status, errors, and tenant security.
- DNS recordsRender exact normalized routing, ownership, and certificate instructions.
- Domain lifecycleMove a hostname from user input to provider-authoritative activation.
- Error handlingHandle normalized provider failures without leaking secrets.
- Managed certificatesTrack provider-managed TLS issuance separately from DNS and ownership.
- Ownership verificationProve a customer controls a hostname without collecting registrar credentials.
- Platform providersUnderstand what adapters normalize and what remains provider-specific.
- Provider capabilitiesDetect optional list, verification, certificate, apex, and wildcard behavior.
- Security modelKeep provider credentials server-side and tenant ownership in your application.
- Status modelUse overall, verification, certificate, and DNS-record states without false precision.
API reference
- Domain SDK TypeScript API referenceReference the typed clients, provider contract, domain model, DNS records, lifecycle status, errors, polling, and isolated testing utilities.
- createDomainClientCreate a stateless client from a provider and optional silent-by-default logger.
- createSubdomainClientScope tenant hostname operations to direct children of one owned parent domain.
- DnsRecordExact DNS instruction normalized for a SaaS settings UI.
- DomainProvider-independent state returned by every lifecycle read.
- DomainClientReference for normalized custom-domain lifecycle methods.
- DomainProviderImplement the adapter contract for a platform provider.
- DomainSdkErrorStructured, sanitized failures shared by the core and provider adapters.
- DomainStatusExhaustive overall lifecycle status union.
- Testing utilitiesReference for the isolated testing-only subpath.
- waitUntilActiveSequential polling with timeout, cancellation, callback, and retry backoff.
Project
- Domain SDK projectFollow Domain SDK releases, inspect the open-source project, and learn how to contribute provider adapters, fixes, documentation, or tests.
- ChangelogUser-visible Domain SDK releases and compatibility changes.
- ContributingSet up the workspace, make a focused change, and run the repository checks.