The ResellPortal domain API lets you sell domain names from your own app, website or store. Check availability across 30+ popular TLDs such as .com, .net, .io and .co.uk with one call, register the domain with a second, and set the nameservers in the same request. There is no monthly fee: each registration is charged at wholesale from your wallet.
BASE=https://panel.resellportal.com/wp-json/resellportal/v1
# 1. Check availability
curl "$BASE/domain-search?query=mybusiness" \
-H "X-API-Key: your_api_key" \
-H "X-API-Secret: your_api_secret"
# 2. Register the domain
curl -X POST "$BASE/orders" \
-H "X-API-Key: your_api_key" \
-H "X-API-Secret: your_api_secret" \
-H "Content-Type: application/json" \
-d '{"client_id": 123,
"product_key": "domain_registration",
"domain": "mybusiness.com",
"ns1": "ns1.yourhost.com",
"ns2": "ns2.yourhost.com"}'const BASE = "https://panel.resellportal.com/wp-json/resellportal/v1";
const headers = {
"X-API-Key": "your_api_key",
"X-API-Secret": "your_api_secret",
"Content-Type": "application/json",
};
const api = (path, body) => fetch(BASE + path, {
method: body ? "POST" : "GET",
headers,
body: body && JSON.stringify(body),
}).then((r) => r.json());
// 1. Check availability
const availability = await api("/domain-search?query=mybusiness");
// 2. Register the domain
const order = await api("/orders", {
client_id: 123,
product_key: "domain_registration",
domain: "mybusiness.com",
ns1: "ns1.yourhost.com",
ns2: "ns2.yourhost.com",
});import requests
BASE = "https://panel.resellportal.com/wp-json/resellportal/v1"
HEADERS = {
"X-API-Key": "your_api_key",
"X-API-Secret": "your_api_secret",
}
# 1. Check availability
availability = requests.get(
f"{BASE}/domain-search",
params={"query": "mybusiness"},
headers=HEADERS,
).json()
# 2. Register the domain
order = requests.post(f"{BASE}/orders", headers=HEADERS, json={
"client_id": 123,
"product_key": "domain_registration",
"domain": "mybusiness.com",
"ns1": "ns1.yourhost.com",
"ns2": "ns2.yourhost.com",
}).json()Call GET /domain-search with a name. You get every supported TLD back with availability and the current price, so you can show options to your customer.
Call POST /orders with product_key "domain_registration", the full domain and optional nameservers. The domain is registered instantly and charged at wholesale from your wallet.
Your customer gets an email with the domain details and can manage nameservers, DNS and the lock status from their portal on your storefront.
Base URL https://panel.resellportal.com/wp-json/resellportal/v1. Authenticate every request with your X-API-Key and X-API-Secret headers.
/domain-search?query=mybusinessCheck a name across all supported TLDs, with availability and the current price for each.
/clientsCreate the customer the domain belongs to (or reuse an existing client_id).
/ordersRegister a domain: product_key "domain_registration", the domain, and optional ns1 / ns2 nameservers.
/servicesList the domains and other services you have registered, with their status.
A successful order returns everything you need to deliver it in your own interface.
{
"success": true,
"service_id": 605,
"message": "Domain mybusiness.com registered successfully",
"domain": {
"name": "mybusiness.com",
"expiration": "2027-10-02 12:00:00",
"nameservers": {
"ns1": "ns1.yourhost.com",
"ns2": "ns2.yourhost.com"
},
"locked": true
}
}Customer emails and the domain management portal carry your store name, not ours.
Send "test_mode": true (or the X-RP-Test-Mode: 1 header) to build and test your integration without charging your wallet.
Classic and new extensions including .com, .net, .org, .io, .co, .ai, .app, .shop, .store and .co.uk.
Point the domain at your own hosting during registration, or change nameservers later from the portal.
Connect Claude, ChatGPT or Cursor to the ResellPortal MCP server to search and register domains by chat.
Every account also gets a white-label storefront with domain search built in, so you can sell domains without building anything.
A domain reseller API lets your software check domain availability and register domains automatically. With the ResellPortal domain API you search with GET /domain-search and register with POST /orders, so customers can buy domains inside your own app or website.
More than 30 popular extensions, including .com, .net, .org, .io, .co, .ai, .app, .dev, .xyz, .shop, .store, .blog, .me, .info, .biz, .us, .co.uk, .online, .site, .tech and more. GET /domain-search returns every supported TLD for a name.
There is no setup or monthly fee. Each domain you register is charged at its wholesale price from your prepaid wallet, and you set your own selling price. GET /domain-search returns the current price for every available TLD.
Yes. Pass ns1 and ns2 in the POST /orders request to point the domain at your hosting straight away. Your customer can also change nameservers and DNS later from their portal.
Yes. Add "test_mode": true to the request body, or send the header X-RP-Test-Mode: 1. Test requests are validated but nothing is charged and no domain is registered.
Create a free ResellPortal account and copy your API key and secret from the API section of the panel. No minimum balance. A live order only needs enough in your wallet to cover it.
Free account, free test mode, no monthly fee. Get your API keys and register your first domain in minutes.
Prefer no code? See the domain reseller program.
More APIs: eSIM API · VPN API · SMM Panel API · Business Phone Number API · Web Hosting API