GoDaddy Domains API agent for domain search, registration, and management
v0.1.0runningverifiedgo-daddy is an API agent for domain-related actions through the GoDaddy Domains API. It can list domains for a shopper, check single or bulk domain availability, retrieve purchase agreements and TLD schemas, validate contact and purchase request bodies, suggest alternate domain names, retrieve supported TLDs, purchase and register a specified domain, and cancel a purchased domain.
This agent ships no browser frontend. Its Agent Card is the live, readable list of its skills and their input schemas, and the tools/call that runs one is below.
From incoming request to controlled outcome
go-daddy is an API agent for domain-related actions through the GoDaddy Domains API. It can list domains for a shopper, check single or bulk domain availability, retrieve purchase agreements and TLD schemas, validate contact and purchase request bodies, suggest alternate domain names, retrieve supported TLDs, purchase and register a specified domain, and cancel a purchased domain.
Retrieve a list of domains for a specified shopper.
Check whether one or more domains are available for purchase.
Retrieve legal agreements required for a TLD and add-ons.
Validate domain contact and purchase request bodies.
Purchase and register a specified domain.
Cancel a purchased domain.
Declared workflow
- 1
Configure access
Provide the GoDaddy API key and secret as a required secret in the format API_KEY:API_SECRET. The default API server can be overridden from https://api.ote-godaddy.com.
- 2
Research domains
Use domain availability checks, bulk availability checks, domain suggestions, and supported TLD lookup to identify domain options.
- 3
Prepare purchase data
Retrieve TLD-specific purchase schemas, validate contact data, and validate the domain purchase request body before purchase.
- 4
Review required agreements
Retrieve the legal agreement or agreements required to purchase the specified TLD and add-ons.
- 5
Manage domain actions
Use the available API actions to list shopper domains, purchase and register a specified domain, or cancel a purchased domain.
Boundaries before action
- The GoDaddy API key and secret are required secrets and should not be exposed in prompts, logs, or public content.
- Requests send the configured credential as an Authorization value using the sso-key scheme.
- Domain updates generally require the domain to be in ACTIVE status.
- Some update actions on protected and high-value domains, such as updating nameservers, require 2FA, which is currently not supported via the API.
- Listed skills are configured with no automatic retries.
- Several actions are marked non-idempotent, including purchase and cancel operations.
Caller-provided setup
This page publishes declarations only. Configured secret values are never returned.
Latest platform verification
completed successfully with 2 recorded events
A verification run's arguments, return value, event payloads and output file paths are not published. This page shows what the run proves — which build ran, which skill, whether it passed, and how much it recorded. Run it yourself in a Trial Room to see a full result under your own grant.
Put this live proof wherever people find the project.
Add the badge to a README, docs site, or product page. It stays current with the public agent and sends interested users straight to its proof and install path.
Skills
Use the OpenAPI service to complete a natural-language goal.
GET /v1/domains - Retrieve a list of Domains for the specified Shopper
GET /v1/domains/agreements - Retrieve the legal agreement(s) required to purchase the specified TLD and add-ons
GET /v1/domains/available - Determine whether or not the specified domain is available for purchase
POST /v1/domains/available - Determine whether or not the specified domains are available for purchase
POST /v1/domains/contacts/validate - Validate the request body using the Domain Contact Validation Schema for specified domains.
POST /v1/domains/purchase - Purchase and register the specified Domain
GET /v1/domains/purchase/schema/{tld} - Retrieve the schema to be submitted when registering a Domain for the specified TLD
POST /v1/domains/purchase/validate - Validate the request body using the Domain Purchase Schema for the specified TLD
GET /v1/domains/suggest - Suggest alternate Domain names based on a seed Domain, a set of keywords, or the shopper's purchase history
GET /v1/domains/tlds - Retrieves a list of TLDs supported and enabled for sale
DELETE /v1/domains/{domain} - Cancel a purchased domain
GET /v1/domains/{domain} - Retrieve details for the specified Domain
PATCH /v1/domains/{domain} - Update details for the specified Domain
PATCH /v1/domains/{domain}/contacts - Update domain
DELETE /v1/domains/{domain}/privacy - Submit a privacy cancellation request for the given domain
POST /v1/domains/{domain}/privacy/purchase - Purchase privacy for a specified domain
PATCH /v1/domains/{domain}/records - Add the specified DNS Records to the specified Domain
PUT /v1/domains/{domain}/records - Replace all DNS Records for the specified Domain
GET /v1/domains/{domain}/records/{type}/{name} - Retrieve DNS Records for the specified Domain, optionally with the specified Type and/or Name
PUT /v1/domains/{domain}/records/{type}/{name} - Replace all DNS Records for the specified Domain with the specified Type and Name
DELETE /v1/domains/{domain}/records/{type}/{name} - Delete all DNS Records for the specified Domain with the specified Type and Name
PUT /v1/domains/{domain}/records/{type} - Replace all DNS Records for the specified Domain with the specified Type
POST /v1/domains/{domain}/renew - Renew the specified Domain
POST /v1/domains/{domain}/transfer - Purchase and start or restart transfer process
POST /v1/domains/{domain}/verifyRegistrantEmail - Re-send Contact E-mail Verification for specified Domain
GET /v2/customers/{customerId}/domains/{domain} - Retrieve details for the specified Domain
DELETE /v2/customers/{customerId}/domains/{domain}/changeOfRegistrant - Cancels a pending change of registrant request for a given domain
GET /v2/customers/{customerId}/domains/{domain}/changeOfRegistrant - Retrieve change of registrant information
PATCH /v2/customers/{customerId}/domains/{domain}/dnssecRecords - Add the specifed DNSSEC records to the domain
DELETE /v2/customers/{customerId}/domains/{domain}/dnssecRecords - Remove the specifed DNSSEC record from the domain
PUT /v2/customers/{customerId}/domains/{domain}/nameServers - Replaces the existing name servers on the domain.
GET /v2/customers/{customerId}/domains/{domain}/privacy/forwarding - Retrieve privacy email forwarding settings showing where emails are delivered
PATCH /v2/customers/{customerId}/domains/{domain}/privacy/forwarding - Update privacy email forwarding settings to determine how emails are delivered
POST /v2/customers/{customerId}/domains/{domain}/redeem - Purchase a restore for the given domain to bring it out of redemption
POST /v2/customers/{customerId}/domains/{domain}/renew - Renew the specified Domain
POST /v2/customers/{customerId}/domains/{domain}/transfer - Purchase and start or restart transfer process
GET /v2/customers/{customerId}/domains/{domain}/transfer - Query the current transfer status
POST /v2/customers/{customerId}/domains/{domain}/transfer/validate - Validate the request body using the Domain Transfer Schema for the specified TLD
POST /v2/customers/{customerId}/domains/{domain}/transferInAccept - Accepts the transfer in
POST /v2/customers/{customerId}/domains/{domain}/transferInCancel - Cancels the transfer in
POST /v2/customers/{customerId}/domains/{domain}/transferInRestart - Restarts transfer in request from the beginning
POST /v2/customers/{customerId}/domains/{domain}/transferInRetry - Retries the current transfer in request with supplied Authorization code
POST /v2/customers/{customerId}/domains/{domain}/transferOut - Initiate transfer out to another registrar for a .uk domain.
POST /v2/customers/{customerId}/domains/{domain}/transferOutAccept - Accept transfer out
POST /v2/customers/{customerId}/domains/{domain}/transferOutReject - Reject transfer out
DELETE /v2/customers/{customerId}/domains/forwards/{fqdn} - Submit a forwarding cancellation request for the given fqdn
GET /v2/customers/{customerId}/domains/forwards/{fqdn} - Retrieve the forwarding information for the given fqdn
PUT /v2/customers/{customerId}/domains/forwards/{fqdn} - Modify the forwarding information for the given fqdn
POST /v2/customers/{customerId}/domains/forwards/{fqdn} - Create a new forwarding configuration for the given FQDN
GET /v2/customers/{customerId}/domains/{domain}/actions - Retrieves a list of the most recent actions for the specified domain
DELETE /v2/customers/{customerId}/domains/{domain}/actions/{type} - Cancel the most recent user action for the specified domain
GET /v2/customers/{customerId}/domains/{domain}/actions/{type} - Retrieves the most recent action for the specified domain
GET /v2/customers/{customerId}/domains/notifications - Retrieve the next domain notification
GET /v2/customers/{customerId}/domains/notifications/optIn - Retrieve a list of notification types that are opted in
PUT /v2/customers/{customerId}/domains/notifications/optIn - Opt in to recieve notifications for the submitted notification types
GET /v2/customers/{customerId}/domains/notifications/schemas/{type} - Retrieve the schema for the notification data for the specified notification type
POST /v2/customers/{customerId}/domains/notifications/{notificationId}/acknowledge - Acknowledge a domain notification
POST /v2/customers/{customerId}/domains/register - Purchase and register the specified Domain
GET /v2/customers/{customerId}/domains/register/schema/{tld} - Retrieve the schema to be submitted when registering a Domain for the specified TLD
POST /v2/customers/{customerId}/domains/register/validate - Validate the request body using the Domain Registration Schema for the specified TLD
GET /v2/domains/maintenances - Retrieve a list of upcoming system Maintenances
GET /v2/domains/maintenances/{maintenanceId} - Retrieve the details for an upcoming system Maintenances
GET /v2/domains/usage/{yyyymm} - Retrieve api usage request counts for a specific year/month. The data is retained for a period of three months.
PATCH /v2/customers/{customerId}/domains/{domain}/contacts - Update domain contacts
POST /v2/customers/{customerId}/domains/{domain}/regenerateAuthCode - Regenerate the auth code for the given domain
Tools used
Invoke
Skill ids and argument names below are read from this agent's live card; placeholders in <angle brackets> are yours to fill in. The call reaches the agent unauthenticated — an agent that runs on a caller-supplied LLM credential will answer LLM key required until you add one.
# 1. read the live card for skill ids and their input schemas
curl -s https://go-daddy.a2acloud.io/.well-known/agent-card | jq '.skills[] | {id, description}'
# 2. run a skill over the agent's MCP endpoint
curl -sX POST https://go-daddy.a2acloud.io/mcp \
-H 'content-type: application/json' \
-H 'accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"auto","arguments":{"goal":"<goal>"}}}'
# the same call from the CLI (pip install a2a-pack)
a2a call go-daddy auto goal='<goal>'Use in Claude Code, Cursor, & other MCP clients
CLI docs →Every agent on a2a cloud is a Model Context Protocol (MCP) server. Add it to your editor with two commands.
- 1Install the gateway and log in.$
- 2Enable go-daddy.$
- 3Add this once to your MCP client config (Claude Code, Cursor, Windsurf, …):
{ "mcpServers": { "a2a": { "command": "npx", "args": ["-y", "a2amcp"] } } }
Restart your editor. Skills appear as tools named go-daddy__<skill>. For example, go-daddy__auto.
Prefer remote MCP (no local install)?
This agent also speaks MCP over HTTP at https://go-daddy.a2acloud.io/mcp. Use directly if your client supports Streamable HTTP:
{
"mcpServers": {
"go-daddy": { "type": "http", "url": "https://go-daddy.a2acloud.io/mcp" }
}
}About GoDaddy Domains API agent for domain search, registration, and management
What can the go-daddy agent do?+
It can perform domain-related API actions such as listing domains, checking availability, retrieving agreements, validating purchase data, suggesting domains, retrieving supported TLDs, purchasing and registering a domain, and canceling a purchased domain.
Does it support bulk domain availability checks?+
Yes. The agent includes a bulk availability action that checks whether specified domains are available for purchase.
What credentials are required?+
A GoDaddy API key and secret are required. They are provided as a secret in the format API_KEY:API_SECRET.
Can it validate domain purchase data before purchase?+
Yes. It can retrieve the purchase schema for a TLD and validate the request body using the domain purchase schema.
Are all domain update actions supported through the API?+
No. The supplied description notes that some update actions on protected and high-value domains require 2FA, which is currently not supported via the API.