DNS records
List, add, set, remove, export, import, sync, clone and diff. Multi-value writes for A, AAAA, MX and NS land in a single call.
namecheap dns set example.com A @ 5.6.7.8
Domains
List with expiry sorting, per-domain info, availability checks, registrar lock, renewal, and the price this account pays for a TLD.
namecheap domains list --expiring 30
Nameservers & glue
Point a domain at custom nameservers or reset to Namecheap’s, plus child nameserver records for domains that run their own.
namecheap ns set example.com ns1.cloudflare.com ns2.cloudflare.com
Email forwarding
Forwarding lives outside the zone and never shows in dns list. These commands say which routing mode you are in rather than dropping mail.
namecheap dns email set example.com hello you@gmail.com
Privacy (WhoisGuard)
Turn privacy on or off across one domain, several, or all of them. Subscriptions are looked up by domain, so you never handle ids.
namecheap whoisguard on --all --email you@example.com
Transfers
Start an inbound transfer with an auth code, list every transfer on the account, check where one has got to, and nudge a stalled one.
namecheap transfer start example.com --epp-code ABC123
URL redirects
Plain, permanent (301) and masked frame redirects, managed as their own thing rather than as raw records.
namecheap redirect add example.com old https://new.example.com --permanent
Propagation checks
Resolve what you just wrote and confirm it is actually being served, optionally waiting for it to appear.
namecheap verify example.com --wait --timeout 300
Shell completions
Generated for bash, zsh, fish and PowerShell.
namecheap completions zsh > ~/.zfunc/_namecheap
Presets
Common setups applied as a named bundle, diffed and confirmed like any
other change. Applying an email preset also switches the domain’s routing
mode and clears a previous provider’s MX and stale SPF, because leaving
either would break delivery.
- github-pages
- google-workspace
- fastmail
- protonmail
- microsoft-365
- cloudflare
- netlify
- vercel
- sendgrid
namecheap preset apply github-pages example.com -V username=myuser