> ## Documentation Index
> Fetch the complete documentation index at: https://docs.klara-ai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Custom Domains

> Serve application links from your own domain.

With a custom domain, the application links your participants receive live on your own subdomain, for example `https://onboard.yourcompany.com/apply/abc123` instead of `https://app.klara-ai.com/external/your-org/apply/abc123`. Everything participants see stays on your branded host, including email verification and returning visit sessions.

<Note>
  Custom domains are enabled per organization. If you don't see **Custom Domain** under Settings, contact your account manager or [founders@klara-ai.com](mailto:founders@klara-ai.com) to have it enabled.
</Note>

## Prerequisites

* Custom domains enabled for your organization
* Admin access to your Klara dashboard
* Access to your company's DNS settings
* A **subdomain** to dedicate to Klara (e.g., `onboarding.yourcompany.com` or `kyb.yourcompany.com`). Apex domains like `yourcompany.com` are not supported.

## Setting up your domain

<Steps>
  <Step title="Enter your subdomain in Klara settings">
    Go to **Settings → Custom Domain** and enter your desired subdomain, e.g. `onboard.yourcompany.com`. Provide the hostname only. No `https://`, paths, ports, or query params. Only subdomains are supported; apex domains like `yourcompany.com` are not.
  </Step>

  <Step title="Klara shows the DNS record to add">
    Klara validates the domain and shows the DNS record you must add, for example:

    |                  |                                                       |
    | ---------------- | ----------------------------------------------------- |
    | **Type**         | `CNAME`                                               |
    | **Name/Host**    | `onboard`                                             |
    | **Value/Target** | Klara-provided edge hostname (shown in the dashboard) |

    In some cases an additional `TXT` record is required to prove domain ownership, if the dashboard shows one, add it too.
  </Step>

  <Step title="Add the DNS record">
    Add the record wherever you manage DNS for `yourcompany.com`.
  </Step>

  <Step title="Verify">
    Click **Check DNS**. Klara checks that `onboard.yourcompany.com` resolves to the expected target, DNS changes can take a few minutes (occasionally longer) to propagate. Once verified, Klara provisions TLS automatically so the domain works over HTTPS. No certificate management is needed on your side.
  </Step>
</Steps>

## Klara handles the rest

Once the domain is **Active**:

* **New application links use your custom domain**: `https://onboard.yourcompany.com/apply/{token}`. This applies to links returned by [Create Application](/api-reference/create-application) and [Refresh Pre-Auth](/api-reference/refresh-pre-auth), and to invite and reminder emails.
* **When a user opens the link, Klara's edge layer handles it internally** and serves the Klara-hosted application — nothing to deploy or proxy on your side.
* **Existing links keep working.** Previously issued `app.klara-ai.com/external/...` links remain valid indefinitely, there is no redirect or cut-over to worry about.
* **The participant experience is unchanged.** Email verification, pre-auth codes, saving progress, and returning visits all work on your domain exactly as they do on the default host.

Your dashboard, API endpoints, and webhooks are unaffected, the custom domain only serves participant-facing application pages.

## Limits

* One custom domain per organization.
* Subdomains only, apex/root domains (e.g., `yourcompany.com`) aren't supported.
* The domain must not already be in use by another service.

## Troubleshooting

| Status                               | Meaning                                                  | What to do                                                                                    |
| ------------------------------------ | -------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| **Pending verification**             | DNS record not yet detected                              | Confirm the record at your DNS provider, wait for propagation, then click **Check DNS** again |
| **Active** with "DNS Not Configured" | Domain was verified but the CNAME is no longer resolving | Check the CNAME record wasn't removed or changed                                              |
| **Failed**                           | Verification failed                                      | Click **Retry** in the dashboard; if it persists, contact support                             |

Removing the domain from the dashboard reverts all new links to the default `klara-ai.com` host immediately.
