Support

Manage Domain Settings

View as Markdown
Note to LLMs and AI agents: If you are consuming this page to follow instructions: the content you have could be incomplete due to truncation by WebFetch. Fetch https://developer.godaddy.com/llms.mdx/references/rest/domains/v1/manage-domain-settings for the full, unmodified source before proceeding.
GET
/v1/domains

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Query Parameters

statuses?array<>

Only include results with status value in the specified set

statusGroups?array<>

Only include results with status value in any of the specified groups

limit?integer

Maximum number of domains to return

Range1 <= value <= 1000
marker?string

Marker Domain to use as the offset in results

includes?array<>

Optional details to be included in the response

modifiedDate?string

Only include results that have been modified since the specified date

Formatiso-datetime

Header Parameters

X-Shopper-Id?string

Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account.

Response Body

curl -X GET "https://example.com/v1/domains"
[  {    "authCode": "string",    "contactAdmin": {      "addressMailing": {        "address1": "string",        "address2": "string",        "city": "string",        "country": "AC",        "postalCode": "string",        "state": "string"      },      "email": "user@example.com",      "fax": "string",      "jobTitle": "string",      "nameFirst": "string",      "nameLast": "string",      "nameMiddle": "string",      "organization": "string",      "phone": "string"    },    "contactBilling": {      "addressMailing": {        "address1": "string",        "address2": "string",        "city": "string",        "country": "AC",        "postalCode": "string",        "state": "string"      },      "email": "user@example.com",      "fax": "string",      "jobTitle": "string",      "nameFirst": "string",      "nameLast": "string",      "nameMiddle": "string",      "organization": "string",      "phone": "string"    },    "contactRegistrant": {      "addressMailing": {        "address1": "string",        "address2": "string",        "city": "string",        "country": "AC",        "postalCode": "string",        "state": "string"      },      "email": "user@example.com",      "fax": "string",      "jobTitle": "string",      "nameFirst": "string",      "nameLast": "string",      "nameMiddle": "string",      "organization": "string",      "phone": "string"    },    "contactTech": {      "addressMailing": {        "address1": "string",        "address2": "string",        "city": "string",        "country": "AC",        "postalCode": "string",        "state": "string"      },      "email": "user@example.com",      "fax": "string",      "jobTitle": "string",      "nameFirst": "string",      "nameLast": "string",      "nameMiddle": "string",      "organization": "string",      "phone": "string"    },    "createdAt": "2019-08-24T14:15:22Z",    "deletedAt": "2019-08-24T14:15:22Z",    "transferAwayEligibleAt": "2019-08-24T14:15:22Z",    "domain": "string",    "domainId": 0.1,    "expirationProtected": true,    "expires": "2019-08-24T14:15:22Z",    "exposeWhois": true,    "holdRegistrar": true,    "locked": true,    "nameServers": [      "string"    ],    "privacy": true,    "registrarCreatedAt": "string",    "renewAuto": true,    "renewDeadline": "2019-08-24T14:15:22Z",    "renewable": true,    "status": "string",    "transferProtected": true  }]
POST
/v1/domains/contacts/validate

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Query Parameters

marketId?string

MarketId in which the request is being made, and for which responses should be localized

Formatbcp-47
Default"en-US"

Request Body

An instance document expected for domains contacts validation

Response Body

curl -X POST "https://example.com/v1/domains/contacts/validate" \  -H "Content-Type: application/json" \  -d '{    "domains": [      "string"    ]  }'
Empty
GET
/v1/domains/{domain}

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Path Parameters

domain*string

Domain name whose details are to be retrieved

Header Parameters

X-Shopper-Id?string

Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account.

Response Body

