# List DNS records in a zone (https://developer.godaddy.com/en/docs/references/rest/domains/v3/list-dns-records)

---
title: List DNS records in a zone
description: Returns a paginated collection of DNS records for the zone.
full: true
---

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

List DNS records in a zone

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.

### Path parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `zone` | string | yes | The domain name in punycode A-label form (for example, example.com). For IDNs, use the punycode representation. |

### Query parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `page` | integer | no | One-based page number for offset-based pagination. Defaults to 1. |
| `pageSize` | integer | no | Maximum number of items to return per page. |
| `totalRequired` | boolean | no | 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. |
| `fields` | string | no | 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` | unknown | no | Filter results to records of this DNS type. |
| `name` | string | no | Filter results to records with this host name relative to the zone. Use `@` for the zone apex. |

### Header parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `X-Request-Id` | unknown | no | Optional client-generated request correlation identifier, propagated across services and returned in the response X-Request-Id header. |

### Responses

**200** — Paginated DNS records for the zone.

Content-Type: `application/json`

```json
{
  "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"
    }
  ]
}
```

Schema:

- schema reference: `#/components/schemas/DNSRecords`

**400** — Malformed request syntax, missing required field, or invalid field type.

Content-Type: `application/json`

Schema:

- schema reference: `#/x-ext/21ae8c5`

**401** — Authentication credentials are missing or invalid.

Content-Type: `application/json`

Schema:

- schema reference: `#/x-ext/21ae8c5`

**403** — Authenticated identity is not authorized to perform this operation.

Content-Type: `application/json`

Schema:

- schema reference: `#/x-ext/21ae8c5`

**404** — The requested resource was not found.

Content-Type: `application/json`

Schema:

- schema reference: `#/x-ext/21ae8c5`

**429** — Too many requests — rate limit exceeded.

Content-Type: `application/json`

Schema:

- schema reference: `#/x-ext/21ae8c5`

**Security:** requires `bearerAuth`.
