canonical: https://jentic.com/apis/ote-godaddy.com/domains

# GoDaddy (OTE Test Environment) GoDaddy Domains API (OTE)

The GoDaddy Domains API (OTE - Operational Test Environment) provides programmatic access to domain-related actions including purchasing, renewing, managing nameservers, DNS records, and domain transfers. This is a test environment for development and integration testing before deploying to production. Updates to domains generally require the domain to be in an ACTIVE status, and some actions on protected domains require 2FA which is not supported via the API.

## For AI agents

Manage GoDaddy domains programmatically: purchase, renew, transfer, update DNS records and nameservers, check availability, and manage domain contacts in the OTE test environment.

## Scope

Does not host websites, manage hosting plans, or handle SSL certificate provisioning beyond domain-level operations - use for domain registration, DNS, and transfer management only.

## Capabilities

- Check domain name availability and get pricing for registration or renewal
- Purchase new domains with full contact and privacy configuration
- Renew existing domains before expiration or during grace period
- Update and manage DNS records including A, AAAA, CNAME, MX, TXT, SRV, and NS records
- Configure custom nameservers for domains
- Manage domain contacts including registrant, admin, technical, and billing contacts
- Initiate and manage domain transfers including auth code generation
- Enable and configure privacy protection for WHOIS information
- List and filter domains by status, expiration date, or keyword

## Use cases

### Automated Domain Portfolio Management

Organizations managing large domain portfolios can automate renewal tracking, DNS updates, and availability monitoring. GET `/v1/domains` returns all domains with status and expiration metadata, POST `/v1/domains/{domain}/renew` handles bulk renewals, and PATCH `/v1/domains/{domain}/records` updates DNS at scale. Agents can monitor expiration dates and trigger renewals before grace periods.

Example prompt: GET `/v1/domains` to retrieve the portfolio, filter by expiration date, then POST `/v1/domains/{domain}/renew` for each domain expiring within 30 days.

### Dynamic DNS Configuration for Deployments

DevOps teams can programmatically update DNS records when services move between environments or IP addresses change. PUT `/v1/domains/{domain}/records/{type}/{name}` replaces records atomically, and PATCH `/v1/domains/{domain}/records` updates selectively. This eliminates manual DNS propagation delays during blue-green deployments or failover scenarios.

Example prompt: PATCH `/v1/domains/{domain}/records` with the new A record pointing to the updated load balancer IP, then verify propagation via GET `/v1/domains/{domain}/records/A/{name}.`

### Domain Availability Search for Registration

SaaS platforms that offer custom domain features can check availability and pricing before presenting options to users. GET `/v1/domains/available` validates a single domain, POST `/v1/domains/suggest` returns alternatives, and POST `/v1/domains/purchase` completes registration with full contact configuration. Combines availability checking, pricing discovery, and instant provisioning.

Example prompt: GET `/v1/domains/available` with the requested domain name, then POST `/v1/domains/purchase` with contact details and privacy=true if available.

### Domain Transfer Automation

Agencies managing client domains across registrars can automate inbound and outbound transfers. POST `/v1/domains/transfers/{domain}` initiates a transfer-in with the auth code, GET `/v1/domains/{domain}/authcode` retrieves the auth code for transfers-out, and GET `/v1/domains/transfers/{domain}` monitors transfer status. Reduces manual coordination and speeds up consolidation projects.

Example prompt: POST `/v1/domains/{domain}/authcode` to generate the auth code, then provide it to the receiving registrar's transfer API.

### AI Agent for Domain Operations

Let an AI agent handle routine domain tasks for a web agency - checking availability, purchasing domains, configuring DNS for new sites, and monitoring renewals. Through Jentic, the agent loads only the required operations and the GoDaddy API key is injected at execution time without entering the agent's context.

Example prompt: Use the Jentic search query 'check domain availability godaddy' to find GET `/v1/domains/available`, load its schema, and execute with the target domain name.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/v1/domains` | List all domains in the account with filtering by status |
| GET | `/v1/domains/available` | Check if a domain is available for registration |
| POST | `/v1/domains/purchase` | Purchase a new domain with contacts and privacy |
| POST | `/v1/domains/{domain}/renew` | Renew an existing domain |
| GET | `/v1/domains/{domain}/records` | Get all DNS records for a domain |
| PATCH | `/v1/domains/{domain}/records` | Update DNS records for a domain |
| GET | `/v1/domains/{domain}/authcode` | Get the authorization code for transferring the domain out |

## Key resources

- **Domains** — Core domain objects with registration, renewal, transfer, and contact management
- **DNS Records** — A, AAAA, CNAME, MX, TXT, SRV, NS records for configuring domain resolution
- **Nameservers** — Custom nameserver configuration for delegating DNS authority
- **Domain Availability** — Check if domains are available for registration with pricing
- **Domain Transfers** — Transfer domains in or out with auth codes and status tracking
- **Contacts** — Registrant, admin, technical, and billing contact information
- **Privacy Protection** — WHOIS privacy configuration to mask contact information

## Why Jentic

- **Setup:** Wiring the GoDaddy Domains API by hand means setting up the GoDaddy API key and secret pair, targeting the api.godaddy.com host, and managing your own retries across registration, DNS, and transfer calls. Through Jentic you install once, import the GoDaddy Domains API from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** The Domains API puts the domain in the URL path (`/v1/domains/{domain}/...`), so a rule can pin your agent to one domain: it can read records and the authcode for that domain. You choose the operations it may call, so domain purchase, renewal, or record edits are not included unless you add them.
- **Credential handling:** Your GoDaddy API key and secret are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'check if a domain is available' or 'read a domain's DNS records', and Jentic returns the matching GoDaddy Domains operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **GoDaddy Orders API (OTE)** — Manages order history and billing for domain purchases made via the Domains API.
- **GoDaddy Shoppers API (OTE)** — Manages customer account information and profiles for domain operations.
- **Cloudflare API** — Manages DNS and CDN after domains are registered via GoDaddy.

## FAQ

### What is the GoDaddy OTE environment?

OTE (Operational Test Environment) is GoDaddy's sandbox for development and testing. It mirrors the production API but operates on test data and test domains. No real purchases or charges occur in OTE. Once integration is tested in OTE, switch to production credentials.

### What authentication does the GoDaddy Domains API use?

The GoDaddy API uses API key authentication sent via the Authorization header. API keys are generated in the GoDaddy developer portal. Through Jentic, keys are stored encrypted and injected at execution time so they never enter the agent's context.

### Can I purchase real domains through this API?

Not with OTE credentials - this is the test environment. Real domain purchases require production API credentials. OTE is for integration testing and development only.

### How do I update DNS records through Jentic?

Search Jentic for 'update godaddy dns record' to find PATCH `/v1/domains/{domain}/records`, load its schema, then execute with the domain name and new record data. Jentic injects the API key automatically.

### What are the rate limits for the GoDaddy API?

GoDaddy enforces rate limits that vary by endpoint and account tier. Limits are not numerically specified in the OpenAPI spec; they are documented in GoDaddy's developer documentation and surface as HTTP 429 responses. Implement exponential backoff for retries.

### Can I manage domains from multiple GoDaddy accounts?

Yes, by using the X-Shopper-Id header on requests. This allows resellers and agencies to manage domains across customer accounts using a single API key with delegated access.
