domains_v3
GoDaddy Domains v3 API (Personal Access Token only). Mutations are asynchronous and return an operation to poll via domains.operations_v3.
Overview
| Name | domains_v3 |
| Type | Resource |
| Id | godaddy.domains.domains_v3 |
Fields
The following fields are returned by SELECT queries:
- get
- list
Domain found.
| Name | Datatype | Description |
|---|---|---|
auto_renew | boolean | Whether the domain will be renewed automatically before expiration. (wire: autoRenew) |
created_at | string | A date and time, in Internet date and time format. Note: The regular expression provides static schematic guidance but does not reject all invalid dates. (pattern: ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])[T,t]([0-1][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)([.][0-9]+)?([Zz]|[+-][0-9]{2}:[0-9]{2})$) (wire: createdAt) |
domain | string | The domain name in punycode A-label form. (example: example.com) |
expires_at | string | A date and time, in Internet date and time format. Note: The regular expression provides static schematic guidance but does not reject all invalid dates. (pattern: ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])[T,t]([0-1][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)([.][0-9]+)?([Zz]|[+-][0-9]{2}:[0-9]{2})$) (wire: expiresAt) |
idn_domain | string | The internationalized (U-label) representation of the domain name. Only present for internationalized domain names (IDNs). (example: 例え.jp) (wire: idnDomain) |
links | array | HATEOAS links for domain sub-resources. rel=self — canonical URL for this domain resource. rel=nameservers — nameserver management sub-resource. rel=contacts — contact management sub-resource. rel=privacy — privacy toggle sub-resource. |
name_servers | array | Ordered list of authoritative nameserver hostnames for a domain. The first entry is primary; subsequent entries are secondaries. A minimum of two nameservers is required; the maximum is thirteen. (title: Name Servers) (wire: nameServers) |
privacy | boolean | Whether WHOIS privacy protection is currently enabled on the domain. |
renew_by | string | A date and time, in Internet date and time format. Note: The regular expression provides static schematic guidance but does not reject all invalid dates. (pattern: ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])[T,t]([0-1][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)([.][0-9]+)?([Zz]|[+-][0-9]{2}:[0-9]{2})$) (wire: renewBy) |
status | string | The lifecycle state of a registered domain. ACTIVE — domain is registered and resolving normally. EXPIRED — domain has passed its expiration date; renewal still possible during the grace period. CANCELLED — domain registration has been cancelled and released. CANCELLED_REDEEMABLE — cancelled domain still within the redemption grace period. PENDING_TRANSFER — inbound transfer from another registrar is in progress. TRANSFERRED_OUT — domain was transferred to another registrar. LOCKED — domain has a registry-level administrative lock applied. (ACTIVE, EXPIRED, CANCELLED, CANCELLED_REDEEMABLE, PENDING_TRANSFER, TRANSFERRED_OUT, LOCKED) (title: Domain Status) |
transfer_lock | boolean | Whether the registry transfer-lock (clientTransferProhibited) is engaged. When true, outbound transfers to another registrar are blocked at the registry. (wire: transferLock) |
updated_at | string | A date and time, in Internet date and time format. Note: The regular expression provides static schematic guidance but does not reject all invalid dates. (pattern: ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])[T,t]([0-1][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)([.][0-9]+)?([Zz]|[+-][0-9]{2}:[0-9]{2})$) (wire: updatedAt) |
Paginated list of domains owned by the account.
| Name | Datatype | Description |
|---|---|---|
auto_renew | boolean | Whether the domain will be renewed automatically before expiration. (wire: autoRenew) |
created_at | string | A date and time, in Internet date and time format. Note: The regular expression provides static schematic guidance but does not reject all invalid dates. (pattern: ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])[T,t]([0-1][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)([.][0-9]+)?([Zz]|[+-][0-9]{2}:[0-9]{2})$) (wire: createdAt) |
domain | string | The domain name in punycode A-label form. (example: example.com) |
expires_at | string | A date and time, in Internet date and time format. Note: The regular expression provides static schematic guidance but does not reject all invalid dates. (pattern: ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])[T,t]([0-1][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)([.][0-9]+)?([Zz]|[+-][0-9]{2}:[0-9]{2})$) (wire: expiresAt) |
idn_domain | string | The internationalized (U-label) representation of the domain name. Only present for internationalized domain names (IDNs). (example: 例え.jp) (wire: idnDomain) |
links | array | HATEOAS links for domain sub-resources. rel=self — canonical URL for this domain resource. rel=nameservers — nameserver management sub-resource. rel=contacts — contact management sub-resource. rel=privacy — privacy toggle sub-resource. |
name_servers | array | Ordered list of authoritative nameserver hostnames for a domain. The first entry is primary; subsequent entries are secondaries. A minimum of two nameservers is required; the maximum is thirteen. (title: Name Servers) (wire: nameServers) |
privacy | boolean | Whether WHOIS privacy protection is currently enabled on the domain. |
renew_by | string | A date and time, in Internet date and time format. Note: The regular expression provides static schematic guidance but does not reject all invalid dates. (pattern: ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])[T,t]([0-1][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)([.][0-9]+)?([Zz]|[+-][0-9]{2}:[0-9]{2})$) (wire: renewBy) |
status | string | The lifecycle state of a registered domain. ACTIVE — domain is registered and resolving normally. EXPIRED — domain has passed its expiration date; renewal still possible during the grace period. CANCELLED — domain registration has been cancelled and released. CANCELLED_REDEEMABLE — cancelled domain still within the redemption grace period. PENDING_TRANSFER — inbound transfer from another registrar is in progress. TRANSFERRED_OUT — domain was transferred to another registrar. LOCKED — domain has a registry-level administrative lock applied. (ACTIVE, EXPIRED, CANCELLED, CANCELLED_REDEEMABLE, PENDING_TRANSFER, TRANSFERRED_OUT, LOCKED) (title: Domain Status) |
transfer_lock | boolean | Whether the registry transfer-lock (clientTransferProhibited) is engaged. When true, outbound transfers to another registrar are blocked at the registry. (wire: transferLock) |
updated_at | string | A date and time, in Internet date and time format. Note: The regular expression provides static schematic guidance but does not reject all invalid dates. (pattern: ^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])[T,t]([0-1][0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)([.][0-9]+)?([Zz]|[+-][0-9]{2}:[0-9]{2})$) (wire: updatedAt) |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | domain_name | x_request_id | Returns the management view of a single registered domain owned by the authenticated account, including status, nameservers, privacy and auto-renew preferences, and expiry date. |
list | select | x_request_id, page_token, page_token_direction, page_size, statuses, lifecycle_groups, updated_after, expires_before | Returns a paginated collection of domain names owned by the authenticated account. Supports filtering by statuses and cursor-based pagination. The statuses and lifecycleGroups parameters are mutually exclusive; supplying both returns 400 Bad Request. An unrecognized value for statuses or lifecycleGroups returns 400 Bad Request. | |
update_nameservers | exec | domain_name, idempotency_key, name_servers | x_request_id | Replaces the authoritative nameservers for the domain with the provided list. Minimum 2, maximum 13. Returns a DomainOperation; propagation to the registry is asynchronous. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
idempotency_key | string | Client-generated unique key (UUID recommended). Retrying a mutating request with the same Idempotency-Key returns the original response without creating a duplicate side effect. Required on all execute endpoints. (example: 9f1c2e7a-4b3d-4e8f-a1c2-3d4e5f6a7b8c) |
domain_name | string | The domain name in punycode A-label form (e.g., example.com). For IDNs, use the punycode representation. (example: example.com) |
x_request_id | string (uuid) | Optional client-generated request correlation identifier, propagated across services and returned in the response X-Request-Id header. |
expires_before | string (date-time) | Return only domains whose registration expires before this timestamp (exclusive). Must be a valid RFC 3339 date-time. (example: 2027-01-01T00:00:00Z) (wire: expiresBefore) |
lifecycle_groups | array | Filter results to domains belonging to one or more status groups. Supply multiple values as a single comma-separated list, e.g. ?lifecycleGroups=REGISTERED,PENDING. Multiple values are combined with logical OR. Cannot be combined with the statuses parameter. Use this for coarse lifecycle phases that remain stable as new statuses are added; for precise filtering, use statuses. (example: [REGISTERED, PENDING]) (wire: lifecycleGroups) |
page_size | integer | Maximum number of domains in the response. Defaults to 100 when omitted. Offset-based "page" parameter is not supported, only cursor-based "pageToken". (wire: pageSize) |
page_token | string | Opaque cursor from the links[rel=next or rel=prev] href of the previous page. When present, the response begins immediately after the item that produced the token. Omit to start from the beginning of the collection. (example: eyJkb21haW4iOiJleGFtcGxlLmNvbSJ9) (wire: pageToken) |
page_token_direction | string | Optional token direction when pageToken is set; ignored otherwise. (wire: pageTokenDirection) |
statuses | array | Filter results to domains with one or more lifecycle statuses. Supply multiple values as a single comma-separated list, e.g. ?statuses=ACTIVE,EXPIRED. Multiple values are combined with logical OR — returns domains matching ANY of the specified statuses. See DomainStatus for accepted values (ACTIVE, EXPIRED, PENDING_REGISTRATION, etc.). Cannot be combined with the lifecycleGroups parameter. Use this for precise filtering on specific known status values; for coarse lifecycle phases, consider lifecycleGroups. (example: [ACTIVE, EXPIRED]) |
updated_after | string (date-time) | Return only domains last updated after this timestamp (exclusive). Must be a valid RFC 3339 date-time. (example: 2026-01-01T00:00:00Z) (wire: updatedAfter) |
x_request_id | string (uuid) | Optional client-generated request correlation identifier, propagated across services and returned in the response X-Request-Id header. (wire: X-Request-Id) |
SELECT examples
- get
- list
Returns the management view of a single registered domain owned by the authenticated account, including status, nameservers, privacy and auto-renew preferences, and expiry date.
SELECT
auto_renew,
created_at,
domain,
expires_at,
idn_domain,
links,
name_servers,
privacy,
renew_by,
status,
transfer_lock,
updated_at
FROM godaddy.domains.domains_v3
WHERE domain_name = '{{ domain_name }}' -- required
AND x_request_id = '{{ x_request_id }}'
;
Returns a paginated collection of domain names owned by the authenticated account. Supports filtering by statuses and cursor-based pagination. The statuses and lifecycleGroups parameters are mutually exclusive; supplying both returns 400 Bad Request. An unrecognized value for statuses or lifecycleGroups returns 400 Bad Request.
SELECT
auto_renew,
created_at,
domain,
expires_at,
idn_domain,
links,
name_servers,
privacy,
renew_by,
status,
transfer_lock,
updated_at
FROM godaddy.domains.domains_v3
WHERE x_request_id = '{{ x_request_id }}'
AND page_token = '{{ page_token }}'
AND page_token_direction = '{{ page_token_direction }}'
AND page_size = '{{ page_size }}'
AND statuses = '{{ statuses }}'
AND lifecycle_groups = '{{ lifecycle_groups }}'
AND updated_after = '{{ updated_after }}'
AND expires_before = '{{ expires_before }}'
;
Lifecycle Methods
EXEC variables use wire (API) names.
- update_nameservers
Replaces the authoritative nameservers for the domain with the provided list. Minimum 2, maximum 13. Returns a DomainOperation; propagation to the registry is asynchronous.
EXEC godaddy.domains.domains_v3.update_nameservers
@domain_name='{{ domain_name }}' --required,
@idempotency_key='{{ idempotency_key }}' --required,
@x_request_id='{{ x_request_id }}',
@name_servers='{{ name_servers }}'
;