Atom Registrar API Documentation This document describes the REST API for domain registration, DNS management, and domain operations. The Registrar API provides comprehensive functionality for managing domains, DNS records, nameservers, privacy settings, auto-renewal, URL forwarding, DNSSEC, contacts, TLD pricing, renewal, and registrar lock.
Authentication
All API endpoints require Bearer token authentication. The Bearer token should be included in the Authorization header:/dashboard/seller/api-access after requesting Registrar API access.
Base URLs
- Production:
https://atom.com/api/registrar/v1 - Development:
https://dev.atom.com/api/registrar/v1
API Overview
The Registrar API includes the following main categories:Domain Management
- List all domains
- Check domain availability and Atom price (single and bulk)
- Catalog TLD pricing (
GET /tld-pricing) - Register new domains (optional nameservers, privacy, auto-renew, contacts, DNS records in the same request)
- Renew a domain you already hold at Atom
- Get domain details (includes ICANN 60-day lock fields)
DNS Management
- List DNS records
- Create, update, and delete DNS records
- Filter DNS records by subdomain and type
- Bulk update and delete DNS records
Nameserver Management
- Get current nameservers
- Update nameservers (Atom, Parking, or Custom)
Domain Settings
- Get / set registrar transfer lock (
GET/PUT /domains/{domain}/lock). Unlocking is dashboard-only. - Toggle privacy protection
- Toggle auto-renewal
- Manage URL forwarding rules
Transfers
- Transfer in with
POST /domains/transfer(auth code from the losing registrar) - Transfer out is not available via API. Unlocking a domain and retrieving an EPP / auth code must be done in the Atom dashboard.
DNSSEC
- Get DNSSEC records
- Enable/disable DNSSEC
Contacts
- List or search contact handles (
?search=,?name=,?email=) - Get a single contact by handle
- Create and update contacts
- Get / assign domain contact roles
Common Workflows
Registering a Domain
- Price: Use
GET /domains/check/{domain_name}for that label (includes premium). UseGET /tld-pricingfor catalog register / renew / transfer prices. - Check Availability: Use
GET /domains/check/{domain_name}orPOST /domains/check-bulk - Register Domain: Use
POST /domains/register. You may send nameservers,privacy_protect,auto_renew,contacts, anddns_recordsin the same request. - Configure DNS: Use DNS management endpoints if the domain is on Atom nameservers
Renewing a Domain
UsePOST /domains/{domain_name}/renew with optional renewal_length (1–10 years; .ai must be even).
Transfer lock
GET /domains/{domain_name}/lockreturns the customer registrar lock and the ICANN 60-day lock (icann_transfer_lock_expires_at).PUT /domains/{domain_name}/lockwith{"locked": true}locks the domain.{"locked": false}returns 403 — unlock and transfer-out are dashboard-only.
Managing DNS Records
- List Records: Use
GET /domains/{domain_name}/recordsto view all DNS records - Create Record: Use
POST /domains/{domain_name}/recordsto add new records - Update Record: Use
PUT /domains/{domain_name}/records/{record_id}to modify existing records - Delete Record: Use
DELETE /domains/{domain_name}/records/{record_id}to remove records
Bulk Operations
- Use
PUT /domains/{domain_name}/dns/bulk-updateto update multiple DNS records at once - Use
DELETE /domains/{domain_name}/dns/bulk-deleteto delete multiple DNS records matching criteria