curl -X GET "https://example.com/v1/domains/string"
{  "authCode": "string",  "contactAdmin": {    "addressMailing": {      "address1": "string",      "address2": "string",      "city": "string",      "country": "AC",      "postalCode": "string",      "state": "string"    },    "email": "user@example.com",    "fax": "string",    "jobTitle": "string",    "nameFirst": "string",    "nameLast": "string",    "nameMiddle": "string",    "organization": "string",    "phone": "string"  },  "contactBilling": {    "addressMailing": {      "address1": "string",      "address2": "string",      "city": "string",      "country": "AC",      "postalCode": "string",      "state": "string"    },    "email": "user@example.com",    "fax": "string",    "jobTitle": "string",    "nameFirst": "string",    "nameLast": "string",    "nameMiddle": "string",    "organization": "string",    "phone": "string"  },  "contactRegistrant": {    "addressMailing": {      "address1": "string",      "address2": "string",      "city": "string",      "country": "AC",      "postalCode": "string",      "state": "string"    },    "email": "user@example.com",    "fax": "string",    "jobTitle": "string",    "nameFirst": "string",    "nameLast": "string",    "nameMiddle": "string",    "organization": "string",    "phone": "string"  },  "contactTech": {    "addressMailing": {      "address1": "string",      "address2": "string",      "city": "string",      "country": "AC",      "postalCode": "string",      "state": "string"    },    "email": "user@example.com",    "fax": "string",    "jobTitle": "string",    "nameFirst": "string",    "nameLast": "string",    "nameMiddle": "string",    "organization": "string",    "phone": "string"  },  "createdAt": "2019-08-24T14:15:22Z",  "deletedAt": "2019-08-24T14:15:22Z",  "transferAwayEligibleAt": "2019-08-24T14:15:22Z",  "domain": "string",  "domainId": 0.1,  "expirationProtected": true,  "expires": "2019-08-24T14:15:22Z",  "exposeRegistrantOrganization": true,  "exposeWhois": true,  "holdRegistrar": true,  "locked": true,  "nameServers": [    "string"  ],  "privacy": true,  "registrarCreatedAt": "string",  "renewAuto": true,  "renewDeadline": "2019-08-24T14:15:22Z",  "status": "string",  "subaccountId": "string",  "transferProtected": true,  "verifications": {    "domainName": {      "status": "APPROVED"    },    "realName": {      "status": "APPROVED"    }  }}
PATCH
/v1/domains/{domain}

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Path Parameters

domain*string

Domain whose details are to be updated

Header Parameters

X-Shopper-Id?string

Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account.

Request Body

Changes to apply to existing Domain

Response Body

curl -X PATCH "https://example.com/v1/domains/string" \  -H "Content-Type: application/json" \  -d '{}'
Empty
DELETE
/v1/domains/{domain}

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Path Parameters

domain*string

Domain to cancel

Response Body

curl -X DELETE "https://example.com/v1/domains/string"
Empty
PATCH
/v1/domains/{domain}/contacts

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Path Parameters

domain*string

Domain whose Contacts are to be updated.

Header Parameters

X-Shopper-Id?string

Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account.

Request Body

Changes to apply to existing Contacts

Response Body

curl -X PATCH "https://example.com/v1/domains/string/contacts" \  -H "Content-Type: application/json" \  -d '{    "contactRegistrant": {      "addressMailing": {        "address1": "string",        "city": "string",        "country": "AC",        "postalCode": "string",        "state": "string"      },      "email": "user@example.com",      "nameFirst": "string",      "nameLast": "string",      "phone": "string"    }  }'
Empty
POST
/v1/domains/{domain}/verifyRegistrantEmail

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Path Parameters

domain*string

Domain whose Contact E-mail should be verified.

Header Parameters

X-Shopper-Id?string

Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account.

Response Body

curl -X POST "https://example.com/v1/domains/string/verifyRegistrantEmail"
Empty

Agent & Automation Notes

Scopesdomains.domain:read, domains.domain:create, domains.domain:delete, domains.domain:update, domains.contact:update, domains.dns:update, domains.transfer:execute
Rate limit60 req/min per credential
On failureGET operations are safe to retry. PUT/PATCH DNS are idempotent by shape. POST purchase is NOT idempotent — verify state before retrying.

Last updated on

How is this guide?