Domain Availability
POST /domains/lookup
Checks domain availability. Availability is returned in the isAvailable boolean field.
Authentication
Send the username and token headers described in Authentication.
Request Parameters
searchTerm: second-level domain search term, for exampleexampletldsToInclude[]: TLD to include, for exampletest.lypremiumEnabled: premium lookup flag, for example0
Complete Request
curl --request POST \
--url "https://my.register.ly/modules/addons/DomainsReseller/api/index.php/domains/lookup" \
--header "Content-Type: application/x-www-form-urlencoded" \
--header "token: <generated-token>" \
--data-urlencode "searchTerm=example" \
--data-urlencode "tldsToInclude[]=test.ly" \
--data-urlencode "premiumEnabled=0"
VALIDATION REQUIRED: Canonical TLD notation accepted by tldsToInclude[] (for example ly, .ly, test.ly, or .test.ly).
The lookup example uses test.ly without a leading dot, while GET /tlds returns .test.ly. Do not transform one form into another until the accepted mapping is confirmed.
Available Response (200)
[
{
"domainName": "example404.test.ly",
"idnDomainName": "example404.test.ly",
"tld": "test.ly",
"tldNoDots": "testly",
"sld": "example404",
"idnSld": "example404",
"status": "available for registration",
"legacyStatus": "available",
"score": 1,
"isRegistered": false,
"isAvailable": true,
"isValidDomain": true,
"domainErrorMessage": "",
"pricing": {
"1": {
"register": {},
"transfer": {},
"renew": {}
}
},
"shortestPeriod": {
"period": 1,
"register": {},
"transfer": {},
"renew": {}
},
"group": "",
"minLength": 0,
"maxLength": 0,
"isPremium": false,
"premiumCostPricing": []
}
]
Not Available Response (200)
[
{
"domainName": "example.test.ly",
"idnDomainName": "example.test.ly",
"tld": "test.ly",
"tldNoDots": "testly",
"sld": "example",
"idnSld": "example",
"status": "reserved",
"legacyStatus": "unavailable",
"score": 1,
"isRegistered": false,
"isAvailable": false,
"isValidDomain": true,
"domainErrorMessage": "",
"pricing": {
"1": {
"register": {},
"transfer": {},
"renew": {}
}
},
"shortestPeriod": {
"period": 1,
"register": {},
"transfer": {},
"renew": {}
},
"group": "",
"minLength": 0,
"maxLength": 0,
"isPremium": false,
"premiumCostPricing": []
}
]
Notes
- Use
isAvailablefor the documented availability decision; do not infer availability fromstatustext alone. - The published examples contain empty
pricing,register,transfer, andrenewobjects. Empty values do not prove that pricing is unsupported. - This lookup is read-only according to its purpose, but rate limits and error responses are not documented.
VALIDATION REQUIRED: Exact behavior and business meaning of premiumEnabled.
VALIDATION REQUIRED: Whether pricing fields are populated, account-specific, currency-defined, and safe to use for billing.
VALIDATION REQUIRED: Meaning and reliability of premiumCostPricing, shortestPeriod, minLength, and maxLength.