> For the complete documentation index, see [llms.txt](https://docs.rooks.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rooks.ai/build-and-publish-forms/use-your-own-domain.md).

# Use Your Own Domain

Connect a branded hostname to Rooks and choose which published form it opens.

By default, every form is published at a the default Rooks subdomain. You can replace this with your own domain.

### Before connecting a domain

By default, every form is published at the default Rooks subdomain (`[form-name].onrooks.com`), but a custom domain lets people open a form from an address associated with your organization, such as `forms.example.com`. This can make the form feel more familiar and consistent with your brand.

Before beginning:

* Confirm that you or your domain administrator can update the domain’s DNS settings.
* Choose a hostname that is not already being used by another website or service.
* Use a subdomain such as `forms.example.com` or `intake.example.com`.
* Enter only the hostname—not `https://`, a path, or other URL information.

Rooks currently requires a subdomain. A root domain such as `example.com` cannot be connected directly.

### Steps

{% stepper %}
{% step %}

### Connect the domain

1. To add the hostname to your workspace, open your workspace’s **Settings** <i class="fa-arrow-right">:arrow-right:</i> **Domains** <i class="fa-arrow-right">:arrow-right:</i> **Connect Domain**.
2. Enter the complete hostname, such as `forms.example.com`.
3. Select **Connect**.

A hostname can only be connected to one Rooks workspace at a time.
{% endstep %}

{% step %}

### Connect the domain

1. To add the hostname to your workspace, open your workspace’s **Settings** <i class="fa-arrow-right">:arrow-right:</i> **Domains** <i class="fa-arrow-right">:arrow-right:</i> **Connect Domain**.
2. Enter the complete hostname, such as `forms.example.com`.
3. Select **Connect**.

A hostname can only be connected to one Rooks workspace at a time.
{% endstep %}

{% step %}

### Configure DNS

After connecting the domain, Rooks displays two DNS records:

* A **TXT** record that verifies your ownership of the hostname
* A **CNAME** record that routes the hostname to Rooks

```
// Verification Record
Type
TXT

Name
_promptintake-verify.[your-subdomain].com

Value
promptintake-verify=[some-value]
```

```
// CNAME record
Type
CNAME

Name
forms.stuff.com

Value
[some-ID].cloudfront.net
```

Sign in to your DNS provider and create both records using the **Name** and **Value** shown in Rooks. Copy the values exactly, without adding a protocol or path.

Some DNS providers automatically add your root domain to the record name. For example, they may expect `forms` instead of `forms.example.com`. Check your provider’s instructions if the complete hostname is duplicated after saving.

{% hint style="warning" icon="square-exclamation" %}
The CNAME record cannot share the same hostname with a conflicting **CNAME**, **A**, or **AAAA** record. If one already exists, confirm that it is safe to replace before removing or changing it.
{% endhint %}
{% endstep %}

{% step %}

### Verify the connection

After saving both DNS records:

1. Return to **Settings** > **Domains**.
2. Find the domain marked **DNS required**.
3. Select **Verify DNS**.

{% hint style="info" icon="square-info" %}
DNS changes can take up to 48 hours to propagate, but typically will resolve within a few minutes.
{% endhint %}
{% endstep %}
{% endstepper %}

Once ownership is confirmed, the domain may briefly show **Provisioning** while Rooks prepares the secure connection. It will show **Verified** when it is ready to use, and you domain will become live.

Keep the CNAME record in place. Removing or changing it will interrupt traffic to the custom domain.

### Map a form

Mapping determines which form opens when someone visits the custom hostname.

To map a form:

1. Open the domain’s options menu.
2. Select **Map Form**.
3. Select the form you want the domain to open.

Each custom hostname can be mapped to one form at a time. You can return to **Map Form** later to choose a different form.

The selected form must be published before visitors can use it from the custom domain.

### Test and troubleshoot

Once the domain is **Verified** and a form is mapped, open the hostname in an incognito or private browsing window. Confirm that:

* The address uses HTTPS without a browser warning.
* The expected form opens.
* The form’s styling, questions, and conditional paths work as expected.
* A test response can be completed successfully.

If the connection does not work:

* **DNS required:** Confirm that the TXT record’s name and value exactly match those shown in Rooks. Allow additional time for DNS propagation, then select **Verify DNS** again.
* **Provisioning:** Wait a few minutes and refresh the **Domains** page.
* **Inactive:** Update the CNAME record so it points to the routing value shown in Rooks.
* **No form configured:** Open the domain’s options and map a form.
* **The form is unavailable or outdated:** Publish or republish the mapped form.
* **The domain is already connected:** Confirm that it is not connected to another Rooks workspace.

If the records appear correct but verification continues to fail, ask your domain administrator to confirm that the TXT and CNAME records are publicly available.
