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

# Domain

> Confirm domain control with a DNS TXT record.

Check: [`ownership-dns-txt`](../verification/ownership-dns-txt). Optional. Not required to [create a gate](../platform/setup) or run VerifyGate.

## Steps

1. **TXT** at `_neus.<yourdomain>` (DNS host/name is often `_neus` when the zone is your apex or subdomain).

   ```text theme={"dark"}
   wallet=<your-wallet-or-account-address>
   ```

   Example for Ethereum (use **lowercase** hex so it matches what NEUS expects):

   ```text theme={"dark"}
   wallet=0x...
   ```

   The check reads **`wallet=`** only (not `neus=` or other prefixes).

2. **Request:** include at least `domain` in `data`. You may omit `data.walletAddress` when the same request carries a verified **top-level** `walletAddress` (typical signed flow); the service fills in that signer address before the DNS check. The TXT line must use the same wallet or account address NEUS uses for the check.

   ```javascript theme={"dark"}
   const proof = await client.verify({
     verifier: 'ownership-dns-txt',
     data: { domain: 'example.com', walletAddress: '0x...' },
     walletAddress: '0x...',
   });
   ```

3. **Check**

   ```bash theme={"dark"}
   GET /api/v1/proofs/check?verifierIds=ownership-dns-txt&address=0x...
   ```

DNS can take minutes to propagate (sometimes longer per provider).
