Skip to content

Studio

Custom domains

With a custom domain, your landing page, legal pages, press kit, QR codes and deep links are served from a domain you own, such as get.habitly.app, with HTTPS set up for you. Custom domains are part of the Studio plan, which includes up to 25 domains per workspace. Workspace owners and admins can add them.

What a custom domain serves

Each domain is connected to one app:

URLServes
https://get.habitly.app/Landing page
/go/{store}Tracked redirect to a store, such as /go/google_play
/open/{path}Deep links
/privacy, /termsPrivacy policy and terms, with optional /{language}
/press, /press.zipPress kit
/qr.svg, /qr.pngQR code
/.well-known/apple-app-site-association
/.well-known/assetlinks.json
Association files for Universal Links and Android App Links
The root shows the landing page to everyone. Unlike mapps.one/habitly, it does not redirect phones to a store. Use the smart link when you want device detection, or get.habitly.app/go/app_store when you want one specific store. Smart link and QR code URLs shown in the dashboard and the API keep using mapps.one.

Before you start

  • Use a subdomain, such as get., download. or app.. The DNS standard does not allow CNAME records on a root domain like habitly.app.
  • You need access to the DNS settings of the domain, at your registrar or DNS provider.
  • A domain can only be connected once across mapps.one.

1. Add the domain

In the dashboard, open Domains, choose Add domain, enter get.habitly.app and pick the app it should serve. The dashboard then shows the DNS records to create, including a verification token unique to your domain.

2. Create the DNS records

TypeNameValuePurpose
TXT_mapps-verify.get.habitly.appmapps-verify=your-tokenProves that you control the domain
CNAMEget.habitly.appdomains.mapps.oneSends traffic to mapps.one

If your DNS provider cannot create a CNAME record for that name, create an A record pointing to the IP address shown in the dashboard instead.

Many DNS providers add your root domain automatically. In that case, enter only the part before it: _mapps-verify.get for the TXT record and get for the CNAME record.

Using Cloudflare? Set the CNAME record to DNS only (grey cloud). If the record is proxied, the certificate cannot be issued and visitors see an error.

3. Verify

Choose Verify now next to the domain. We check the TXT record and where the domain points. Pending domains are also checked automatically every 10 minutes, so you can close the page and come back later. DNS changes usually appear within minutes, but some providers take a few hours.

StatusMeaning
PendingWaiting for the DNS records to appear
VerifiedThe domain is serving your app
FailedA record is missing or wrong. The dashboard shows the reason. Fix the record and verify again.

A domain.verified webhook is sent when verification succeeds.

HTTPS

A TLS certificate is issued automatically the first time someone opens the domain over HTTPS after it is verified. That first request can take a few seconds, and later requests are fast. There is nothing to upload or renew.

Troubleshooting

Check what the world sees with dig, or any online DNS lookup tool:

dig +short TXT _mapps-verify.get.habitly.app
"mapps-verify=your-token"

dig +short CNAME get.habitly.app
domains.mapps.one.
  • The name is doubled, as in get.habitly.app.habitly.app: your provider appended the root domain. Enter only get.
  • Another record exists for the same name, such as an old A record. Remove it, because a CNAME cannot share a name with other records.
  • Proxy or CDN in front: switch the record to DNS only.
  • CAA records on your domain that only allow a specific certificate authority can block the certificate. Remove or extend them.

Remove a domain

Delete the domain in the dashboard, then remove the DNS records at your provider. If the workspace moves off the Studio plan, its custom domains stop serving pages until you upgrade again. Links on mapps.one keep working.