Skip to content

Custom Domains

By default, your Mini App is served at {project}.tma.sh. You can add a custom domain so users access your app at your own address, like app.yourdomain.com.

Go to your project’s Settings > Domains page and enter your domain (e.g., app.yourdomain.com).

Add a CNAME record at your DNS provider pointing to tma.sh:

TypeNameValueTTL
CNAMEapptma.shAuto

For an apex domain (e.g., yourdomain.com without a subdomain), some DNS providers require an ALIAS or ANAME record instead of CNAME. Check your provider’s documentation.

TMA.sh checks for the DNS record automatically. Verification usually completes within a few minutes, but DNS propagation can take up to 48 hours depending on your provider.

Once the domain is verified, TMA.sh provisions an SSL certificate via Cloudflare. HTTPS is enforced by default — no configuration needed.

StatusMeaning
PendingDNS record not yet detected. Waiting for propagation.
ActiveDomain verified and serving traffic with SSL.
FailedVerification failed. Check your DNS configuration.

You can check the current status on the Settings > Domains page in the dashboard.

You can add multiple custom domains to a single project. All domains serve the same deployment. This is useful for:

  • Regional domains (e.g., app.yourdomain.com and app.yourdomain.de)
  • Migrating from an old domain to a new one
  • Vanity URLs

Custom domains apply to your static SPA. API routes remain accessible at {project}--api.tma.sh/api/*. If you need a custom domain for your API, contact support.

To remove a custom domain, go to your project’s Settings > Domains page in the dashboard and delete the domain entry. Traffic to that domain will stop resolving. Remember to clean up the DNS record at your provider as well.

Custom domain management is dashboard-only — there are no CLI commands for adding, listing, or removing domains.