Domain registration is one of the easiest things to automate: it is repetitive, structured and needs no manual design work. Here is how it works with the SyllHost Reseller API.
The workflow
- Check availability:
GET /domains/check?domain=example.com. - Show your customer the price (it already includes your discount).
- Collect the owner's contact details.
- Place the order:
POST /orders/domainwith an Idempotency-Key. - Store the order and poll
GET /domains/{name}if it is pending.
Check availability
curl -H "Authorization: Bearer sh_live_xxx" "https://syllhost.com/api/v1/domains/check?domain=example.com"
{"data": {"domain": "example.com", "status": "available", "available": true, "register_price": "11.40"}}
Register a domain
curl -X POST https://syllhost.com/api/v1/orders/domain \
-H "Authorization: Bearer sh_live_xxx" -H "Idempotency-Key: dom-1001" -H "Content-Type: application/json" \
-d '{"domain":"acme-traders.com","years":1,
"billing":{"name":"Acme Traders","email":"owner@acme.example","phone":"+92.3001234567",
"address1":"1 Main Street","city":"Lahore","postcode":"54000","country":"PK"}}'
Owner details matter
For registrations, the billing details become the domain owner (the registrant in WHOIS). Name, email, phone, address, city, postcode and country are all required, because registries require real contact data. If you leave them out, your own complete account profile is used. See WHOIS privacy.
Transfers
Use "type":"transfer" with the epp_code to bring in an existing domain. Learn what the code is in the transfer guide.
Pending registrations
If the registry needs extra time, the domain's status stays pending. The payment is kept and our team is notified. Poll GET /domains/{name} to follow it.
Verify the result
After registration, confirm with our WHOIS lookup and point the domain to hosting. See how to become a domain reseller.
Designing the customer experience
Good domain search is fast and honest. Show availability immediately, display the price including renewal, and explain what the customer will be asked next. Avoid surprising fees. If a domain is taken, suggest alternatives such as a different extension. Remember that availability from a check is not a reservation: the final confirmation happens when you place the order, so be ready to tell the customer when someone else registered it first.
Handling errors
- 409 conflict: the domain is not available any more.
- 422 validation_failed: missing or invalid owner details; show the customer which fields to fix.
- 402 insufficient_balance: your balance is too low; alert yourself, not the customer.
After the registration
Store the domain name, order number and expiry date. Offer hosting, email and SSL immediately; the customer is most ready to buy right after registering. When you attach hosting, point the nameservers as described in this guide.
FAQ
Which extensions can I register?
Call GET /domains/tlds to list the extensions and prices available to you.
Can I change DNS or nameservers through the API?
Not yet. Ask our team through a ticket.
Build with our API: read the Reseller API reference and the step-by-step guide. API access is enabled per account, so contact us to request it.