API Overview
Base URL
Section titled “Base URL”https://api.namecheap.itz.toolsAuthentication
Section titled “Authentication”Generate your API key on the dashboard.
x-api-key: sk-itzn_your-keyResponse format
Section titled “Response format”{ "data": { ... }}Paginated endpoints include meta:
{ "data": [ ... ], "meta": { "totalItems": 42, "currentPage": 1, "pageSize": 20 }}Errors:
{ "error": { "code": "NOT_FOUND", "message": "Domain not found" }}Error codes
Section titled “Error codes”| Status | Code | Meaning |
|---|---|---|
400 | BAD_REQUEST | Invalid input |
401 | UNAUTHORIZED | Invalid or expired API key |
403 | FORBIDDEN | Disabled key, or domain not in your account |
404 | NOT_FOUND | Resource not found |
409 | CONFLICT | Domain unavailable, expired, or wrong DNS state |
412 | PRECONDITION_FAILED | Namecheap rejected your credentials |
428 | PRECONDITION_REQUIRED | Namecheap profile not configured |
429 | TOO_MANY_REQUESTS | Rate limited |
503 | SERVICE_UNAVAILABLE | Namecheap upstream error |
All endpoints
Section titled “All endpoints”Domains
Section titled “Domains”| Method | Path | Description |
|---|---|---|
GET | /domains/check | Check availability |
GET | /domains | List your domains |
GET | /domains/tlds | List available TLDs |
POST | /domains | Register a domain |
GET | /domains/:domain | Get domain info |
POST | /domains/:domain/renew | Renew |
DNS Records
Section titled “DNS Records”| Method | Path | Description |
|---|---|---|
GET | /domains/:domain/dns | Get DNS records |
POST | /domains/:domain/dns | Set DNS records |
POST | /domains/:domain/dns/default | Reset to default |
Nameservers
Section titled “Nameservers”| Method | Path | Description |
|---|---|---|
GET | /domains/:domain/nameservers | Get nameservers |
POST | /domains/:domain/nameservers | Set custom nameservers |
POST | /domains/:domain/ns | Register glue nameserver |
GET | /domains/:domain/ns/:ns | Get nameserver info |
POST | /domains/:domain/ns/:ns | Update nameserver IP |
DELETE | /domains/:domain/ns/:ns | Delete nameserver |
Email Forwarding
Section titled “Email Forwarding”| Method | Path | Description |
|---|---|---|
GET | /domains/:domain/email-forwarding | Get rules |
POST | /domains/:domain/email-forwarding | Set rules |
Contacts
Section titled “Contacts”| Method | Path | Description |
|---|---|---|
GET | /domains/:domain/contacts | Get contacts |
POST | /domains/:domain/contacts | Set contacts |
Registrar Lock
Section titled “Registrar Lock”| Method | Path | Description |
|---|---|---|
GET | /domains/:domain/lock | Get lock status |
POST | /domains/:domain/lock | Set lock |
Transfers
Section titled “Transfers”| Method | Path | Description |
|---|---|---|
GET | /transfers | List transfers |
POST | /transfers | Initiate transfer |
GET | /transfers/:id/status | Get status |
POST | /transfers/:id/status | Resubmit |
WhoisGuard
Section titled “WhoisGuard”| Method | Path | Description |
|---|---|---|
GET | /whoisguard | List entries |
POST | /whoisguard/:id/enable | Enable |
POST | /whoisguard/:id/disable | Disable |
POST | /whoisguard/:id/renew | Renew |
POST | /whoisguard/:id/allot | Allot to domain |
POST | /whoisguard/:id/unallot | Unallot |
POST | /whoisguard/:id/email | Change email |
Account
Section titled “Account”| Method | Path | Description |
|---|---|---|
GET | /account/balance | Get balance |
GET | /account/pricing | Get pricing |
Addresses
Section titled “Addresses”| Method | Path | Description |
|---|---|---|
GET | /addresses | List |
POST | /addresses | Create |
GET | /addresses/:id | Get |
POST | /addresses/:id | Update |
DELETE | /addresses/:id | Delete |
POST | /addresses/:id/default | Set default |