CLI for managing GoDaddy domains and DNS records via the GoDaddy API.
- Node.js 18+
- GoDaddy API key and secret (developer.godaddy.com)
cd ~/tools/godaddy-cli
npm install
cp .env.example .env
# Fill in GODADDY_API_KEY and GODADDY_API_SECRET
npm run build
npm linkCreate a .env file (or symlink to shared credentials):
GODADDY_API_KEY=your_api_key
GODADDY_API_SECRET=your_api_secretGet credentials at https://developer.godaddy.com/keys — use "Production" environment.
# List all domains in account
godaddy-cli domains list
# Get domain details (expiry, status, nameservers)
godaddy-cli domains get example.com
# Check if a domain is available for purchase
godaddy-cli domains available example.com# List all DNS records for a domain
godaddy-cli dns list example.com
# Filter by record type
godaddy-cli dns list example.com --type TXT
# Filter by type and name
godaddy-cli dns list example.com --type TXT --name @
# Get specific record(s)
godaddy-cli dns get example.com --type A --name @
# Add a record (appends, doesn't replace)
godaddy-cli dns add example.com --type TXT --name @ --data "v=spf1 include:_spf.google.com ~all"
godaddy-cli dns add example.com --type MX --name @ --data "mail.example.com" --priority 10 --ttl 600
# Replace all records for a type+name
godaddy-cli dns replace example.com --type A --name @ --data "1.2.3.4"
# Replace with multiple values
godaddy-cli dns replace example.com --type TXT --name @ --data "value1" --data "value2"
# Delete records by type+name
godaddy-cli dns delete example.com --type TXT --name _dmarc# Check if SPF, DKIM, and DMARC records are configured
godaddy-cli dns verify-email example.comChecks for:
- SPF: TXT record on
@containingv=spf1 - DMARC: TXT record on
_dmarccontainingv=DMARC1 - DKIM: TXT or CNAME records on common selectors (
default._domainkey,google._domainkey,k1._domainkey, etc.)
All commands output JSON to stdout:
{"ok": true, "data": { ... }}
{"ok": false, "error": "message", "code": "ERROR_CODE"}GoDaddy API allows 60 requests/minute.
- GoDaddy API docs
- Auth:
Authorization: sso-key {API_KEY}:{API_SECRET}