NiceNIC Domain API v2 Documentation & Quick Start
NiceNIC Domain API v2 is available to both Market Accounts and Reseller Accounts. Use this overview to configure access, confirm your first request, understand the API response model and move directly to the correct section in the left navigation.
Market Account: API access with Market Account pricing.
Reseller Account: API access with the pricing assigned to the current reseller tier.
Test Your Integration Before Going Live
Use the NiceNIC API Sandbox to test your Domain API integration before moving to production. Validate authentication, API requests, response handling, and your application workflow in a dedicated testing environment.
Ideal for resellers, hosting providers, developers, and platforms preparing an API integration.
Make Your First API Call in 4 Steps
Start with a read-only request before enabling live registrations, renewals or transfers. This lets you validate authentication, request formatting and response handling without placing a paid order.
Enable API Access
Open API Settings, create or retrieve your API Secret, and configure authorized server IPs where applicable.
Confirm Authentication
Use HTTPS with the Authorization header in the format username:api_secret.
Run a Safe Test
Start with domain availability, pricing, account balance or domain listing.
Handle the Response
Read and store the returned code and msg before enabling paid production actions.
Recommended First Request: Domain Availability
The availability endpoint supports multiple domains in one request by separating domain names with commas.
Choose the Workflow You Need
The overview below mirrors the left navigation. Use it to identify the correct workflow, then open the dedicated endpoint page for parameters, request examples and response examples.
| Section | Use It For | Documented Functions |
|---|---|---|
| Getting Started | Connect securely and understand response handling. | API Overview, API Sandbox, Authentication, Response Codes. |
| Domain Management | Automate the core domain lifecycle. | Availability, List Domains, Domain Details, Registration, Renewal, Transfer In, Nameservers, Contacts, Pricing. |
| Abuse & Compliance | Monitor domains that require compliance attention. | List domains with abuse reports and retrieve machine-readable abuse status, hold lifecycle, complaint information and recommended action. |
| DNS Records | Manage hosted DNS records programmatically. | List, Create, Update and Delete DNS records. |
| Child Nameservers | Manage host / glue records for nameservers under your own domain. | Create, List, Update and Delete child nameservers. |
| Account & Billing | Connect automation to account-level checks. | Account Balance and transaction-related account information. |
| WHMCS API | Integrate NiceNIC into an existing WHMCS billing workflow. | Availability, Registration, Renewal, Transfer, Domain Details, Nameservers, Contacts and additional registrar-module functions. |
| API FAQ | Resolve common access, security, testing and workflow questions. | Eligibility, credentials, request handling, supported operations and integration guidance. |
Recommended First Integration Sequence
A reliable production integration should validate access and purchasing conditions before it begins sending live customer orders.
API Secret + authorized IP
Read-only connectivity test
Query current account-level cost
Confirm funds for paid actions
Process code + msg
Register / Renew / Transfer
Understand Success, Pending and Error Responses
code: 0 — Successful Response
Current endpoint examples use code 0 for successful completed responses.
code: 201 — Pending Order
Registration and transfer documentation can return code 201 when an order has been submitted but final processing is still pending.
code: 400 — Request Error
Endpoint examples use code 400 for request parameter errors.
Registration Pending Behavior
For domain registration, the current documentation states that a 201 response means the order was submitted successfully and the fee was deducted, but final activation is still subject to registry confirmation. If the domain cannot be activated, the registration fee is returned to the NiceNIC account balance within 24 hours.
Transfer Pending Behavior
The transfer endpoint also documents 201 as a pending order. Your application should therefore treat a pending transfer as accepted for processing, not as proof that the transfer has already completed.
Query Pricing Before Paid Operations
NiceNIC's pricing endpoint can retrieve registration, renewal and transfer pricing for a domain. The documented type values are register, renew, transfer and all. The documented period is 1 to 10 years, with TLD-specific exceptions possible.
Registration pricing responses can also return an is_premium flag. Use the pricing endpoint before submitting a paid request when your application needs to know the current account-level cost.
Know the Difference Between Nameservers, DNS Records and Child Nameservers
| Operation | Use It When | Documented Capability |
|---|---|---|
| Update Nameservers | You want to delegate a domain to different authoritative nameservers. | The domain nameserver endpoint supports a primary, secondary and additional nameservers, with the current page documenting a limit of up to six. |
| DNS Records | You are using NiceNIC DNS hosting and need to manage zone records. | Separate APIs are documented for listing, creating, updating and deleting DNS records. |
| Child Nameservers | You need host / glue records such as ns1.example.com. |
Create, list, update and delete child nameservers. The create endpoint requires the nameserver hostname to match the domain and accepts an IP address. |
Automate Portfolio Monitoring, Not Only Domain Orders
Domain API v2 also includes read operations that are useful after registration. The List Domains endpoint supports pagination, sorting, status filtering and hold filtering, while Get Domain Details returns registration dates, expiration dates, nameservers and registrant contact information.
Abuse & Compliance Monitoring
NiceNIC's Abuse & Compliance API can list domains with abuse reports and return a detailed machine-readable summary for a specific domain. The detailed abuse endpoint documents six domain-level status phrases: Normal, Under Review, Pending ClientHold, ClientHold, Closed and ServerHold.
The response can include current impact, recommended next action, hold state and timeline, complaint count, complaint dates, categories, DNS-abuse classification, evidence status and reported URLs where applicable. This lets platforms and resellers surface compliance status inside their own operational systems instead of relying only on manual review.
Choose the Integration Model That Fits Your System
| Option | Best For | What the Current Documentation Provides |
|---|---|---|
| Domain API v2 | Custom websites, SaaS platforms, internal systems, custom billing or provisioning workflows. | Direct HTTPS + JSON integration across domain, DNS, child nameserver, account and compliance operations. |
| WHMCS Module | Hosting companies and resellers that already use WHMCS. | Availability, registration, renewal, transfer, domain details, nameservers, contacts, lock/unlock, EPP retrieval, error logging and optional Test Mode. |
The current WHMCS documentation lists WHMCS 7.0 or higher, PHP 7.0 or higher with cURL, valid NiceNIC API credentials and SSL/TLS support as requirements.
When an API Request Fails
Start with the returned response and configuration state rather than retrying the same paid action repeatedly.
Authentication or Access Error
- Confirm the NiceNIC username and API Secret.
- Confirm the Authorization header is present and correctly formatted.
- Confirm the API Secret has not been reset or rotated.
- If IP restrictions are enabled, confirm the request is coming from the authorized outbound server IP.
Request Parameter Error
- Compare the request with the specific endpoint's documented parameters.
- Confirm required values, formats and action names.
- Check TLD-specific registration periods or contact requirements where applicable.
Paid Operation Does Not Complete Immediately
- Read the returned
codeandmsg. - Do not treat a
201pending response as final completion. - Confirm account balance and current pricing before retrying a paid action.
Need NiceNIC Support
- Record the request timestamp and API action.
- Include the domain name or object involved, where applicable.
- Include the returned code and message.
- Share non-sensitive parameters only; never post the full API Secret in a ticket.
Start with a Safe Test Request
Enable API access, confirm authentication, run an availability or pricing request, and verify your response handling before turning on customer-facing paid operations.






