Support

List DNS records in a zone

View as Markdown

Returns a paginated collection of DNS records for the zone.

Full description

Returns a paginated collection of DNS records for the zone. Supports filtering by record type and name (combined with AND), field projection, and page-based pagination. Pass totalRequired=true to include totalItems and totalPages in the response.

GET
/zones/{zone}/dns-records

Authorization

bearerAuth
AuthorizationBearer <token>

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

In: header

Path Parameters

zone*string

The domain name in punycode A-label form (for example, example.com). For IDNs, use the punycode representation.

Query Parameters

page?integer

One-based page number for offset-based pagination. Defaults to 1.

Range1 <= value
Default1
pageSize?integer

Maximum number of items to return per page.

Range1 <= value <= 100
Default25
totalRequired?boolean

When true, the response includes totalItems and totalPages for the current filter when at least one record matches. Both are omitted when the result set is empty. Defaults to false; omitting totals avoids the cost of a count query on large collections.

Defaultfalse
fields?string

Comma-separated list of fields to include in each item of the response. Omitted fields are excluded from the payload. When absent, all fields are returned. Field names must match properties defined on the item schema for the operation; any unknown or invalid name returns 400 Bad Request.

type?DNS Record Type

Filter results to records of this DNS type.

Value in

  • "A"
  • "AAAA"
  • "CNAME"
  • "MX"
  • "TXT"
  • "NS"
  • "SRV"
  • "SOA"
  • "CAA"
name?string

Filter results to records with this host name relative to the zone. Use @ for the zone apex.

Header Parameters

X-Request-Id?string

Optional client-generated request correlation identifier, propagated across services and returned in the response X-Request-Id header.

Formatuuid

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/zones/example.com/dns-records?page=2&pageSize=25&totalRequired=true&fields=name%2Ctype%2Cdata%2Cttl&type=A&name=app2"
{  "items": [    {      "recordId": "Aad7oqdXCms9mlJvm_m6UFYqmwjyP20H2KBmQHgttK9kGbF_TuI3knsocArQqIv5I0Kq5C0",      "name": "@",      "type": "A",      "data": "192.0.2.1",      "ttl": 3600    },    {      "recordId": "ARZaSm3N9qvJemM6yBmuXIO6F_YIfqSiZcaHhHFozlDsDhdOr1njlXc09TAPJlm8dXqGttRrjRKIgiXpXVm9fms",      "name": "app2",      "type": "A",      "data": "192.0.2.2",      "ttl": 3600    }  ],  "totalItems": 150,  "totalPages": 6,  "links": [    {      "rel": "self",      "href": "https://api.godaddy.com/v3/domains/zones/example.com/dns-records?type=A&name=app2&page=2&pageSize=25&totalRequired=true"    },    {      "rel": "first",      "href": "https://api.godaddy.com/v3/domains/zones/example.com/dns-records?type=A&name=app2&page=1&pageSize=25&totalRequired=true"    },    {      "rel": "last",      "href": "https://api.godaddy.com/v3/domains/zones/example.com/dns-records?type=A&name=app2&page=6&pageSize=25&totalRequired=true"    },    {      "rel": "next",      "href": "https://api.godaddy.com/v3/domains/zones/example.com/dns-records?type=A&name=app2&page=3&pageSize=25&totalRequired=true"    },    {      "rel": "prev",      "href": "https://api.godaddy.com/v3/domains/zones/example.com/dns-records?type=A&name=app2&page=1&pageSize=25&totalRequired=true"    }  ]}

Agent & Automation Notes

Scopesdomains.domain:read, domains.domain:create, domains.dns:update, domains.nameserver:update
Rate limit60 req/min per credential
On failureGET operations are safe to retry. POST registrations use Idempotency-Key. Poll async operations — do not resubmit.

Last updated on

How is this guide?