Responses and Errors
Responses use standard HTTP status codes. Success responses return data directly (no envelope wrapper). Error responses return an error field.
Success
json
// 200 OK
{ "domain": "example.com", "status": "active", "expiry_date": "2027-03-03" }
// 201 Created
{ "id": "550e8400-...", "name": "www", "type": "A", "content": "1.2.3.4", "ttl": 3600 }
// 200 OK, a collection
[{ "domain": "example.com", "status": "active" }, { ... }]
Errors
json
// 4xx/5xx
{ "error": "Insufficient credit balance.", "balance": 5.00, "required": 12.95 }
// 422, validation
{ "message": "The given data was invalid.", "errors": { "domain": ["The domain field is required."] } }
Status Codes
| Code | Meaning |
|---|---|
| 200 | Success |
| 201 | Resource created |
| 400 | Bad request / operation failed |
| 401 | Unauthorized (bad key, disabled, IP blocked) |
| 402 | Payment required (insufficient credit) |
| 403 | Forbidden (scope restriction, or a domain change on an account with High-Profile Protection) |
| 404 | Not found |
| 422 | Validation error |
| 500 | Server error |
When Each Error Happens
| Status | When |
|---|---|
401 |
Invalid/missing API key, key disabled, IP not whitelisted, account inactive |
402 |
Credit balance too low for register/renew/transfer |
400 |
The registrar or server refused the operation, a plan limit was reached, or a filter value isnโt valid |
403 |
API key doesnโt have the required scope for the operation, or the account has High-Profile Protection and the call changes a domain |
404 |
Domain, record, or service not found (or not owned by client) |
422 |
Request validation failed (missing/invalid fields) |
500 |
Unexpected server error |
502 |
The mail server or MXFilter didnโt answer; try again shortly |