# Zuwiki

## Custom Domain

> Category: Plans & Account

---

## Pages

- [Welcome to Zuwiki](https://docs.zuwiki.com/welcome-to-zuwiki)

### Getting Started

- [Create Your First Wiki](https://docs.zuwiki.com/getting-started/create-your-first-wiki)
- [Organize with Categories](https://docs.zuwiki.com/getting-started/organize-with-categories)
- [Publish Your First Page](https://docs.zuwiki.com/getting-started/publish-your-first-page)

### Core Concepts

- [Wikis, Categories, and Pages](https://docs.zuwiki.com/core-concepts/wikis-categories-and-pages)
- [Page Lifecycle](https://docs.zuwiki.com/core-concepts/page-lifecycle)
- [Page History and Restore](https://docs.zuwiki.com/core-concepts/page-history-and-restore)

### Access & Sharing

- [Public vs Internal Wikis](https://docs.zuwiki.com/access-sharing/public-vs-internal-wikis)
- [Visibility for Public Wikis](https://docs.zuwiki.com/access-sharing/visibility-and-access)
- [Share Links](https://docs.zuwiki.com/access-sharing/share-links)
- [Access Grants](https://docs.zuwiki.com/access-sharing/access-grants)
- [Classification and Sensitivity](https://docs.zuwiki.com/access-sharing/classification-and-sensitivity)

### Editor Guide

- [Markdown Basics](https://docs.zuwiki.com/editor-guide/markdown-basics)
- [Linking Between Pages](https://docs.zuwiki.com/editor-guide/linking-between-pages)
- [Icons and Visual Touches](https://docs.zuwiki.com/editor-guide/icons-and-visual-touches)
- [Rich Content Blocks](https://docs.zuwiki.com/editor-guide/rich-content-blocks)
- [OpenAPI Pages](https://docs.zuwiki.com/editor-guide/openapi-pages)

### Plans & Account

- [Plans and Limits](https://docs.zuwiki.com/plans-account/plans-and-limits)
- [Custom Domain](https://docs.zuwiki.com/plans-account/custom-domain)
- [Zuwiki for Open Source](https://docs.zuwiki.com/plans-account/zuwiki-for-open-source)

### Integrations

- [MCP Server](https://docs.zuwiki.com/integrations/mcp-server)

---

# Custom Domain

You can serve any Zuwiki wiki under a domain you own, for example `docs.yourcompany.com`. Custom domains are available on every plan, including Free.

## What you get

- The wiki is reachable under your domain instead of the default Zuwiki URL.
- HTTPS is set up automatically. Zuwiki provisions and renews the TLS certificate for you.
- Links, OpenGraph metadata, and analytics use the custom domain.

## Setup at a glance

1. Add the domain in the wiki settings.
2. Create two DNS records at your registrar: a **CNAME** (or ALIAS for an apex domain) and a **TXT** record.
3. Wait for Zuwiki to verify the records and issue a certificate.

The domain moves through four states while this happens:

- **Not started**: the domain is registered in Zuwiki but no DNS records are detected yet.
- **Pending**: at least one of the two DNS records is correct, the other is not.
- **Generating certificate**: both records check out, Zuwiki is issuing the TLS certificate.
- **Verified**: the domain is live and serves the wiki.

## DNS records

### CNAME or ALIAS

Point the host you want to use at the Zuwiki edge.

| Type | Host | Value |
| --- | --- | --- |
| CNAME | `docs` (for `docs.yourcompany.com`) | `cname.zuwiki.com` |
| ALIAS / ANAME | `@` (for an apex like `yourcompany.com`) | `cname.zuwiki.com` |

Most providers do not allow a CNAME on the apex of a zone. If you want to use the bare domain, look for an ALIAS or ANAME record type at your registrar. Cloudflare, Netlify DNS, and several others offer it.

### TXT for ownership

Add a TXT record on `_zuwiki-verify.<your domain>` containing the verification token shown in the wiki settings. The token is a UUID, unique per domain, and never rotated unless you remove and re-add the domain.

| Type | Host | Value |
| --- | --- | --- |
| TXT | `_zuwiki-verify.docs` | the verification token from the UI |

## How verification works

Zuwiki queries authoritative DNS servers directly, not its local resolver cache, so changes propagate as fast as your TTL allows. For apex domains it falls back to an A record check if no CNAME is present.

Both the CNAME (or A) and the TXT record must be valid at the same time. Once that is true, the status switches to **Generating certificate** and a certificate is issued in the background. The whole flow usually finishes in a few minutes.

## Troubleshooting

- **Stuck on Pending.** One of the two records is wrong or has not propagated. Check both with `dig` or an online DNS lookup, paying attention to the exact hostname.
- **Stuck on Generating certificate.** The DNS records are correct but the certificate has not been issued yet. Wait a few minutes. If the state does not change, remove and re-add the domain.
- **Certificate expired or browser warning.** Renewal happens automatically. If you see a warning, contact support, the renewal may have failed silently.

## Removing a domain

Removing a domain in the settings stops serving the wiki under it and revokes the certificate. The original Zuwiki URL keeps working.
