API quan ly domain Namecheap (DNS, host records).
Tat ca endpoint (tru login) yeu cau header:
Authorization: Bearer <access_token>
Lay token qua POST /api/auth/login
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/auth/login | Login, return JWT |
| GET | /api/auth/me | User info (token required) |
| GET | /api/domains | List domains |
| GET | /api/domains/{domain}/info | Domain info |
| GET | /api/domains/{domain}/dns/hosts | DNS host records |
| PUT | /api/domains/{domain}/dns/hosts | Replace DNS hosts |
| POST | /api/domains/{domain}/dns/hosts/{type} | Add 1 record |
| GET | /api/domains/{domain}/dns/nameservers | List nameservers |
Body JSON:
{"username": "admin", "password": "your-password"}
Response: {"user": {...}, "access_token": "..."}
Query params: list_type (ALL|EXPIRING|EXPIRED), search_term, page, page_size, sort_by
Body JSON:
{"hosts": [{"name": "@", "type": "A", "address": "1.2.3.4", "ttl": 1800}]}
Warning: Records not included in request will be deleted. Types: A, AAAA, ALIAS, CAA, CNAME, MX, MXE, NS, TXT, URL, URL301, FRAME
Body JSON: {"name": "@", "address": "1.2.3.4", "ttl": 1800, "mx_pref": 10} (mx_pref for MX)
GET /health — API health check