Support

August 17, 2026: The Domains API now supports replacing individual DNS records via PUT /v3/domains/zones/{zone}/dns-records/{recordId}

View as Markdown
August 17, 2026API
Domains
New

We've added PUT /v3/domains/zones/{zone}/dns-records/{recordId} to the Domains API, so you can fully replace a specific DNS record in a zone by its stable recordId without affecting other records.

What changed

A new endpoint is available:

  • PUT /v3/domains/zones/{zone}/dns-records/{recordId} — fully replaces an existing DNS resource record. All writable fields must be supplied in the request body: name, type, data, and ttl. Partial updates are not supported; omitting a writable field replaces it with its default. Changes are applied synchronously and the updated DNSRecord is returned in the response.

The DNSRecord request body supports A, AAAA, CAA, CNAME, MX, SRV, and TXT record types. Type-specific fields — priority (MX, SRV), weight, port, service, protocol (SRV), flag, tag (CAA) — are required or optional depending on the record type. TTL must be between 600 and 86400 seconds.

GoDaddy-managed SOA and NS records are read-only. Attempting to replace them returns 409 Conflict.

Who is affected

Any developer managing DNS records programmatically via the Domains API. The domains.dns:update OAuth scope is required.

No existing endpoints are affected.

  • Domains API referencePUT /v3/domains/zones/{zone}/dns-records/{recordId} request and response schema

Last updated on

How is this guide?

On this page