# Records ## List DNS Records **get** `/zones/{zone_id}/dns_records` List, search, sort, and filter a zones' DNS records. ### Path Parameters - `zone_id: string` Identifier. ### Query Parameters - `comment: optional { absent, contains, endswith, 3 more }` - `absent: optional string` If this parameter is present, only records *without* a comment are returned. - `contains: optional string` Substring of the DNS record comment. Comment filters are case-insensitive. - `endswith: optional string` Suffix of the DNS record comment. Comment filters are case-insensitive. - `exact: optional string` Exact value of the DNS record comment. Comment filters are case-insensitive. - `present: optional string` If this parameter is present, only records *with* a comment are returned. - `startswith: optional string` Prefix of the DNS record comment. Comment filters are case-insensitive. - `content: optional { contains, endswith, exact, startswith }` - `contains: optional string` Substring of the DNS record content. Content filters are case-insensitive. - `endswith: optional string` Suffix of the DNS record content. Content filters are case-insensitive. - `exact: optional string` Exact value of the DNS record content. Content filters are case-insensitive. - `startswith: optional string` Prefix of the DNS record content. Content filters are case-insensitive. - `direction: optional SortDirection` Direction to order DNS records in. - `"asc"` - `"desc"` - `match: optional "any" or "all"` Whether to match all search requirements or at least one (any). If set to `all`, acts like a logical AND between filters. If set to `any`, acts like a logical OR instead. Note that the interaction between tag filters is controlled by the `tag-match` parameter instead. - `"any"` - `"all"` - `name: optional { contains, endswith, exact, startswith }` - `contains: optional string` Substring of the DNS record name. Name filters are case-insensitive. - `endswith: optional string` Suffix of the DNS record name. Name filters are case-insensitive. - `exact: optional string` Exact value of the DNS record name. Name filters are case-insensitive. - `startswith: optional string` Prefix of the DNS record name. Name filters are case-insensitive. - `order: optional "type" or "name" or "content" or 2 more` Field to order DNS records by. - `"type"` - `"name"` - `"content"` - `"ttl"` - `"proxied"` - `page: optional number` Page number of paginated results. - `per_page: optional number` Number of DNS records per page. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `search: optional string` Allows searching in multiple properties of a DNS record simultaneously. This parameter is intended for human users, not automation. Its exact behavior is intentionally left unspecified and is subject to change in the future. This parameter works independently of the `match` setting. For automated searches, please use the other available parameters. - `tag: optional { absent, contains, endswith, 3 more }` - `absent: optional string` Name of a tag which must *not* be present on the DNS record. Tag filters are case-insensitive. - `contains: optional string` A tag and value, of the form `:`. The API will only return DNS records that have a tag named `` whose value contains ``. Tag filters are case-insensitive. - `endswith: optional string` A tag and value, of the form `:`. The API will only return DNS records that have a tag named `` whose value ends with ``. Tag filters are case-insensitive. - `exact: optional string` A tag and value, of the form `:`. The API will only return DNS records that have a tag named `` whose value is ``. Tag filters are case-insensitive. - `present: optional string` Name of a tag which must be present on the DNS record. Tag filters are case-insensitive. - `startswith: optional string` A tag and value, of the form `:`. The API will only return DNS records that have a tag named `` whose value starts with ``. Tag filters are case-insensitive. - `tag_match: optional "any" or "all"` Whether to match all tag search requirements or at least one (any). If set to `all`, acts like a logical AND between tag filters. If set to `any`, acts like a logical OR instead. Note that the regular `match` parameter is still used to combine the resulting condition with other filters that aren't related to tags. - `"any"` - `"all"` - `type: optional "A" or "AAAA" or "CAA" or 18 more` Record type. - `"A"` - `"AAAA"` - `"CAA"` - `"CERT"` - `"CNAME"` - `"DNSKEY"` - `"DS"` - `"HTTPS"` - `"LOC"` - `"MX"` - `"NAPTR"` - `"NS"` - `"OPENPGPKEY"` - `"PTR"` - `"SMIMEA"` - `"SRV"` - `"SSHFP"` - `"SVCB"` - `"TLSA"` - `"TXT"` - `"URI"` ### Returns - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` - `result: optional array of RecordResponse` - `A = ARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `AAAA = AAAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CNAME = CNAMERecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `MX = MXRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NS = NSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `Openpgpkey { id, comment, content, 12 more }` - `id: string` Identifier. - `comment: string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `proxied: boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `PTR = PTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TXT = TXTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CAA = CAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CERT = CERTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DNSKEY = DNSKEYRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DS = DSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `HTTPS = HTTPSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `LOC = LOCRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NAPTR = NAPTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SMIMEA = SMIMEARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SRV = SRVRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SSHFP = SSHFPRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SVCB = SVCBRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TLSA = TLSARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `URI = URIRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `result_info: optional { count, page, per_page, 2 more }` - `count: optional number` Total number of results for the requested service. - `page: optional number` Current page within paginated list of results. - `per_page: optional number` Number of results per page of results. - `total_count: optional number` Total results available without any search parameters. - `total_pages: optional number` The number of total pages in the entire result set. ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": [ { "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true, "settings": { "ipv4_only": true, "ipv6_only": true }, "tags": [ "owner:dns-team" ], "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "meta": {}, "modified_on": "2014-01-01T05:20:00.12345Z", "proxiable": true, "comment_modified_on": "2024-01-01T05:20:00.12345Z", "tags_modified_on": "2025-01-01T05:20:00.12345Z" } ], "result_info": { "count": 1, "page": 1, "per_page": 20, "total_count": 2000, "total_pages": 100 } } ``` ## DNS Record Details **get** `/zones/{zone_id}/dns_records/{dns_record_id}` DNS Record Details ### Path Parameters - `zone_id: string` Identifier. - `dns_record_id: string` Identifier. ### Returns - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` - `result: optional RecordResponse` - `A = ARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `AAAA = AAAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CNAME = CNAMERecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `MX = MXRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NS = NSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `Openpgpkey { id, comment, content, 12 more }` - `id: string` Identifier. - `comment: string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `proxied: boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `PTR = PTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TXT = TXTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CAA = CAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CERT = CERTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DNSKEY = DNSKEYRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DS = DSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `HTTPS = HTTPSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `LOC = LOCRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NAPTR = NAPTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SMIMEA = SMIMEARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SRV = SRVRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SSHFP = SSHFPRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SVCB = SVCBRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TLSA = TLSARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `URI = URIRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/$DNS_RECORD_ID \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": { "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true, "settings": { "ipv4_only": true, "ipv6_only": true }, "tags": [ "owner:dns-team" ], "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "meta": {}, "modified_on": "2014-01-01T05:20:00.12345Z", "proxiable": true, "comment_modified_on": "2024-01-01T05:20:00.12345Z", "tags_modified_on": "2025-01-01T05:20:00.12345Z" } } ``` ## Create DNS Record **post** `/zones/{zone_id}/dns_records` Create a new DNS record for a zone. Notes: - A/AAAA records cannot exist on the same name as CNAME records. - NS records cannot exist on the same name as any other record type. - Domain names are always represented in Punycode, even if Unicode characters were used when creating the record. ### Path Parameters - `zone_id: string` Identifier. ### Body Parameters - `body: ARecord or AAAARecord or CNAMERecord or 18 more` - `ARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "A"` Record type. - `"A"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv4 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `AAAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "AAAA"` Record type. - `"AAAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv6 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CNAMERecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CNAME"` Record type. - `"CNAME"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid hostname. Must not match the record's name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { flatten_cname, ipv4_only, ipv6_only }` Settings for the DNS record. - `flatten_cname: optional boolean` If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `MXRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "MX"` Record type. - `"MX"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid mail server hostname. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NSRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NS"` Record type. - `"NS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid name server host name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DNSRecordsOpenpgpkeyRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `PTRRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "PTR"` Record type. - `"PTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Domain name pointing to the address. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TXTRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TXT"` Record type. - `"TXT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Text content for the record. The content must consist of quoted "character strings" (RFC 1035), each with a length of up to 255 bytes. Strings exceeding this allowed maximum length are automatically split. Learn more at . - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CAA"` Record type. - `"CAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CAA content. See 'data' to set CAA properties. - `data: optional { flags, tag, value }` Components of a CAA record. - `flags: optional number` Flags for the CAA record. - `tag: optional string` Name of the property controlled by this record (e.g.: issue, issuewild, iodef). - `value: optional string` Value of the record. This field's semantics depend on the chosen tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CERTRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CERT"` Record type. - `"CERT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CERT content. See 'data' to set CERT properties. - `data: optional { algorithm, certificate, key_tag, type }` Components of a CERT record. - `algorithm: optional number` Algorithm. - `certificate: optional string` Certificate. - `key_tag: optional number` Key Tag. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DNSKEYRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DNSKEY"` Record type. - `"DNSKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DNSKEY content. See 'data' to set DNSKEY properties. - `data: optional { algorithm, flags, protocol, public_key }` Components of a DNSKEY record. - `algorithm: optional number` Algorithm. - `flags: optional number` Flags. - `protocol: optional number` Protocol. - `public_key: optional string` Public Key. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DS"` Record type. - `"DS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DS content. See 'data' to set DS properties. - `data: optional { algorithm, digest, digest_type, key_tag }` Components of a DS record. - `algorithm: optional number` Algorithm. - `digest: optional string` Digest. - `digest_type: optional number` Digest Type. - `key_tag: optional number` Key Tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `HTTPSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "HTTPS"` Record type. - `"HTTPS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted HTTPS content. See 'data' to set HTTPS properties. - `data: optional { priority, target, value }` Components of a HTTPS record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `LOCRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "LOC"` Record type. - `"LOC"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted LOC content. See 'data' to set LOC properties. - `data: optional { altitude, lat_degrees, lat_direction, 9 more }` Components of a LOC record. - `altitude: optional number` Altitude of location in meters. - `lat_degrees: optional number` Degrees of latitude. - `lat_direction: optional "N" or "S"` Latitude direction. - `"N"` - `"S"` - `lat_minutes: optional number` Minutes of latitude. - `lat_seconds: optional number` Seconds of latitude. - `long_degrees: optional number` Degrees of longitude. - `long_direction: optional "E" or "W"` Longitude direction. - `"E"` - `"W"` - `long_minutes: optional number` Minutes of longitude. - `long_seconds: optional number` Seconds of longitude. - `precision_horz: optional number` Horizontal precision of location. - `precision_vert: optional number` Vertical precision of location. - `size: optional number` Size of location in meters. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NAPTRRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NAPTR"` Record type. - `"NAPTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted NAPTR content. See 'data' to set NAPTR properties. - `data: optional { flags, order, preference, 3 more }` Components of a NAPTR record. - `flags: optional string` Flags. - `order: optional number` Order. - `preference: optional number` Preference. - `regex: optional string` Regex. - `replacement: optional string` Replacement. - `service: optional string` Service. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SMIMEARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SMIMEA"` Record type. - `"SMIMEA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SMIMEA content. See 'data' to set SMIMEA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a SMIMEA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SRVRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SRV"` Record type. - `"SRV"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Priority, weight, port, and SRV target. See 'data' for setting the individual component values. - `data: optional { port, priority, target, weight }` Components of a SRV record. - `port: optional number` The port of the service. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `target: optional string` A valid hostname. - `weight: optional number` The record weight. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SSHFPRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SSHFP"` Record type. - `"SSHFP"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SSHFP content. See 'data' to set SSHFP properties. - `data: optional { algorithm, fingerprint, type }` Components of a SSHFP record. - `algorithm: optional number` Algorithm. - `fingerprint: optional string` Fingerprint. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SVCBRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SVCB"` Record type. - `"SVCB"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SVCB content. See 'data' to set SVCB properties. - `data: optional { priority, target, value }` Components of a SVCB record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TLSARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TLSA"` Record type. - `"TLSA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted TLSA content. See 'data' to set TLSA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a TLSA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `URIRecord { name, ttl, type, 7 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "URI"` Record type. - `"URI"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted URI content. See 'data' to set URI properties. - `data: optional { target, weight }` Components of a URI record. - `target: optional string` The record content. - `weight: optional number` The record weight. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### Returns - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` - `result: optional RecordResponse` - `A = ARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `AAAA = AAAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CNAME = CNAMERecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `MX = MXRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NS = NSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `Openpgpkey { id, comment, content, 12 more }` - `id: string` Identifier. - `comment: string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `proxied: boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `PTR = PTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TXT = TXTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CAA = CAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CERT = CERTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DNSKEY = DNSKEYRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DS = DSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `HTTPS = HTTPSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `LOC = LOCRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NAPTR = NAPTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SMIMEA = SMIMEARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SRV = SRVRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SSHFP = SSHFPRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SVCB = SVCBRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TLSA = TLSARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `URI = URIRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \ -d '{ "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true }' ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": { "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true, "settings": { "ipv4_only": true, "ipv6_only": true }, "tags": [ "owner:dns-team" ], "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "meta": {}, "modified_on": "2014-01-01T05:20:00.12345Z", "proxiable": true, "comment_modified_on": "2024-01-01T05:20:00.12345Z", "tags_modified_on": "2025-01-01T05:20:00.12345Z" } } ``` ## Overwrite DNS Record **put** `/zones/{zone_id}/dns_records/{dns_record_id}` Overwrite an existing DNS record. Notes: - A/AAAA records cannot exist on the same name as CNAME records. - NS records cannot exist on the same name as any other record type. - Domain names are always represented in Punycode, even if Unicode characters were used when creating the record. ### Path Parameters - `zone_id: string` Identifier. - `dns_record_id: string` Identifier. ### Body Parameters - `body: ARecord or AAAARecord or CNAMERecord or 18 more` - `ARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "A"` Record type. - `"A"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv4 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `AAAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "AAAA"` Record type. - `"AAAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv6 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CNAMERecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CNAME"` Record type. - `"CNAME"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid hostname. Must not match the record's name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { flatten_cname, ipv4_only, ipv6_only }` Settings for the DNS record. - `flatten_cname: optional boolean` If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `MXRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "MX"` Record type. - `"MX"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid mail server hostname. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NSRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NS"` Record type. - `"NS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid name server host name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DNSRecordsOpenpgpkeyRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `PTRRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "PTR"` Record type. - `"PTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Domain name pointing to the address. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TXTRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TXT"` Record type. - `"TXT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Text content for the record. The content must consist of quoted "character strings" (RFC 1035), each with a length of up to 255 bytes. Strings exceeding this allowed maximum length are automatically split. Learn more at . - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CAA"` Record type. - `"CAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CAA content. See 'data' to set CAA properties. - `data: optional { flags, tag, value }` Components of a CAA record. - `flags: optional number` Flags for the CAA record. - `tag: optional string` Name of the property controlled by this record (e.g.: issue, issuewild, iodef). - `value: optional string` Value of the record. This field's semantics depend on the chosen tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CERTRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CERT"` Record type. - `"CERT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CERT content. See 'data' to set CERT properties. - `data: optional { algorithm, certificate, key_tag, type }` Components of a CERT record. - `algorithm: optional number` Algorithm. - `certificate: optional string` Certificate. - `key_tag: optional number` Key Tag. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DNSKEYRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DNSKEY"` Record type. - `"DNSKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DNSKEY content. See 'data' to set DNSKEY properties. - `data: optional { algorithm, flags, protocol, public_key }` Components of a DNSKEY record. - `algorithm: optional number` Algorithm. - `flags: optional number` Flags. - `protocol: optional number` Protocol. - `public_key: optional string` Public Key. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DS"` Record type. - `"DS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DS content. See 'data' to set DS properties. - `data: optional { algorithm, digest, digest_type, key_tag }` Components of a DS record. - `algorithm: optional number` Algorithm. - `digest: optional string` Digest. - `digest_type: optional number` Digest Type. - `key_tag: optional number` Key Tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `HTTPSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "HTTPS"` Record type. - `"HTTPS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted HTTPS content. See 'data' to set HTTPS properties. - `data: optional { priority, target, value }` Components of a HTTPS record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `LOCRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "LOC"` Record type. - `"LOC"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted LOC content. See 'data' to set LOC properties. - `data: optional { altitude, lat_degrees, lat_direction, 9 more }` Components of a LOC record. - `altitude: optional number` Altitude of location in meters. - `lat_degrees: optional number` Degrees of latitude. - `lat_direction: optional "N" or "S"` Latitude direction. - `"N"` - `"S"` - `lat_minutes: optional number` Minutes of latitude. - `lat_seconds: optional number` Seconds of latitude. - `long_degrees: optional number` Degrees of longitude. - `long_direction: optional "E" or "W"` Longitude direction. - `"E"` - `"W"` - `long_minutes: optional number` Minutes of longitude. - `long_seconds: optional number` Seconds of longitude. - `precision_horz: optional number` Horizontal precision of location. - `precision_vert: optional number` Vertical precision of location. - `size: optional number` Size of location in meters. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NAPTRRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NAPTR"` Record type. - `"NAPTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted NAPTR content. See 'data' to set NAPTR properties. - `data: optional { flags, order, preference, 3 more }` Components of a NAPTR record. - `flags: optional string` Flags. - `order: optional number` Order. - `preference: optional number` Preference. - `regex: optional string` Regex. - `replacement: optional string` Replacement. - `service: optional string` Service. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SMIMEARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SMIMEA"` Record type. - `"SMIMEA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SMIMEA content. See 'data' to set SMIMEA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a SMIMEA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SRVRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SRV"` Record type. - `"SRV"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Priority, weight, port, and SRV target. See 'data' for setting the individual component values. - `data: optional { port, priority, target, weight }` Components of a SRV record. - `port: optional number` The port of the service. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `target: optional string` A valid hostname. - `weight: optional number` The record weight. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SSHFPRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SSHFP"` Record type. - `"SSHFP"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SSHFP content. See 'data' to set SSHFP properties. - `data: optional { algorithm, fingerprint, type }` Components of a SSHFP record. - `algorithm: optional number` Algorithm. - `fingerprint: optional string` Fingerprint. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SVCBRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SVCB"` Record type. - `"SVCB"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SVCB content. See 'data' to set SVCB properties. - `data: optional { priority, target, value }` Components of a SVCB record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TLSARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TLSA"` Record type. - `"TLSA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted TLSA content. See 'data' to set TLSA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a TLSA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `URIRecord { name, ttl, type, 7 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "URI"` Record type. - `"URI"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted URI content. See 'data' to set URI properties. - `data: optional { target, weight }` Components of a URI record. - `target: optional string` The record content. - `weight: optional number` The record weight. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### Returns - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` - `result: optional RecordResponse` - `A = ARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `AAAA = AAAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CNAME = CNAMERecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `MX = MXRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NS = NSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `Openpgpkey { id, comment, content, 12 more }` - `id: string` Identifier. - `comment: string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `proxied: boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `PTR = PTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TXT = TXTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CAA = CAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CERT = CERTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DNSKEY = DNSKEYRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DS = DSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `HTTPS = HTTPSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `LOC = LOCRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NAPTR = NAPTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SMIMEA = SMIMEARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SRV = SRVRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SSHFP = SSHFPRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SVCB = SVCBRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TLSA = TLSARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `URI = URIRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/$DNS_RECORD_ID \ -X PUT \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \ -d '{ "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true }' ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": { "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true, "settings": { "ipv4_only": true, "ipv6_only": true }, "tags": [ "owner:dns-team" ], "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "meta": {}, "modified_on": "2014-01-01T05:20:00.12345Z", "proxiable": true, "comment_modified_on": "2024-01-01T05:20:00.12345Z", "tags_modified_on": "2025-01-01T05:20:00.12345Z" } } ``` ## Update DNS Record **patch** `/zones/{zone_id}/dns_records/{dns_record_id}` Update an existing DNS record. Notes: - A/AAAA records cannot exist on the same name as CNAME records. - NS records cannot exist on the same name as any other record type. - Domain names are always represented in Punycode, even if Unicode characters were used when creating the record. ### Path Parameters - `zone_id: string` Identifier. - `dns_record_id: string` Identifier. ### Body Parameters - `body: ARecord or AAAARecord or CNAMERecord or 18 more` - `ARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "A"` Record type. - `"A"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv4 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `AAAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "AAAA"` Record type. - `"AAAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv6 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CNAMERecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CNAME"` Record type. - `"CNAME"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid hostname. Must not match the record's name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { flatten_cname, ipv4_only, ipv6_only }` Settings for the DNS record. - `flatten_cname: optional boolean` If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `MXRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "MX"` Record type. - `"MX"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid mail server hostname. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NSRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NS"` Record type. - `"NS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid name server host name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DNSRecordsOpenpgpkeyRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `PTRRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "PTR"` Record type. - `"PTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Domain name pointing to the address. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TXTRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TXT"` Record type. - `"TXT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Text content for the record. The content must consist of quoted "character strings" (RFC 1035), each with a length of up to 255 bytes. Strings exceeding this allowed maximum length are automatically split. Learn more at . - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CAA"` Record type. - `"CAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CAA content. See 'data' to set CAA properties. - `data: optional { flags, tag, value }` Components of a CAA record. - `flags: optional number` Flags for the CAA record. - `tag: optional string` Name of the property controlled by this record (e.g.: issue, issuewild, iodef). - `value: optional string` Value of the record. This field's semantics depend on the chosen tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CERTRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CERT"` Record type. - `"CERT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CERT content. See 'data' to set CERT properties. - `data: optional { algorithm, certificate, key_tag, type }` Components of a CERT record. - `algorithm: optional number` Algorithm. - `certificate: optional string` Certificate. - `key_tag: optional number` Key Tag. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DNSKEYRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DNSKEY"` Record type. - `"DNSKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DNSKEY content. See 'data' to set DNSKEY properties. - `data: optional { algorithm, flags, protocol, public_key }` Components of a DNSKEY record. - `algorithm: optional number` Algorithm. - `flags: optional number` Flags. - `protocol: optional number` Protocol. - `public_key: optional string` Public Key. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DS"` Record type. - `"DS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DS content. See 'data' to set DS properties. - `data: optional { algorithm, digest, digest_type, key_tag }` Components of a DS record. - `algorithm: optional number` Algorithm. - `digest: optional string` Digest. - `digest_type: optional number` Digest Type. - `key_tag: optional number` Key Tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `HTTPSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "HTTPS"` Record type. - `"HTTPS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted HTTPS content. See 'data' to set HTTPS properties. - `data: optional { priority, target, value }` Components of a HTTPS record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `LOCRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "LOC"` Record type. - `"LOC"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted LOC content. See 'data' to set LOC properties. - `data: optional { altitude, lat_degrees, lat_direction, 9 more }` Components of a LOC record. - `altitude: optional number` Altitude of location in meters. - `lat_degrees: optional number` Degrees of latitude. - `lat_direction: optional "N" or "S"` Latitude direction. - `"N"` - `"S"` - `lat_minutes: optional number` Minutes of latitude. - `lat_seconds: optional number` Seconds of latitude. - `long_degrees: optional number` Degrees of longitude. - `long_direction: optional "E" or "W"` Longitude direction. - `"E"` - `"W"` - `long_minutes: optional number` Minutes of longitude. - `long_seconds: optional number` Seconds of longitude. - `precision_horz: optional number` Horizontal precision of location. - `precision_vert: optional number` Vertical precision of location. - `size: optional number` Size of location in meters. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NAPTRRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NAPTR"` Record type. - `"NAPTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted NAPTR content. See 'data' to set NAPTR properties. - `data: optional { flags, order, preference, 3 more }` Components of a NAPTR record. - `flags: optional string` Flags. - `order: optional number` Order. - `preference: optional number` Preference. - `regex: optional string` Regex. - `replacement: optional string` Replacement. - `service: optional string` Service. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SMIMEARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SMIMEA"` Record type. - `"SMIMEA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SMIMEA content. See 'data' to set SMIMEA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a SMIMEA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SRVRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SRV"` Record type. - `"SRV"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Priority, weight, port, and SRV target. See 'data' for setting the individual component values. - `data: optional { port, priority, target, weight }` Components of a SRV record. - `port: optional number` The port of the service. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `target: optional string` A valid hostname. - `weight: optional number` The record weight. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SSHFPRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SSHFP"` Record type. - `"SSHFP"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SSHFP content. See 'data' to set SSHFP properties. - `data: optional { algorithm, fingerprint, type }` Components of a SSHFP record. - `algorithm: optional number` Algorithm. - `fingerprint: optional string` Fingerprint. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SVCBRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SVCB"` Record type. - `"SVCB"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SVCB content. See 'data' to set SVCB properties. - `data: optional { priority, target, value }` Components of a SVCB record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TLSARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TLSA"` Record type. - `"TLSA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted TLSA content. See 'data' to set TLSA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a TLSA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `URIRecord { name, ttl, type, 7 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "URI"` Record type. - `"URI"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted URI content. See 'data' to set URI properties. - `data: optional { target, weight }` Components of a URI record. - `target: optional string` The record content. - `weight: optional number` The record weight. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### Returns - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` - `result: optional RecordResponse` - `A = ARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `AAAA = AAAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CNAME = CNAMERecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `MX = MXRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NS = NSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `Openpgpkey { id, comment, content, 12 more }` - `id: string` Identifier. - `comment: string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `proxied: boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `PTR = PTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TXT = TXTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CAA = CAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CERT = CERTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DNSKEY = DNSKEYRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DS = DSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `HTTPS = HTTPSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `LOC = LOCRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NAPTR = NAPTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SMIMEA = SMIMEARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SRV = SRVRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SSHFP = SSHFPRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SVCB = SVCBRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TLSA = TLSARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `URI = URIRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/$DNS_RECORD_ID \ -X PATCH \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \ -d '{ "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true }' ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": { "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true, "settings": { "ipv4_only": true, "ipv6_only": true }, "tags": [ "owner:dns-team" ], "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "meta": {}, "modified_on": "2014-01-01T05:20:00.12345Z", "proxiable": true, "comment_modified_on": "2024-01-01T05:20:00.12345Z", "tags_modified_on": "2025-01-01T05:20:00.12345Z" } } ``` ## Delete DNS Record **delete** `/zones/{zone_id}/dns_records/{dns_record_id}` Delete DNS Record ### Path Parameters - `zone_id: string` Identifier. - `dns_record_id: string` Identifier. ### Returns - `result: optional { id }` - `id: optional string` Identifier. ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/$DNS_RECORD_ID \ -X DELETE \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" ``` #### Response ```json { "result": { "id": "023e105f4ecef8ad9ca31a8372d0c353" } } ``` ## Export DNS Records **get** `/zones/{zone_id}/dns_records/export` You can export your [BIND config](https://en.wikipedia.org/wiki/Zone_file "Zone file") through this endpoint. See [the documentation](https://developers.cloudflare.com/dns/manage-dns-records/how-to/import-and-export/ "Import and export records") for more information. ### Path Parameters - `zone_id: string` Identifier. ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/export \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" ``` ## Import DNS Records **post** `/zones/{zone_id}/dns_records/import` You can upload your [BIND config](https://en.wikipedia.org/wiki/Zone_file "Zone file") through this endpoint. It assumes that cURL is called from a location with bind_config.txt (valid BIND config) present. See [the documentation](https://developers.cloudflare.com/dns/manage-dns-records/how-to/import-and-export/ "Import and export records") for more information. ### Path Parameters - `zone_id: string` Identifier. ### Returns - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` - `result: optional { recs_added, total_records_parsed }` - `recs_added: optional number` Number of DNS records added. - `total_records_parsed: optional number` Total number of DNS records parsed. ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/import \ -H 'Content-Type: multipart/form-data' \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \ -F file='www.example.com. 300 IN A 127.0.0.1' \ -F proxied=true ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": { "recs_added": 5, "total_records_parsed": 5 } } ``` ## Scan DNS Records **post** `/zones/{zone_id}/dns_records/scan` Scan for common DNS records on your domain and automatically add them to your zone. Useful if you haven't updated your nameservers yet. ### Path Parameters - `zone_id: string` Identifier. ### Body Parameters - `body: unknown` ### Returns - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` - `result: optional { recs_added, total_records_parsed }` - `recs_added: optional number` Number of DNS records added. - `total_records_parsed: optional number` Total number of DNS records parsed. ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/scan \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \ -d '{}' ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": { "recs_added": 5, "total_records_parsed": 5 } } ``` ## Trigger DNS Record Scan **post** `/zones/{zone_id}/dns_records/scan/trigger` Initiates an asynchronous scan for common DNS records on your domain. Note that this **does not** automatically add records to your zone. The scan runs in the background, and results can be reviewed later using the `/scan/review` endpoints. Useful if you haven't updated your nameservers yet. ### Path Parameters - `zone_id: string` Identifier. ### Returns - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/scan/trigger \ -X POST \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true } ``` ## Review Scanned DNS Records **post** `/zones/{zone_id}/dns_records/scan/review` Accept or reject DNS records found by the DNS records scan. Accepted records will be permanently added to the zone, while rejected records will be permanently deleted. ### Path Parameters - `zone_id: string` Identifier. ### Body Parameters - `accepts: optional array of ARecord or AAAARecord or CNAMERecord or 18 more` - `ARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "A"` Record type. - `"A"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv4 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `AAAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "AAAA"` Record type. - `"AAAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv6 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CNAMERecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CNAME"` Record type. - `"CNAME"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid hostname. Must not match the record's name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { flatten_cname, ipv4_only, ipv6_only }` Settings for the DNS record. - `flatten_cname: optional boolean` If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `MXRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "MX"` Record type. - `"MX"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid mail server hostname. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NSRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NS"` Record type. - `"NS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid name server host name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DNSRecordsOpenpgpkeyRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `PTRRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "PTR"` Record type. - `"PTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Domain name pointing to the address. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TXTRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TXT"` Record type. - `"TXT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Text content for the record. The content must consist of quoted "character strings" (RFC 1035), each with a length of up to 255 bytes. Strings exceeding this allowed maximum length are automatically split. Learn more at . - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CAA"` Record type. - `"CAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CAA content. See 'data' to set CAA properties. - `data: optional { flags, tag, value }` Components of a CAA record. - `flags: optional number` Flags for the CAA record. - `tag: optional string` Name of the property controlled by this record (e.g.: issue, issuewild, iodef). - `value: optional string` Value of the record. This field's semantics depend on the chosen tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CERTRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CERT"` Record type. - `"CERT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CERT content. See 'data' to set CERT properties. - `data: optional { algorithm, certificate, key_tag, type }` Components of a CERT record. - `algorithm: optional number` Algorithm. - `certificate: optional string` Certificate. - `key_tag: optional number` Key Tag. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DNSKEYRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DNSKEY"` Record type. - `"DNSKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DNSKEY content. See 'data' to set DNSKEY properties. - `data: optional { algorithm, flags, protocol, public_key }` Components of a DNSKEY record. - `algorithm: optional number` Algorithm. - `flags: optional number` Flags. - `protocol: optional number` Protocol. - `public_key: optional string` Public Key. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DS"` Record type. - `"DS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DS content. See 'data' to set DS properties. - `data: optional { algorithm, digest, digest_type, key_tag }` Components of a DS record. - `algorithm: optional number` Algorithm. - `digest: optional string` Digest. - `digest_type: optional number` Digest Type. - `key_tag: optional number` Key Tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `HTTPSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "HTTPS"` Record type. - `"HTTPS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted HTTPS content. See 'data' to set HTTPS properties. - `data: optional { priority, target, value }` Components of a HTTPS record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `LOCRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "LOC"` Record type. - `"LOC"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted LOC content. See 'data' to set LOC properties. - `data: optional { altitude, lat_degrees, lat_direction, 9 more }` Components of a LOC record. - `altitude: optional number` Altitude of location in meters. - `lat_degrees: optional number` Degrees of latitude. - `lat_direction: optional "N" or "S"` Latitude direction. - `"N"` - `"S"` - `lat_minutes: optional number` Minutes of latitude. - `lat_seconds: optional number` Seconds of latitude. - `long_degrees: optional number` Degrees of longitude. - `long_direction: optional "E" or "W"` Longitude direction. - `"E"` - `"W"` - `long_minutes: optional number` Minutes of longitude. - `long_seconds: optional number` Seconds of longitude. - `precision_horz: optional number` Horizontal precision of location. - `precision_vert: optional number` Vertical precision of location. - `size: optional number` Size of location in meters. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NAPTRRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NAPTR"` Record type. - `"NAPTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted NAPTR content. See 'data' to set NAPTR properties. - `data: optional { flags, order, preference, 3 more }` Components of a NAPTR record. - `flags: optional string` Flags. - `order: optional number` Order. - `preference: optional number` Preference. - `regex: optional string` Regex. - `replacement: optional string` Replacement. - `service: optional string` Service. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SMIMEARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SMIMEA"` Record type. - `"SMIMEA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SMIMEA content. See 'data' to set SMIMEA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a SMIMEA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SRVRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SRV"` Record type. - `"SRV"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Priority, weight, port, and SRV target. See 'data' for setting the individual component values. - `data: optional { port, priority, target, weight }` Components of a SRV record. - `port: optional number` The port of the service. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `target: optional string` A valid hostname. - `weight: optional number` The record weight. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SSHFPRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SSHFP"` Record type. - `"SSHFP"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SSHFP content. See 'data' to set SSHFP properties. - `data: optional { algorithm, fingerprint, type }` Components of a SSHFP record. - `algorithm: optional number` Algorithm. - `fingerprint: optional string` Fingerprint. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SVCBRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SVCB"` Record type. - `"SVCB"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SVCB content. See 'data' to set SVCB properties. - `data: optional { priority, target, value }` Components of a SVCB record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TLSARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TLSA"` Record type. - `"TLSA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted TLSA content. See 'data' to set TLSA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a TLSA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `URIRecord { name, ttl, type, 7 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "URI"` Record type. - `"URI"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted URI content. See 'data' to set URI properties. - `data: optional { target, weight }` Components of a URI record. - `target: optional string` The record content. - `weight: optional number` The record weight. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `rejects: optional array of { id }` - `id: string` Identifier. ### Returns - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` - `result: optional { accepts, rejects }` - `accepts: optional array of RecordResponse` - `A = ARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `AAAA = AAAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CNAME = CNAMERecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `MX = MXRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NS = NSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `Openpgpkey { id, comment, content, 12 more }` - `id: string` Identifier. - `comment: string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `proxied: boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `PTR = PTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TXT = TXTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CAA = CAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CERT = CERTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DNSKEY = DNSKEYRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DS = DSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `HTTPS = HTTPSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `LOC = LOCRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NAPTR = NAPTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SMIMEA = SMIMEARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SRV = SRVRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SSHFP = SSHFPRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SVCB = SVCBRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TLSA = TLSARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `URI = URIRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `rejects: optional array of string` ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/scan/review \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \ -d '{}' ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": { "accepts": [ { "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true, "settings": { "ipv4_only": true, "ipv6_only": true }, "tags": [ "owner:dns-team" ], "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "meta": {}, "modified_on": "2014-01-01T05:20:00.12345Z", "proxiable": true, "comment_modified_on": "2024-01-01T05:20:00.12345Z", "tags_modified_on": "2025-01-01T05:20:00.12345Z" } ], "rejects": [ "023e105f4ecef8ad9ca31a8372d0c353" ] } } ``` ## List Scanned DNS Records **get** `/zones/{zone_id}/dns_records/scan/review` Retrieves the list of DNS records discovered up to this point by the asynchronous scan. These records are temporary until explicitly accepted or rejected via `POST /scan/review`. Additional records may be discovered by the scan later. ### Path Parameters - `zone_id: string` Identifier. ### Returns - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` - `result: optional array of RecordResponse` - `A = ARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `AAAA = AAAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CNAME = CNAMERecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `MX = MXRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NS = NSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `Openpgpkey { id, comment, content, 12 more }` - `id: string` Identifier. - `comment: string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `proxied: boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `PTR = PTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TXT = TXTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CAA = CAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CERT = CERTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DNSKEY = DNSKEYRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DS = DSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `HTTPS = HTTPSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `LOC = LOCRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NAPTR = NAPTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SMIMEA = SMIMEARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SRV = SRVRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SSHFP = SSHFPRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SVCB = SVCBRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TLSA = TLSARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `URI = URIRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `result_info: optional { count, page, per_page, 2 more }` - `count: optional number` Total number of results for the requested service. - `page: optional number` Current page within paginated list of results. - `per_page: optional number` Number of results per page of results. - `total_count: optional number` Total results available without any search parameters. - `total_pages: optional number` The number of total pages in the entire result set. ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/scan/review \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": [ { "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true, "settings": { "ipv4_only": true, "ipv6_only": true }, "tags": [ "owner:dns-team" ], "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "meta": {}, "modified_on": "2014-01-01T05:20:00.12345Z", "proxiable": true, "comment_modified_on": "2024-01-01T05:20:00.12345Z", "tags_modified_on": "2025-01-01T05:20:00.12345Z" } ], "result_info": { "count": 1, "page": 1, "per_page": 20, "total_count": 2000, "total_pages": 100 } } ``` ## Batch DNS Records **post** `/zones/{zone_id}/dns_records/batch` Send a Batch of DNS Record API calls to be executed together. Notes: - Although Cloudflare will execute the batched operations in a single database transaction, Cloudflare's distributed KV store must treat each record change as a single key-value pair. This means that the propagation of changes is not atomic. See [the documentation](https://developers.cloudflare.com/dns/manage-dns-records/how-to/batch-record-changes/ "Batch DNS records") for more information. - The operations you specify within the /batch request body are always executed in the following order: - Deletes - Patches - Puts - Posts ### Path Parameters - `zone_id: string` Identifier. ### Body Parameters - `deletes: optional array of { id }` - `id: string` Identifier. - `patches: optional array of BatchPatch` - `ARecord = ARecord` - `id: string` Identifier. - `AAAARecord = AAAARecord` - `id: string` Identifier. - `CNAMERecord = CNAMERecord` - `id: string` Identifier. - `MXRecord = MXRecord` - `id: string` Identifier. - `NSRecord = NSRecord` - `id: string` Identifier. - `OpenpgpkeyRecord { id, name, ttl, 6 more }` - `id: string` Identifier. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `PTRRecord = PTRRecord` - `id: string` Identifier. - `TXTRecord = TXTRecord` - `id: string` Identifier. - `CAARecord = CAARecord` - `id: string` Identifier. - `CERTRecord = CERTRecord` - `id: string` Identifier. - `DNSKEYRecord = DNSKEYRecord` - `id: string` Identifier. - `DSRecord = DSRecord` - `id: string` Identifier. - `HTTPSRecord = HTTPSRecord` - `id: string` Identifier. - `LOCRecord = LOCRecord` - `id: string` Identifier. - `NAPTRRecord = NAPTRRecord` - `id: string` Identifier. - `SMIMEARecord = SMIMEARecord` - `id: string` Identifier. - `SRVRecord = SRVRecord` - `id: string` Identifier. - `SSHFPRecord = SSHFPRecord` - `id: string` Identifier. - `SVCBRecord = SVCBRecord` - `id: string` Identifier. - `TLSARecord = TLSARecord` - `id: string` Identifier. - `URIRecord = URIRecord` - `id: string` Identifier. - `posts: optional array of ARecord or AAAARecord or CNAMERecord or 18 more` - `ARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "A"` Record type. - `"A"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv4 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `AAAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "AAAA"` Record type. - `"AAAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv6 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CNAMERecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CNAME"` Record type. - `"CNAME"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid hostname. Must not match the record's name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { flatten_cname, ipv4_only, ipv6_only }` Settings for the DNS record. - `flatten_cname: optional boolean` If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `MXRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "MX"` Record type. - `"MX"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid mail server hostname. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NSRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NS"` Record type. - `"NS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid name server host name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DNSRecordsOpenpgpkeyRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `PTRRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "PTR"` Record type. - `"PTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Domain name pointing to the address. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TXTRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TXT"` Record type. - `"TXT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Text content for the record. The content must consist of quoted "character strings" (RFC 1035), each with a length of up to 255 bytes. Strings exceeding this allowed maximum length are automatically split. Learn more at . - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CAA"` Record type. - `"CAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CAA content. See 'data' to set CAA properties. - `data: optional { flags, tag, value }` Components of a CAA record. - `flags: optional number` Flags for the CAA record. - `tag: optional string` Name of the property controlled by this record (e.g.: issue, issuewild, iodef). - `value: optional string` Value of the record. This field's semantics depend on the chosen tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CERTRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CERT"` Record type. - `"CERT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CERT content. See 'data' to set CERT properties. - `data: optional { algorithm, certificate, key_tag, type }` Components of a CERT record. - `algorithm: optional number` Algorithm. - `certificate: optional string` Certificate. - `key_tag: optional number` Key Tag. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DNSKEYRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DNSKEY"` Record type. - `"DNSKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DNSKEY content. See 'data' to set DNSKEY properties. - `data: optional { algorithm, flags, protocol, public_key }` Components of a DNSKEY record. - `algorithm: optional number` Algorithm. - `flags: optional number` Flags. - `protocol: optional number` Protocol. - `public_key: optional string` Public Key. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DS"` Record type. - `"DS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DS content. See 'data' to set DS properties. - `data: optional { algorithm, digest, digest_type, key_tag }` Components of a DS record. - `algorithm: optional number` Algorithm. - `digest: optional string` Digest. - `digest_type: optional number` Digest Type. - `key_tag: optional number` Key Tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `HTTPSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "HTTPS"` Record type. - `"HTTPS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted HTTPS content. See 'data' to set HTTPS properties. - `data: optional { priority, target, value }` Components of a HTTPS record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `LOCRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "LOC"` Record type. - `"LOC"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted LOC content. See 'data' to set LOC properties. - `data: optional { altitude, lat_degrees, lat_direction, 9 more }` Components of a LOC record. - `altitude: optional number` Altitude of location in meters. - `lat_degrees: optional number` Degrees of latitude. - `lat_direction: optional "N" or "S"` Latitude direction. - `"N"` - `"S"` - `lat_minutes: optional number` Minutes of latitude. - `lat_seconds: optional number` Seconds of latitude. - `long_degrees: optional number` Degrees of longitude. - `long_direction: optional "E" or "W"` Longitude direction. - `"E"` - `"W"` - `long_minutes: optional number` Minutes of longitude. - `long_seconds: optional number` Seconds of longitude. - `precision_horz: optional number` Horizontal precision of location. - `precision_vert: optional number` Vertical precision of location. - `size: optional number` Size of location in meters. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NAPTRRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NAPTR"` Record type. - `"NAPTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted NAPTR content. See 'data' to set NAPTR properties. - `data: optional { flags, order, preference, 3 more }` Components of a NAPTR record. - `flags: optional string` Flags. - `order: optional number` Order. - `preference: optional number` Preference. - `regex: optional string` Regex. - `replacement: optional string` Replacement. - `service: optional string` Service. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SMIMEARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SMIMEA"` Record type. - `"SMIMEA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SMIMEA content. See 'data' to set SMIMEA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a SMIMEA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SRVRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SRV"` Record type. - `"SRV"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Priority, weight, port, and SRV target. See 'data' for setting the individual component values. - `data: optional { port, priority, target, weight }` Components of a SRV record. - `port: optional number` The port of the service. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `target: optional string` A valid hostname. - `weight: optional number` The record weight. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SSHFPRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SSHFP"` Record type. - `"SSHFP"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SSHFP content. See 'data' to set SSHFP properties. - `data: optional { algorithm, fingerprint, type }` Components of a SSHFP record. - `algorithm: optional number` Algorithm. - `fingerprint: optional string` Fingerprint. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SVCBRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SVCB"` Record type. - `"SVCB"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SVCB content. See 'data' to set SVCB properties. - `data: optional { priority, target, value }` Components of a SVCB record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TLSARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TLSA"` Record type. - `"TLSA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted TLSA content. See 'data' to set TLSA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a TLSA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `URIRecord { name, ttl, type, 7 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "URI"` Record type. - `"URI"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted URI content. See 'data' to set URI properties. - `data: optional { target, weight }` Components of a URI record. - `target: optional string` The record content. - `weight: optional number` The record weight. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `puts: optional array of BatchPut` - `ARecord = ARecord` - `id: string` Identifier. - `AAAARecord = AAAARecord` - `id: string` Identifier. - `CNAMERecord = CNAMERecord` - `id: string` Identifier. - `MXRecord = MXRecord` - `id: string` Identifier. - `NSRecord = NSRecord` - `id: string` Identifier. - `OpenpgpkeyRecord { id, name, ttl, 6 more }` - `id: string` Identifier. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `PTRRecord = PTRRecord` - `id: string` Identifier. - `TXTRecord = TXTRecord` - `id: string` Identifier. - `CAARecord = CAARecord` - `id: string` Identifier. - `CERTRecord = CERTRecord` - `id: string` Identifier. - `DNSKEYRecord = DNSKEYRecord` - `id: string` Identifier. - `DSRecord = DSRecord` - `id: string` Identifier. - `HTTPSRecord = HTTPSRecord` - `id: string` Identifier. - `LOCRecord = LOCRecord` - `id: string` Identifier. - `NAPTRRecord = NAPTRRecord` - `id: string` Identifier. - `SMIMEARecord = SMIMEARecord` - `id: string` Identifier. - `SRVRecord = SRVRecord` - `id: string` Identifier. - `SSHFPRecord = SSHFPRecord` - `id: string` Identifier. - `SVCBRecord = SVCBRecord` - `id: string` Identifier. - `TLSARecord = TLSARecord` - `id: string` Identifier. - `URIRecord = URIRecord` - `id: string` Identifier. ### Returns - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` - `result: optional { deletes, patches, posts, puts }` - `deletes: optional array of RecordResponse` - `A = ARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `AAAA = AAAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CNAME = CNAMERecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `MX = MXRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NS = NSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `Openpgpkey { id, comment, content, 12 more }` - `id: string` Identifier. - `comment: string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `proxied: boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `PTR = PTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TXT = TXTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CAA = CAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CERT = CERTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DNSKEY = DNSKEYRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DS = DSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `HTTPS = HTTPSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `LOC = LOCRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NAPTR = NAPTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SMIMEA = SMIMEARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SRV = SRVRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SSHFP = SSHFPRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SVCB = SVCBRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TLSA = TLSARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `URI = URIRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `patches: optional array of RecordResponse` - `A = ARecord` - `AAAA = AAAARecord` - `CNAME = CNAMERecord` - `MX = MXRecord` - `NS = NSRecord` - `Openpgpkey { id, comment, content, 12 more }` - `PTR = PTRRecord` - `TXT = TXTRecord` - `CAA = CAARecord` - `CERT = CERTRecord` - `DNSKEY = DNSKEYRecord` - `DS = DSRecord` - `HTTPS = HTTPSRecord` - `LOC = LOCRecord` - `NAPTR = NAPTRRecord` - `SMIMEA = SMIMEARecord` - `SRV = SRVRecord` - `SSHFP = SSHFPRecord` - `SVCB = SVCBRecord` - `TLSA = TLSARecord` - `URI = URIRecord` - `posts: optional array of RecordResponse` - `A = ARecord` - `AAAA = AAAARecord` - `CNAME = CNAMERecord` - `MX = MXRecord` - `NS = NSRecord` - `Openpgpkey { id, comment, content, 12 more }` - `PTR = PTRRecord` - `TXT = TXTRecord` - `CAA = CAARecord` - `CERT = CERTRecord` - `DNSKEY = DNSKEYRecord` - `DS = DSRecord` - `HTTPS = HTTPSRecord` - `LOC = LOCRecord` - `NAPTR = NAPTRRecord` - `SMIMEA = SMIMEARecord` - `SRV = SRVRecord` - `SSHFP = SSHFPRecord` - `SVCB = SVCBRecord` - `TLSA = TLSARecord` - `URI = URIRecord` - `puts: optional array of RecordResponse` - `A = ARecord` - `AAAA = AAAARecord` - `CNAME = CNAMERecord` - `MX = MXRecord` - `NS = NSRecord` - `Openpgpkey { id, comment, content, 12 more }` - `PTR = PTRRecord` - `TXT = TXTRecord` - `CAA = CAARecord` - `CERT = CERTRecord` - `DNSKEY = DNSKEYRecord` - `DS = DSRecord` - `HTTPS = HTTPSRecord` - `LOC = LOCRecord` - `NAPTR = NAPTRRecord` - `SMIMEA = SMIMEARecord` - `SRV = SRVRecord` - `SSHFP = SSHFPRecord` - `SVCB = SVCBRecord` - `TLSA = TLSARecord` - `URI = URIRecord` ### Example ```http curl https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/batch \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \ -d '{}' ``` #### Response ```json { "errors": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "messages": [ { "code": 1000, "message": "message", "documentation_url": "documentation_url", "source": { "pointer": "pointer" } } ], "success": true, "result": { "deletes": [ { "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true, "settings": { "ipv4_only": true, "ipv6_only": true }, "tags": [ "owner:dns-team" ], "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "meta": {}, "modified_on": "2014-01-01T05:20:00.12345Z", "proxiable": true, "comment_modified_on": "2024-01-01T05:20:00.12345Z", "tags_modified_on": "2025-01-01T05:20:00.12345Z" } ], "patches": [ { "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true, "settings": { "ipv4_only": true, "ipv6_only": true }, "tags": [ "owner:dns-team" ], "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "meta": {}, "modified_on": "2014-01-01T05:20:00.12345Z", "proxiable": true, "comment_modified_on": "2024-01-01T05:20:00.12345Z", "tags_modified_on": "2025-01-01T05:20:00.12345Z" } ], "posts": [ { "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true, "settings": { "ipv4_only": true, "ipv6_only": true }, "tags": [ "owner:dns-team" ], "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "meta": {}, "modified_on": "2014-01-01T05:20:00.12345Z", "proxiable": true, "comment_modified_on": "2024-01-01T05:20:00.12345Z", "tags_modified_on": "2025-01-01T05:20:00.12345Z" } ], "puts": [ { "name": "example.com", "ttl": 3600, "type": "A", "comment": "Domain verification record", "content": "198.51.100.4", "private_routing": true, "proxied": true, "settings": { "ipv4_only": true, "ipv6_only": true }, "tags": [ "owner:dns-team" ], "id": "023e105f4ecef8ad9ca31a8372d0c353", "created_on": "2014-01-01T05:20:00.12345Z", "meta": {}, "modified_on": "2014-01-01T05:20:00.12345Z", "proxiable": true, "comment_modified_on": "2024-01-01T05:20:00.12345Z", "tags_modified_on": "2025-01-01T05:20:00.12345Z" } ] } } ``` ## Domain Types ### A Record - `ARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "A"` Record type. - `"A"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv4 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### AAAA Record - `AAAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "AAAA"` Record type. - `"AAAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv6 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### Batch Patch - `BatchPatch = ARecord or AAAARecord or CNAMERecord or 18 more` - `ARecord = ARecord` - `id: string` Identifier. - `AAAARecord = AAAARecord` - `id: string` Identifier. - `CNAMERecord = CNAMERecord` - `id: string` Identifier. - `MXRecord = MXRecord` - `id: string` Identifier. - `NSRecord = NSRecord` - `id: string` Identifier. - `OpenpgpkeyRecord { id, name, ttl, 6 more }` - `id: string` Identifier. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `PTRRecord = PTRRecord` - `id: string` Identifier. - `TXTRecord = TXTRecord` - `id: string` Identifier. - `CAARecord = CAARecord` - `id: string` Identifier. - `CERTRecord = CERTRecord` - `id: string` Identifier. - `DNSKEYRecord = DNSKEYRecord` - `id: string` Identifier. - `DSRecord = DSRecord` - `id: string` Identifier. - `HTTPSRecord = HTTPSRecord` - `id: string` Identifier. - `LOCRecord = LOCRecord` - `id: string` Identifier. - `NAPTRRecord = NAPTRRecord` - `id: string` Identifier. - `SMIMEARecord = SMIMEARecord` - `id: string` Identifier. - `SRVRecord = SRVRecord` - `id: string` Identifier. - `SSHFPRecord = SSHFPRecord` - `id: string` Identifier. - `SVCBRecord = SVCBRecord` - `id: string` Identifier. - `TLSARecord = TLSARecord` - `id: string` Identifier. - `URIRecord = URIRecord` - `id: string` Identifier. ### Batch Put - `BatchPut = ARecord or AAAARecord or CNAMERecord or 18 more` - `ARecord = ARecord` - `id: string` Identifier. - `AAAARecord = AAAARecord` - `id: string` Identifier. - `CNAMERecord = CNAMERecord` - `id: string` Identifier. - `MXRecord = MXRecord` - `id: string` Identifier. - `NSRecord = NSRecord` - `id: string` Identifier. - `OpenpgpkeyRecord { id, name, ttl, 6 more }` - `id: string` Identifier. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `PTRRecord = PTRRecord` - `id: string` Identifier. - `TXTRecord = TXTRecord` - `id: string` Identifier. - `CAARecord = CAARecord` - `id: string` Identifier. - `CERTRecord = CERTRecord` - `id: string` Identifier. - `DNSKEYRecord = DNSKEYRecord` - `id: string` Identifier. - `DSRecord = DSRecord` - `id: string` Identifier. - `HTTPSRecord = HTTPSRecord` - `id: string` Identifier. - `LOCRecord = LOCRecord` - `id: string` Identifier. - `NAPTRRecord = NAPTRRecord` - `id: string` Identifier. - `SMIMEARecord = SMIMEARecord` - `id: string` Identifier. - `SRVRecord = SRVRecord` - `id: string` Identifier. - `SSHFPRecord = SSHFPRecord` - `id: string` Identifier. - `SVCBRecord = SVCBRecord` - `id: string` Identifier. - `TLSARecord = TLSARecord` - `id: string` Identifier. - `URIRecord = URIRecord` - `id: string` Identifier. ### CAA Record - `CAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "CAA"` Record type. - `"CAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CAA content. See 'data' to set CAA properties. - `data: optional { flags, tag, value }` Components of a CAA record. - `flags: optional number` Flags for the CAA record. - `tag: optional string` Name of the property controlled by this record (e.g.: issue, issuewild, iodef). - `value: optional string` Value of the record. This field's semantics depend on the chosen tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### CERT Record - `CERTRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "CERT"` Record type. - `"CERT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CERT content. See 'data' to set CERT properties. - `data: optional { algorithm, certificate, key_tag, type }` Components of a CERT record. - `algorithm: optional number` Algorithm. - `certificate: optional string` Certificate. - `key_tag: optional number` Key Tag. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### CNAME Record - `CNAMERecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "CNAME"` Record type. - `"CNAME"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid hostname. Must not match the record's name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { flatten_cname, ipv4_only, ipv6_only }` Settings for the DNS record. - `flatten_cname: optional boolean` If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### DNSKEY Record - `DNSKEYRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "DNSKEY"` Record type. - `"DNSKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DNSKEY content. See 'data' to set DNSKEY properties. - `data: optional { algorithm, flags, protocol, public_key }` Components of a DNSKEY record. - `algorithm: optional number` Algorithm. - `flags: optional number` Flags. - `protocol: optional number` Protocol. - `public_key: optional string` Public Key. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### DS Record - `DSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "DS"` Record type. - `"DS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DS content. See 'data' to set DS properties. - `data: optional { algorithm, digest, digest_type, key_tag }` Components of a DS record. - `algorithm: optional number` Algorithm. - `digest: optional string` Digest. - `digest_type: optional number` Digest Type. - `key_tag: optional number` Key Tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### HTTPS Record - `HTTPSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "HTTPS"` Record type. - `"HTTPS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted HTTPS content. See 'data' to set HTTPS properties. - `data: optional { priority, target, value }` Components of a HTTPS record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### LOC Record - `LOCRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "LOC"` Record type. - `"LOC"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted LOC content. See 'data' to set LOC properties. - `data: optional { altitude, lat_degrees, lat_direction, 9 more }` Components of a LOC record. - `altitude: optional number` Altitude of location in meters. - `lat_degrees: optional number` Degrees of latitude. - `lat_direction: optional "N" or "S"` Latitude direction. - `"N"` - `"S"` - `lat_minutes: optional number` Minutes of latitude. - `lat_seconds: optional number` Seconds of latitude. - `long_degrees: optional number` Degrees of longitude. - `long_direction: optional "E" or "W"` Longitude direction. - `"E"` - `"W"` - `long_minutes: optional number` Minutes of longitude. - `long_seconds: optional number` Seconds of longitude. - `precision_horz: optional number` Horizontal precision of location. - `precision_vert: optional number` Vertical precision of location. - `size: optional number` Size of location in meters. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### MX Record - `MXRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "MX"` Record type. - `"MX"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid mail server hostname. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### NAPTR Record - `NAPTRRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "NAPTR"` Record type. - `"NAPTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted NAPTR content. See 'data' to set NAPTR properties. - `data: optional { flags, order, preference, 3 more }` Components of a NAPTR record. - `flags: optional string` Flags. - `order: optional number` Order. - `preference: optional number` Preference. - `regex: optional string` Regex. - `replacement: optional string` Replacement. - `service: optional string` Service. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### NS Record - `NSRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "NS"` Record type. - `"NS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid name server host name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### PTR Record - `PTRRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "PTR"` Record type. - `"PTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Domain name pointing to the address. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### Record - `Record = ARecord or AAAARecord or CNAMERecord or 18 more` - `ARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "A"` Record type. - `"A"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv4 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `AAAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "AAAA"` Record type. - `"AAAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid IPv6 address. - `private_routing: optional boolean` Enables private network routing to the origin. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CNAMERecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CNAME"` Record type. - `"CNAME"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid hostname. Must not match the record's name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { flatten_cname, ipv4_only, ipv6_only }` Settings for the DNS record. - `flatten_cname: optional boolean` If enabled, causes the CNAME record to be resolved externally and the resulting address records (e.g., A and AAAA) to be returned instead of the CNAME record itself. This setting is unavailable for proxied records, since they are always flattened. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `MXRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "MX"` Record type. - `"MX"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid mail server hostname. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NSRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NS"` Record type. - `"NS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A valid name server host name. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `Openpgpkey { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `PTRRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "PTR"` Record type. - `"PTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Domain name pointing to the address. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TXTRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TXT"` Record type. - `"TXT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Text content for the record. The content must consist of quoted "character strings" (RFC 1035), each with a length of up to 255 bytes. Strings exceeding this allowed maximum length are automatically split. Learn more at . - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CAARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CAA"` Record type. - `"CAA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CAA content. See 'data' to set CAA properties. - `data: optional { flags, tag, value }` Components of a CAA record. - `flags: optional number` Flags for the CAA record. - `tag: optional string` Name of the property controlled by this record (e.g.: issue, issuewild, iodef). - `value: optional string` Value of the record. This field's semantics depend on the chosen tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `CERTRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "CERT"` Record type. - `"CERT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted CERT content. See 'data' to set CERT properties. - `data: optional { algorithm, certificate, key_tag, type }` Components of a CERT record. - `algorithm: optional number` Algorithm. - `certificate: optional string` Certificate. - `key_tag: optional number` Key Tag. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DNSKEYRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DNSKEY"` Record type. - `"DNSKEY"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DNSKEY content. See 'data' to set DNSKEY properties. - `data: optional { algorithm, flags, protocol, public_key }` Components of a DNSKEY record. - `algorithm: optional number` Algorithm. - `flags: optional number` Flags. - `protocol: optional number` Protocol. - `public_key: optional string` Public Key. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `DSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "DS"` Record type. - `"DS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted DS content. See 'data' to set DS properties. - `data: optional { algorithm, digest, digest_type, key_tag }` Components of a DS record. - `algorithm: optional number` Algorithm. - `digest: optional string` Digest. - `digest_type: optional number` Digest Type. - `key_tag: optional number` Key Tag. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `HTTPSRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "HTTPS"` Record type. - `"HTTPS"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted HTTPS content. See 'data' to set HTTPS properties. - `data: optional { priority, target, value }` Components of a HTTPS record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `LOCRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "LOC"` Record type. - `"LOC"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted LOC content. See 'data' to set LOC properties. - `data: optional { altitude, lat_degrees, lat_direction, 9 more }` Components of a LOC record. - `altitude: optional number` Altitude of location in meters. - `lat_degrees: optional number` Degrees of latitude. - `lat_direction: optional "N" or "S"` Latitude direction. - `"N"` - `"S"` - `lat_minutes: optional number` Minutes of latitude. - `lat_seconds: optional number` Seconds of latitude. - `long_degrees: optional number` Degrees of longitude. - `long_direction: optional "E" or "W"` Longitude direction. - `"E"` - `"W"` - `long_minutes: optional number` Minutes of longitude. - `long_seconds: optional number` Seconds of longitude. - `precision_horz: optional number` Horizontal precision of location. - `precision_vert: optional number` Vertical precision of location. - `size: optional number` Size of location in meters. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `NAPTRRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "NAPTR"` Record type. - `"NAPTR"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted NAPTR content. See 'data' to set NAPTR properties. - `data: optional { flags, order, preference, 3 more }` Components of a NAPTR record. - `flags: optional string` Flags. - `order: optional number` Order. - `preference: optional number` Preference. - `regex: optional string` Regex. - `replacement: optional string` Replacement. - `service: optional string` Service. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SMIMEARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SMIMEA"` Record type. - `"SMIMEA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SMIMEA content. See 'data' to set SMIMEA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a SMIMEA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SRVRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SRV"` Record type. - `"SRV"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Priority, weight, port, and SRV target. See 'data' for setting the individual component values. - `data: optional { port, priority, target, weight }` Components of a SRV record. - `port: optional number` The port of the service. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `target: optional string` A valid hostname. - `weight: optional number` The record weight. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SSHFPRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SSHFP"` Record type. - `"SSHFP"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SSHFP content. See 'data' to set SSHFP properties. - `data: optional { algorithm, fingerprint, type }` Components of a SSHFP record. - `algorithm: optional number` Algorithm. - `fingerprint: optional string` Fingerprint. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `SVCBRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "SVCB"` Record type. - `"SVCB"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SVCB content. See 'data' to set SVCB properties. - `data: optional { priority, target, value }` Components of a SVCB record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `TLSARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "TLSA"` Record type. - `"TLSA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted TLSA content. See 'data' to set TLSA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a TLSA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `URIRecord { name, ttl, type, 7 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `type: "URI"` Record type. - `"URI"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted URI content. See 'data' to set URI properties. - `data: optional { target, weight }` Components of a URI record. - `target: optional string` The record content. - `weight: optional number` The record weight. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### Record Response - `RecordResponse = ARecord or AAAARecord or CNAMERecord or 18 more` - `A = ARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `AAAA = AAAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CNAME = CNAMERecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `MX = MXRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NS = NSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `Openpgpkey { id, comment, content, 12 more }` - `id: string` Identifier. - `comment: string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `proxied: boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `PTR = PTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TXT = TXTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CAA = CAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CERT = CERTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DNSKEY = DNSKEYRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DS = DSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `HTTPS = HTTPSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `LOC = LOCRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NAPTR = NAPTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SMIMEA = SMIMEARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SRV = SRVRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SSHFP = SSHFPRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SVCB = SVCBRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TLSA = TLSARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `URI = URIRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. ### Record Tags - `RecordTags = string` Individual tag of the form name:value (the name must consist of only letters, numbers, underscores and hyphens) ### SMIMEA Record - `SMIMEARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "SMIMEA"` Record type. - `"SMIMEA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SMIMEA content. See 'data' to set SMIMEA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a SMIMEA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### SRV Record - `SRVRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "SRV"` Record type. - `"SRV"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Priority, weight, port, and SRV target. See 'data' for setting the individual component values. - `data: optional { port, priority, target, weight }` Components of a SRV record. - `port: optional number` The port of the service. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `target: optional string` A valid hostname. - `weight: optional number` The record weight. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### SSHFP Record - `SSHFPRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "SSHFP"` Record type. - `"SSHFP"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SSHFP content. See 'data' to set SSHFP properties. - `data: optional { algorithm, fingerprint, type }` Components of a SSHFP record. - `algorithm: optional number` Algorithm. - `fingerprint: optional string` Fingerprint. - `type: optional number` Type. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### SVCB Record - `SVCBRecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "SVCB"` Record type. - `"SVCB"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted SVCB content. See 'data' to set SVCB properties. - `data: optional { priority, target, value }` Components of a SVCB record. - `priority: optional number` Priority. - `target: optional string` Target. - `value: optional string` Value. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### TLSA Record - `TLSARecord { name, ttl, type, 6 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "TLSA"` Record type. - `"TLSA"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted TLSA content. See 'data' to set TLSA properties. - `data: optional { certificate, matching_type, selector, usage }` Components of a TLSA record. - `certificate: optional string` Certificate. - `matching_type: optional number` Matching Type. - `selector: optional number` Selector. - `usage: optional number` Usage. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### TTL - `TTL = number or 1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` ### TXT Record - `TXTRecord { name, ttl, type, 5 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "TXT"` Record type. - `"TXT"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Text content for the record. The content must consist of quoted "character strings" (RFC 1035), each with a length of up to 255 bytes. Strings exceeding this allowed maximum length are automatically split. Learn more at . - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### URI Record - `URIRecord { name, ttl, type, 7 more }` - `name: string` Complete DNS record name, including the zone name, in Punycode. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "URI"` Record type. - `"URI"` - `comment: optional string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: optional string` Formatted URI content. See 'data' to set URI properties. - `data: optional { target, weight }` Components of a URI record. - `target: optional string` The record content. - `weight: optional number` The record weight. - `priority: optional number` Required for MX and URI records; ignored for other record types (but may still be returned by the API). Records with lower priorities are preferred. This field is to be deprecated in favor of the priority field within the data map. - `proxied: optional boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: optional { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: optional array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. ### Record Delete Response - `RecordDeleteResponse { id }` - `id: optional string` Identifier. ### Record Export Response - `RecordExportResponse = string` Exported BIND zone file. ### Record Import Response - `RecordImportResponse { recs_added, total_records_parsed }` - `recs_added: optional number` Number of DNS records added. - `total_records_parsed: optional number` Total number of DNS records parsed. ### Record Scan Response - `RecordScanResponse { recs_added, total_records_parsed }` - `recs_added: optional number` Number of DNS records added. - `total_records_parsed: optional number` Total number of DNS records parsed. ### Record Scan Trigger Response - `RecordScanTriggerResponse { errors, messages, success }` - `errors: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `messages: array of { code, message, documentation_url, source }` - `code: number` - `message: string` - `documentation_url: optional string` - `source: optional { pointer }` - `pointer: optional string` - `success: true` Whether the API call was successful. - `true` ### Record Scan Review Response - `RecordScanReviewResponse { accepts, rejects }` - `accepts: optional array of RecordResponse` - `A = ARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `AAAA = AAAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CNAME = CNAMERecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `MX = MXRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NS = NSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `Openpgpkey { id, comment, content, 12 more }` - `id: string` Identifier. - `comment: string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `proxied: boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `PTR = PTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TXT = TXTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CAA = CAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CERT = CERTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DNSKEY = DNSKEYRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DS = DSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `HTTPS = HTTPSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `LOC = LOCRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NAPTR = NAPTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SMIMEA = SMIMEARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SRV = SRVRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SSHFP = SSHFPRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SVCB = SVCBRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TLSA = TLSARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `URI = URIRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `rejects: optional array of string` ### Record Batch Response - `RecordBatchResponse { deletes, patches, posts, puts }` - `deletes: optional array of RecordResponse` - `A = ARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `AAAA = AAAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CNAME = CNAMERecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `MX = MXRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NS = NSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `Openpgpkey { id, comment, content, 12 more }` - `id: string` Identifier. - `comment: string` Comments or notes about the DNS record. This field has no effect on DNS responses. - `content: string` A single Base64-encoded OpenPGP Transferable Public Key (RFC 4880 Section 11.1) - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `name: string` Complete DNS record name, including the zone name, in Punycode. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `proxied: boolean` Whether the record is receiving the performance and security benefits of Cloudflare. - `settings: { ipv4_only, ipv6_only }` Settings for the DNS record. - `ipv4_only: optional boolean` When enabled, only A records will be generated, and AAAA records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `ipv6_only: optional boolean` When enabled, only AAAA records will be generated, and A records will not be created. This setting is intended for exceptional cases. Note that this option only applies to proxied records and it has no effect on whether Cloudflare communicates with the origin using IPv4 or IPv6. - `tags: array of RecordTags` Custom tags for the DNS record. This field has no effect on DNS responses. - `ttl: TTL` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `number` - `1` Time To Live (TTL) of the DNS record in seconds. Setting to 1 means 'automatic'. Value must be between 60 and 86400, with the minimum reduced to 30 for Enterprise zones. - `1` - `type: "OPENPGPKEY"` Record type. - `"OPENPGPKEY"` - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `PTR = PTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TXT = TXTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CAA = CAARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `CERT = CERTRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DNSKEY = DNSKEYRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `DS = DSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `HTTPS = HTTPSRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `LOC = LOCRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `NAPTR = NAPTRRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SMIMEA = SMIMEARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SRV = SRVRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SSHFP = SSHFPRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `SVCB = SVCBRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `TLSA = TLSARecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `URI = URIRecord` - `id: string` Identifier. - `created_on: string` When the record was created. - `meta: unknown` Extra Cloudflare-specific information about the record. - `modified_on: string` When the record was last modified. - `proxiable: boolean` Whether the record can be proxied by Cloudflare or not. - `comment_modified_on: optional string` When the record comment was last modified. Omitted if there is no comment. - `tags_modified_on: optional string` When the record tags were last modified. Omitted if there are no tags. - `patches: optional array of RecordResponse` - `A = ARecord` - `AAAA = AAAARecord` - `CNAME = CNAMERecord` - `MX = MXRecord` - `NS = NSRecord` - `Openpgpkey { id, comment, content, 12 more }` - `PTR = PTRRecord` - `TXT = TXTRecord` - `CAA = CAARecord` - `CERT = CERTRecord` - `DNSKEY = DNSKEYRecord` - `DS = DSRecord` - `HTTPS = HTTPSRecord` - `LOC = LOCRecord` - `NAPTR = NAPTRRecord` - `SMIMEA = SMIMEARecord` - `SRV = SRVRecord` - `SSHFP = SSHFPRecord` - `SVCB = SVCBRecord` - `TLSA = TLSARecord` - `URI = URIRecord` - `posts: optional array of RecordResponse` - `A = ARecord` - `AAAA = AAAARecord` - `CNAME = CNAMERecord` - `MX = MXRecord` - `NS = NSRecord` - `Openpgpkey { id, comment, content, 12 more }` - `PTR = PTRRecord` - `TXT = TXTRecord` - `CAA = CAARecord` - `CERT = CERTRecord` - `DNSKEY = DNSKEYRecord` - `DS = DSRecord` - `HTTPS = HTTPSRecord` - `LOC = LOCRecord` - `NAPTR = NAPTRRecord` - `SMIMEA = SMIMEARecord` - `SRV = SRVRecord` - `SSHFP = SSHFPRecord` - `SVCB = SVCBRecord` - `TLSA = TLSARecord` - `URI = URIRecord` - `puts: optional array of RecordResponse` - `A = ARecord` - `AAAA = AAAARecord` - `CNAME = CNAMERecord` - `MX = MXRecord` - `NS = NSRecord` - `Openpgpkey { id, comment, content, 12 more }` - `PTR = PTRRecord` - `TXT = TXTRecord` - `CAA = CAARecord` - `CERT = CERTRecord` - `DNSKEY = DNSKEYRecord` - `DS = DSRecord` - `HTTPS = HTTPSRecord` - `LOC = LOCRecord` - `NAPTR = NAPTRRecord` - `SMIMEA = SMIMEARecord` - `SRV = SRVRecord` - `SSHFP = SSHFPRecord` - `SVCB = SVCBRecord` - `TLSA = TLSARecord` - `URI = URIRecord`