Clean, intuitive REST API following industry standards
API key-based authentication with rate limiting
Comprehensive documentation with code examples
https://api.unregistry.comhttps://rdap.unregistry.comTo begin using the Unregistry API:
All API requests require authentication using an API key. Include your API key in the request header:
X-API-Key: YOUR_API_KEY Authorization: Bearer YOUR_API_KEY
/domains
List all domains
/domains/{domain}
Get domain details
/domains
Register new domain
/domains/{domain}
Update domain
/domains/{domain}
Delete domain
/domains/{domain}/renew
Renew domain
/domains/{domain}/transfer
Transfer domain
curl -X GET https://api.unregistry.com/domains \ -H "X-API-Key: YOUR_API_KEY" \ -H "Content-Type: application/json"
{
"status": "success",
"data": {
"domains": [
{
"id": "12345",
"name": "example.com",
"status": "active",
"registrant": "John Doe",
"created": "2024-01-15T10:30:00Z",
"expires": "2025-01-15T10:30:00Z"
}
],
"total": 1,
"page": 1,
"limit": 20
}
}
The Registration Data Access Protocol (RDAP) service provides standardized access to domain registration data:
https://rdap.unregistry.com
https://rdap.unregistry.com/domain/{domain}
Domain lookup
https://rdap.unregistry.com/ip/{ip}
IP address lookup
https://rdap.unregistry.com/entity/{handle}
Entity lookup
/applications
List all applications
/applications/{id}
Get application details
/applications
Create new application
/contacts
List all contacts
/contacts/{id}
Get contact details
/contacts
Create new contact
/contacts/{id}
Update contact
/hosts
List all hosts
/hosts/{hostname}
Get host details
/hosts
Create new host
/registrars
List all registrars
/registrars/onboard
Start registrar onboarding
For automated registrar onboarding, visit our dedicated Registrar Onboarding Portal.
All API responses follow a consistent JSON format:
{
"status": "success|error",
"message": "Optional message",
"data": {
// Response data
},
"errors": [
// Array of error objects (if applicable)
]
}
The API uses standard HTTP status codes to indicate success or failure:
| Status Code | Description |
|---|---|
200 OK |
Request successful |
201 Created |
Resource created successfully |
400 Bad Request |
Invalid request parameters |
401 Unauthorized |
Authentication failed |
403 Forbidden |
Access denied |
404 Not Found |
Resource not found |
429 Too Many Requests |
Rate limit exceeded |
500 Internal Server Error |
Server error |
API requests are rate limited to ensure fair usage:
X-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-Reset<?php
$apiKey = 'YOUR_API_KEY';
$apiUrl = 'https://api.unregistry.com/domains';
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'X-API-Key: ' . $apiKey,
'Content-Type: application/json'
]);
$response = curl_exec($ch);
$data = json_decode($response, true);
curl_close($ch);
print_r($data);
?>
import requests
api_key = 'YOUR_API_KEY'
api_url = 'https://api.unregistry.com/domains'
headers = {
'X-API-Key': api_key,
'Content-Type': 'application/json'
}
response = requests.get(api_url, headers=headers)
data = response.json()
print(data)
const apiKey = 'YOUR_API_KEY';
const apiUrl = 'https://api.unregistry.com/domains';
fetch(apiUrl, {
method: 'GET',
headers: {
'X-API-Key': apiKey,
'Content-Type': 'application/json'
}
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
For additional support, visit our Support Center or email us at api@unregistry.com