Skip to content
Start here

DNS

DNSDNSSEC

DNSSEC Details
client.dns.dnssec.get(DNSSECGetParams { zone_id } params, RequestOptionsoptions?): DNSSEC { algorithm, digest, digest_algorithm, 11 more }
GET/zones/{zone_id}/dnssec
Edit DNSSEC Status
client.dns.dnssec.edit(DNSSECEditParams { zone_id, dnssec_multi_signer, dnssec_presigned, 2 more } params, RequestOptionsoptions?): DNSSEC { algorithm, digest, digest_algorithm, 11 more }
PATCH/zones/{zone_id}/dnssec
Delete DNSSEC records
client.dns.dnssec.delete(DNSSECDeleteParams { zone_id } params, RequestOptionsoptions?): DNSSECDeleteResponse
DELETE/zones/{zone_id}/dnssec
ModelsExpand Collapse
DNSSEC { algorithm, digest, digest_algorithm, 11 more }
algorithm?: string | null

Algorithm key code.

digest?: string | null

Digest hash.

digest_algorithm?: string | null

Type of digest algorithm.

digest_type?: string | null

Coded type for digest algorithm.

dnssec_multi_signer?: boolean

If true, multi-signer DNSSEC is enabled on the zone, allowing multiple providers to serve a DNSSEC-signed zone at the same time. This is required for DNSKEY records (except those automatically generated by Cloudflare) to be added to the zone.

See Multi-signer DNSSEC for details.

dnssec_presigned?: boolean

If true, allows Cloudflare to transfer in a DNSSEC-signed zone including signatures from an external provider, without requiring Cloudflare to sign any records on the fly.

Note that this feature has some limitations. See Cloudflare as Secondary for details.

dnssec_use_nsec3?: boolean

If true, enables the use of NSEC3 together with DNSSEC on the zone. Combined with setting dnssec_presigned to true, this enables the use of NSEC3 records when transferring in from an external provider. If dnssec_presigned is instead set to false (default), NSEC3 records will be generated and signed at request time.

See DNSSEC with NSEC3 for details.

ds?: string | null

Full DS record.

flags?: number | null

Flag for DNSSEC record.

key_tag?: number | null

Code for key tag.

key_type?: string | null

Algorithm key type.

modified_on?: string | null

When DNSSEC was last modified.

formatdate-time
public_key?: string | null

Public key for DS record.

status?: "active" | "pending" | "disabled" | 2 more

Status of DNSSEC, based on user-desired state and presence of necessary records.

One of the following:
"active"
"pending"
"disabled"
"pending-disabled"
"error"
DNSSECDeleteResponse = string

DNSRecords

List DNS Records
client.dns.records.list(RecordListParams { zone_id, comment, content, 11 more } params, RequestOptionsoptions?): V4PagePaginationArray<RecordResponse>
GET/zones/{zone_id}/dns_records
DNS Record Details
client.dns.records.get(stringdnsRecordId, RecordGetParams { zone_id } params, RequestOptionsoptions?): RecordResponse
GET/zones/{zone_id}/dns_records/{dns_record_id}
Create DNS Record
client.dns.records.create(RecordCreateParamsparams, RequestOptionsoptions?): RecordResponse
POST/zones/{zone_id}/dns_records
Overwrite DNS Record
client.dns.records.update(stringdnsRecordId, RecordUpdateParamsparams, RequestOptionsoptions?): RecordResponse
PUT/zones/{zone_id}/dns_records/{dns_record_id}
Update DNS Record
client.dns.records.edit(stringdnsRecordId, RecordEditParamsparams, RequestOptionsoptions?): RecordResponse
PATCH/zones/{zone_id}/dns_records/{dns_record_id}
Delete DNS Record
client.dns.records.delete(stringdnsRecordId, RecordDeleteParams { zone_id } params, RequestOptionsoptions?): RecordDeleteResponse { id }
DELETE/zones/{zone_id}/dns_records/{dns_record_id}
Export DNS Records
client.dns.records.export(RecordExportParams { zone_id } params, RequestOptionsoptions?): RecordExportResponse
GET/zones/{zone_id}/dns_records/export
Import DNS Records
client.dns.records.import(RecordImportParams { zone_id, file, proxied } params, RequestOptionsoptions?): RecordImportResponse { recs_added, total_records_parsed }
POST/zones/{zone_id}/dns_records/import
Scan DNS Records
Deprecated
client.dns.records.scan(RecordScanParams { zone_id, body } params, RequestOptionsoptions?): RecordScanResponse { recs_added, total_records_parsed }
POST/zones/{zone_id}/dns_records/scan
Trigger DNS Record Scan
client.dns.records.scanTrigger(RecordScanTriggerParams { zone_id } params, RequestOptionsoptions?): RecordScanTriggerResponse { errors, messages, success }
POST/zones/{zone_id}/dns_records/scan/trigger
Review Scanned DNS Records
client.dns.records.scanReview(RecordScanReviewParams { zone_id, accepts, rejects } params, RequestOptionsoptions?): RecordScanReviewResponse { accepts, rejects }
POST/zones/{zone_id}/dns_records/scan/review
List Scanned DNS Records
client.dns.records.scanList(RecordScanListParams { zone_id } params, RequestOptionsoptions?): SinglePage<RecordResponse>
GET/zones/{zone_id}/dns_records/scan/review
Batch DNS Records
client.dns.records.batch(RecordBatchParams { zone_id, deletes, patches, 2 more } params, RequestOptionsoptions?): RecordBatchResponse { deletes, patches, posts, puts }
POST/zones/{zone_id}/dns_records/batch
ModelsExpand Collapse
ARecord { name, ttl, type, 6 more }
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

A valid IPv4 address.

formatipv4
private_routing?: boolean

Enables private network routing to the origin.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

A valid IPv6 address.

formatipv6
private_routing?: boolean

Enables private network routing to the origin.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<RecordTags>

Custom tags for the DNS record. This field has no effect on DNS responses.

BatchPatch = ARecord { id } | AAAARecord { id } | CNAMERecord { id } | 18 more
One of the following:
ARecord extends ARecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
AAAARecord extends AAAARecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
CNAMERecord extends CNAMERecord { name, ttl, type, 5 more } { id }
id: string

Identifier.

maxLength32
MXRecord extends MXRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
NSRecord extends NSRecord { name, ttl, type, 5 more } { id }
id: string

Identifier.

maxLength32
OpenpgpkeyRecord { id, name, ttl, 6 more }
id: string

Identifier.

maxLength32
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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.

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)

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<RecordTags>

Custom tags for the DNS record. This field has no effect on DNS responses.

PTRRecord extends PTRRecord { name, ttl, type, 5 more } { id }
id: string

Identifier.

maxLength32
TXTRecord extends TXTRecord { name, ttl, type, 5 more } { id }
id: string

Identifier.

maxLength32
CAARecord extends CAARecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
CERTRecord extends CERTRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
DNSKEYRecord extends DNSKEYRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
DSRecord extends DSRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
HTTPSRecord extends HTTPSRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
LOCRecord extends LOCRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
NAPTRRecord extends NAPTRRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
SMIMEARecord extends SMIMEARecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
SRVRecord extends SRVRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
SSHFPRecord extends SSHFPRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
SVCBRecord extends SVCBRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
TLSARecord extends TLSARecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
URIRecord extends URIRecord { name, ttl, type, 7 more } { id }
id: string

Identifier.

maxLength32
BatchPut = ARecord { id } | AAAARecord { id } | CNAMERecord { id } | 18 more
One of the following:
ARecord extends ARecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
AAAARecord extends AAAARecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
CNAMERecord extends CNAMERecord { name, ttl, type, 5 more } { id }
id: string

Identifier.

maxLength32
MXRecord extends MXRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
NSRecord extends NSRecord { name, ttl, type, 5 more } { id }
id: string

Identifier.

maxLength32
OpenpgpkeyRecord { id, name, ttl, 6 more }
id: string

Identifier.

maxLength32
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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.

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)

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<RecordTags>

Custom tags for the DNS record. This field has no effect on DNS responses.

PTRRecord extends PTRRecord { name, ttl, type, 5 more } { id }
id: string

Identifier.

maxLength32
TXTRecord extends TXTRecord { name, ttl, type, 5 more } { id }
id: string

Identifier.

maxLength32
CAARecord extends CAARecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
CERTRecord extends CERTRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
DNSKEYRecord extends DNSKEYRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
DSRecord extends DSRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
HTTPSRecord extends HTTPSRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
LOCRecord extends LOCRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
NAPTRRecord extends NAPTRRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
SMIMEARecord extends SMIMEARecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
SRVRecord extends SRVRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
SSHFPRecord extends SSHFPRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
SVCBRecord extends SVCBRecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
TLSARecord extends TLSARecord { name, ttl, type, 6 more } { id }
id: string

Identifier.

maxLength32
URIRecord extends URIRecord { name, ttl, type, 7 more } { id }
id: string

Identifier.

maxLength32
CAARecord { name, ttl, type, 6 more }
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted CAA content. See 'data' to set CAA properties.

data?: Data { flags, tag, value }

Components of a CAA record.

flags?: number

Flags for the CAA record.

maximum255
minimum0
tag?: string

Name of the property controlled by this record (e.g.: issue, issuewild, iodef).

value?: string

Value of the record. This field's semantics depend on the chosen tag.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted CERT content. See 'data' to set CERT properties.

data?: Data { algorithm, certificate, key_tag, type }

Components of a CERT record.

algorithm?: number

Algorithm.

maximum255
minimum0
certificate?: string

Certificate.

key_tag?: number

Key Tag.

maximum65535
minimum0
type?: number

Type.

maximum65535
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

A valid hostname. Must not match the record's name.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { flatten_cname, ipv4_only, ipv6_only }

Settings for the DNS record.

flatten_cname?: 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?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted DNSKEY content. See 'data' to set DNSKEY properties.

data?: Data { algorithm, flags, protocol, public_key }

Components of a DNSKEY record.

algorithm?: number

Algorithm.

maximum255
minimum0
flags?: number

Flags.

maximum65535
minimum0
protocol?: number

Protocol.

maximum255
minimum0
public_key?: string

Public Key.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted DS content. See 'data' to set DS properties.

data?: Data { algorithm, digest, digest_type, key_tag }

Components of a DS record.

algorithm?: number

Algorithm.

maximum255
minimum0
digest?: string

Digest.

digest_type?: number

Digest Type.

maximum255
minimum0
key_tag?: number

Key Tag.

maximum65535
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted HTTPS content. See 'data' to set HTTPS properties.

data?: Data { priority, target, value }

Components of a HTTPS record.

priority?: number

Priority.

maximum65535
minimum0
target?: string

Target.

value?: string

Value.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted LOC content. See 'data' to set LOC properties.

data?: Data { altitude, lat_degrees, lat_direction, 9 more }

Components of a LOC record.

altitude?: number

Altitude of location in meters.

maximum42849672.95
minimum-100000
lat_degrees?: number

Degrees of latitude.

maximum90
minimum0
lat_direction?: "N" | "S"

Latitude direction.

One of the following:
"N"
"S"
lat_minutes?: number

Minutes of latitude.

maximum59
minimum0
lat_seconds?: number

Seconds of latitude.

maximum59.999
minimum0
long_degrees?: number

Degrees of longitude.

maximum180
minimum0
long_direction?: "E" | "W"

Longitude direction.

One of the following:
"E"
"W"
long_minutes?: number

Minutes of longitude.

maximum59
minimum0
long_seconds?: number

Seconds of longitude.

maximum59.999
minimum0
precision_horz?: number

Horizontal precision of location.

maximum90000000
minimum0
precision_vert?: number

Vertical precision of location.

maximum90000000
minimum0
size?: number

Size of location in meters.

maximum90000000
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

A valid mail server hostname.

formathostname
priority?: 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.

maximum65535
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted NAPTR content. See 'data' to set NAPTR properties.

data?: Data { flags, order, preference, 3 more }

Components of a NAPTR record.

flags?: string

Flags.

order?: number

Order.

maximum65535
minimum0
preference?: number

Preference.

maximum65535
minimum0
regex?: string

Regex.

replacement?: string

Replacement.

service?: string

Service.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

A valid name server host name.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Domain name pointing to the address.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<RecordTags>

Custom tags for the DNS record. This field has no effect on DNS responses.

Record = ARecord { name, ttl, type, 6 more } | AAAARecord { name, ttl, type, 6 more } | CNAMERecord { name, ttl, type, 5 more } | 18 more
One of the following:
ARecord { name, ttl, type, 6 more }
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

A valid IPv4 address.

formatipv4
private_routing?: boolean

Enables private network routing to the origin.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

A valid IPv6 address.

formatipv6
private_routing?: boolean

Enables private network routing to the origin.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

A valid hostname. Must not match the record's name.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { flatten_cname, ipv4_only, ipv6_only }

Settings for the DNS record.

flatten_cname?: 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?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

A valid mail server hostname.

formathostname
priority?: 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.

maximum65535
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

A valid name server host name.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

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)

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Domain name pointing to the address.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: 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 https://www.cloudflare.com/learning/dns/dns-records/dns-txt-record/.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted CAA content. See 'data' to set CAA properties.

data?: Data { flags, tag, value }

Components of a CAA record.

flags?: number

Flags for the CAA record.

maximum255
minimum0
tag?: string

Name of the property controlled by this record (e.g.: issue, issuewild, iodef).

value?: string

Value of the record. This field's semantics depend on the chosen tag.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted CERT content. See 'data' to set CERT properties.

data?: Data { algorithm, certificate, key_tag, type }

Components of a CERT record.

algorithm?: number

Algorithm.

maximum255
minimum0
certificate?: string

Certificate.

key_tag?: number

Key Tag.

maximum65535
minimum0
type?: number

Type.

maximum65535
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted DNSKEY content. See 'data' to set DNSKEY properties.

data?: Data { algorithm, flags, protocol, public_key }

Components of a DNSKEY record.

algorithm?: number

Algorithm.

maximum255
minimum0
flags?: number

Flags.

maximum65535
minimum0
protocol?: number

Protocol.

maximum255
minimum0
public_key?: string

Public Key.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted DS content. See 'data' to set DS properties.

data?: Data { algorithm, digest, digest_type, key_tag }

Components of a DS record.

algorithm?: number

Algorithm.

maximum255
minimum0
digest?: string

Digest.

digest_type?: number

Digest Type.

maximum255
minimum0
key_tag?: number

Key Tag.

maximum65535
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted HTTPS content. See 'data' to set HTTPS properties.

data?: Data { priority, target, value }

Components of a HTTPS record.

priority?: number

Priority.

maximum65535
minimum0
target?: string

Target.

value?: string

Value.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted LOC content. See 'data' to set LOC properties.

data?: Data { altitude, lat_degrees, lat_direction, 9 more }

Components of a LOC record.

altitude?: number

Altitude of location in meters.

maximum42849672.95
minimum-100000
lat_degrees?: number

Degrees of latitude.

maximum90
minimum0
lat_direction?: "N" | "S"

Latitude direction.

One of the following:
"N"
"S"
lat_minutes?: number

Minutes of latitude.

maximum59
minimum0
lat_seconds?: number

Seconds of latitude.

maximum59.999
minimum0
long_degrees?: number

Degrees of longitude.

maximum180
minimum0
long_direction?: "E" | "W"

Longitude direction.

One of the following:
"E"
"W"
long_minutes?: number

Minutes of longitude.

maximum59
minimum0
long_seconds?: number

Seconds of longitude.

maximum59.999
minimum0
precision_horz?: number

Horizontal precision of location.

maximum90000000
minimum0
precision_vert?: number

Vertical precision of location.

maximum90000000
minimum0
size?: number

Size of location in meters.

maximum90000000
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted NAPTR content. See 'data' to set NAPTR properties.

data?: Data { flags, order, preference, 3 more }

Components of a NAPTR record.

flags?: string

Flags.

order?: number

Order.

maximum65535
minimum0
preference?: number

Preference.

maximum65535
minimum0
regex?: string

Regex.

replacement?: string

Replacement.

service?: string

Service.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted SMIMEA content. See 'data' to set SMIMEA properties.

data?: Data { certificate, matching_type, selector, usage }

Components of a SMIMEA record.

certificate?: string

Certificate.

matching_type?: number

Matching Type.

maximum255
minimum0
selector?: number

Selector.

maximum255
minimum0
usage?: number

Usage.

maximum255
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Priority, weight, port, and SRV target. See 'data' for setting the individual component values.

data?: Data { port, priority, target, weight }

Components of a SRV record.

port?: number

The port of the service.

maximum65535
minimum0
priority?: 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.

maximum65535
minimum0
target?: string

A valid hostname.

formathostname
weight?: number

The record weight.

maximum65535
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted SSHFP content. See 'data' to set SSHFP properties.

data?: Data { algorithm, fingerprint, type }

Components of a SSHFP record.

algorithm?: number

Algorithm.

maximum255
minimum0
fingerprint?: string

Fingerprint.

type?: number

Type.

maximum255
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted SVCB content. See 'data' to set SVCB properties.

data?: Data { priority, target, value }

Components of a SVCB record.

priority?: number

Priority.

maximum65535
minimum0
target?: string

Target.

value?: string

Value.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted TLSA content. See 'data' to set TLSA properties.

data?: Data { certificate, matching_type, selector, usage }

Components of a TLSA record.

certificate?: string

Certificate.

matching_type?: number

Matching Type.

maximum255
minimum0
selector?: number

Selector.

maximum255
minimum0
usage?: number

Usage.

maximum255
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted URI content. See 'data' to set URI properties.

data?: Data { target, weight }

Components of a URI record.

target?: string

The record content.

weight?: number

The record weight.

maximum65535
minimum0
priority?: 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.

maximum65535
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<RecordTags>

Custom tags for the DNS record. This field has no effect on DNS responses.

RecordResponse = A { id, created_on, meta, 4 more } | AAAA { id, created_on, meta, 4 more } | CNAME { id, created_on, meta, 4 more } | 18 more
One of the following:
A extends ARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
AAAA extends AAAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CNAME extends CNAMERecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
MX extends MXRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NS extends NSRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
Openpgpkey { id, comment, content, 12 more }
id: string

Identifier.

maxLength32
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.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

type: "OPENPGPKEY"

Record type.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
PTR extends PTRRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TXT extends TXTRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CAA extends CAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CERT extends CERTRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DNSKEY extends DNSKEYRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DS extends DSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
HTTPS extends HTTPSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
LOC extends LOCRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NAPTR extends NAPTRRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SMIMEA extends SMIMEARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SRV extends SRVRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SSHFP extends SSHFPRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SVCB extends SVCBRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TLSA extends TLSARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
URI extends URIRecord { name, ttl, type, 7 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
RecordTags = string

Individual tag of the form name:value (the name must consist of only letters, numbers, underscores and hyphens)

SMIMEARecord { name, ttl, type, 6 more }
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted SMIMEA content. See 'data' to set SMIMEA properties.

data?: Data { certificate, matching_type, selector, usage }

Components of a SMIMEA record.

certificate?: string

Certificate.

matching_type?: number

Matching Type.

maximum255
minimum0
selector?: number

Selector.

maximum255
minimum0
usage?: number

Usage.

maximum255
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Priority, weight, port, and SRV target. See 'data' for setting the individual component values.

data?: Data { port, priority, target, weight }

Components of a SRV record.

port?: number

The port of the service.

maximum65535
minimum0
priority?: 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.

maximum65535
minimum0
target?: string

A valid hostname.

formathostname
weight?: number

The record weight.

maximum65535
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted SSHFP content. See 'data' to set SSHFP properties.

data?: Data { algorithm, fingerprint, type }

Components of a SSHFP record.

algorithm?: number

Algorithm.

maximum255
minimum0
fingerprint?: string

Fingerprint.

type?: number

Type.

maximum255
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted SVCB content. See 'data' to set SVCB properties.

data?: Data { priority, target, value }

Components of a SVCB record.

priority?: number

Priority.

maximum65535
minimum0
target?: string

Target.

value?: string

Value.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted TLSA content. See 'data' to set TLSA properties.

data?: Data { certificate, matching_type, selector, usage }

Components of a TLSA record.

certificate?: string

Certificate.

matching_type?: number

Matching Type.

maximum255
minimum0
selector?: number

Selector.

maximum255
minimum0
usage?: number

Usage.

maximum255
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<RecordTags>

Custom tags for the DNS record. This field has no effect on DNS responses.

TTL = 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.

One of the following:
number
1
TXTRecord { name, ttl, type, 5 more }
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: 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 https://www.cloudflare.com/learning/dns/dns-records/dns-txt-record/.

proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

maxLength255
minLength1
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.

comment?: string

Comments or notes about the DNS record. This field has no effect on DNS responses.

content?: string

Formatted URI content. See 'data' to set URI properties.

data?: Data { target, weight }

Components of a URI record.

target?: string

The record content.

weight?: number

The record weight.

maximum65535
minimum0
priority?: 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.

maximum65535
minimum0
proxied?: boolean

Whether the record is receiving the performance and security benefits of Cloudflare.

settings?: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<RecordTags>

Custom tags for the DNS record. This field has no effect on DNS responses.

RecordDeleteResponse { id }
id?: string

Identifier.

maxLength32
RecordExportResponse = string

Exported BIND zone file.

RecordImportResponse { recs_added, total_records_parsed }
recs_added?: number

Number of DNS records added.

total_records_parsed?: number

Total number of DNS records parsed.

RecordScanResponse { recs_added, total_records_parsed }
recs_added?: number

Number of DNS records added.

total_records_parsed?: number

Total number of DNS records parsed.

RecordScanTriggerResponse { errors, messages, success }
errors: Array<Error>
code: number
minimum1000
message: string
documentation_url?: string
source?: Source { pointer }
pointer?: string
messages: Array<Message>
code: number
minimum1000
message: string
documentation_url?: string
source?: Source { pointer }
pointer?: string
success: true

Whether the API call was successful.

RecordScanReviewResponse { accepts, rejects }
accepts?: Array<RecordResponse>
One of the following:
A extends ARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
AAAA extends AAAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CNAME extends CNAMERecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
MX extends MXRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NS extends NSRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
Openpgpkey { id, comment, content, 12 more }
id: string

Identifier.

maxLength32
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.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

type: "OPENPGPKEY"

Record type.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
PTR extends PTRRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TXT extends TXTRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CAA extends CAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CERT extends CERTRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DNSKEY extends DNSKEYRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DS extends DSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
HTTPS extends HTTPSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
LOC extends LOCRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NAPTR extends NAPTRRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SMIMEA extends SMIMEARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SRV extends SRVRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SSHFP extends SSHFPRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SVCB extends SVCBRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TLSA extends TLSARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
URI extends URIRecord { name, ttl, type, 7 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
rejects?: Array<string>
RecordBatchResponse { deletes, patches, posts, puts }
deletes?: Array<RecordResponse>
One of the following:
A extends ARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
AAAA extends AAAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CNAME extends CNAMERecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
MX extends MXRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NS extends NSRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
Openpgpkey { id, comment, content, 12 more }
id: string

Identifier.

maxLength32
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.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

type: "OPENPGPKEY"

Record type.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
PTR extends PTRRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TXT extends TXTRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CAA extends CAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CERT extends CERTRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DNSKEY extends DNSKEYRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DS extends DSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
HTTPS extends HTTPSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
LOC extends LOCRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NAPTR extends NAPTRRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SMIMEA extends SMIMEARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SRV extends SRVRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SSHFP extends SSHFPRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SVCB extends SVCBRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TLSA extends TLSARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
URI extends URIRecord { name, ttl, type, 7 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
patches?: Array<RecordResponse>
One of the following:
A extends ARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
AAAA extends AAAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CNAME extends CNAMERecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
MX extends MXRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NS extends NSRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
Openpgpkey { id, comment, content, 12 more }
id: string

Identifier.

maxLength32
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.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

type: "OPENPGPKEY"

Record type.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
PTR extends PTRRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TXT extends TXTRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CAA extends CAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CERT extends CERTRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DNSKEY extends DNSKEYRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DS extends DSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
HTTPS extends HTTPSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
LOC extends LOCRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NAPTR extends NAPTRRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SMIMEA extends SMIMEARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SRV extends SRVRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SSHFP extends SSHFPRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SVCB extends SVCBRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TLSA extends TLSARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
URI extends URIRecord { name, ttl, type, 7 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
posts?: Array<RecordResponse>
One of the following:
A extends ARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
AAAA extends AAAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CNAME extends CNAMERecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
MX extends MXRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NS extends NSRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
Openpgpkey { id, comment, content, 12 more }
id: string

Identifier.

maxLength32
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.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

type: "OPENPGPKEY"

Record type.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
PTR extends PTRRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TXT extends TXTRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CAA extends CAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CERT extends CERTRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DNSKEY extends DNSKEYRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DS extends DSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
HTTPS extends HTTPSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
LOC extends LOCRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NAPTR extends NAPTRRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SMIMEA extends SMIMEARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SRV extends SRVRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SSHFP extends SSHFPRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SVCB extends SVCBRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TLSA extends TLSARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
URI extends URIRecord { name, ttl, type, 7 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
puts?: Array<RecordResponse>
One of the following:
A extends ARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
AAAA extends AAAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CNAME extends CNAMERecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
MX extends MXRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NS extends NSRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
Openpgpkey { id, comment, content, 12 more }
id: string

Identifier.

maxLength32
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.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
name: string

Complete DNS record name, including the zone name, in Punycode.

maxLength255
minLength1
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: Settings { ipv4_only, ipv6_only }

Settings for the DNS record.

ipv4_only?: 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?: 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<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.

type: "OPENPGPKEY"

Record type.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
PTR extends PTRRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TXT extends TXTRecord { name, ttl, type, 5 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CAA extends CAARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
CERT extends CERTRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DNSKEY extends DNSKEYRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
DS extends DSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
HTTPS extends HTTPSRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
LOC extends LOCRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
NAPTR extends NAPTRRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SMIMEA extends SMIMEARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SRV extends SRVRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SSHFP extends SSHFPRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
SVCB extends SVCBRecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
TLSA extends TLSARecord { name, ttl, type, 6 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time
URI extends URIRecord { name, ttl, type, 7 more } { id, created_on, meta, 4 more }
id: string

Identifier.

maxLength32
created_on: string

When the record was created.

formatdate-time
meta: unknown

Extra Cloudflare-specific information about the record.

modified_on: string

When the record was last modified.

formatdate-time
proxiable: boolean

Whether the record can be proxied by Cloudflare or not.

comment_modified_on?: string

When the record comment was last modified. Omitted if there is no comment.

formatdate-time
tags_modified_on?: string

When the record tags were last modified. Omitted if there are no tags.

formatdate-time

DNSSettings

DNSSettingsZone

Show DNS Settings
client.dns.settings.zone.get(ZoneGetParams { zone_id } params, RequestOptionsoptions?): ZoneGetResponse { flatten_all_cnames, foundation_dns, internal_dns, 6 more }
GET/zones/{zone_id}/dns_settings
Update DNS Settings
client.dns.settings.zone.edit(ZoneEditParams { zone_id, flatten_all_cnames, foundation_dns, 7 more } params, RequestOptionsoptions?): ZoneEditResponse { flatten_all_cnames, foundation_dns, internal_dns, 6 more }
PATCH/zones/{zone_id}/dns_settings
ModelsExpand Collapse
ZoneGetResponse { flatten_all_cnames, foundation_dns, internal_dns, 6 more }
flatten_all_cnames: boolean

Whether to flatten all CNAME records in the zone. Note that, due to DNS limitations, a CNAME record at the zone apex will always be flattened.

foundation_dns: boolean

Whether to enable Foundation DNS Advanced Nameservers on the zone.

internal_dns: InternalDNS { reference_zone_id }

Settings for this internal zone.

reference_zone_id?: string

The ID of the zone to fallback to.

multi_provider: boolean

Whether to enable multi-provider DNS, which causes Cloudflare to activate the zone even when non-Cloudflare NS records exist, and to respect NS records at the zone apex during outbound zone transfers.

nameservers: Nameservers { type, ns_set }

Settings determining the nameservers through which the zone should be available.

type: "cloudflare.standard" | "custom.account" | "custom.tenant" | "custom.zone"

Nameserver type

One of the following:
"cloudflare.standard"
"custom.account"
"custom.tenant"
"custom.zone"
ns_set?: number

Configured nameserver set to be used for this zone

maximum5
minimum1
ns_ttl: number

The time to live (TTL) of the zone's nameserver (NS) records.

maximum86400
minimum30
secondary_overrides: boolean

Allows a Secondary DNS zone to use (proxied) override records and CNAME flattening at the zone apex.

soa: SOA { expire, min_ttl, mname, 4 more }

Components of the zone's SOA record.

expire?: number

Time in seconds of being unable to query the primary server after which secondary servers should stop serving the zone.

maximum2419200
minimum86400
min_ttl?: number

The time to live (TTL) for negative caching of records within the zone.

maximum86400
minimum60
mname?: string | null

The primary nameserver, which may be used for outbound zone transfers. If null, a Cloudflare-assigned value will be used.

refresh?: number

Time in seconds after which secondary servers should re-check the SOA record to see if the zone has been updated.

maximum86400
minimum600
retry?: number

Time in seconds after which secondary servers should retry queries after the primary server was unresponsive.

maximum86400
minimum600
rname?: string

The email address of the zone administrator, with the first label representing the local part of the email address.

ttl?: number

The time to live (TTL) of the SOA record itself.

maximum86400
minimum300
zone_mode: "standard" | "cdn_only" | "dns_only"

Whether the zone mode is a regular or CDN/DNS only zone.

One of the following:
"standard"
"cdn_only"
"dns_only"
ZoneEditResponse { flatten_all_cnames, foundation_dns, internal_dns, 6 more }
flatten_all_cnames: boolean

Whether to flatten all CNAME records in the zone. Note that, due to DNS limitations, a CNAME record at the zone apex will always be flattened.

foundation_dns: boolean

Whether to enable Foundation DNS Advanced Nameservers on the zone.

internal_dns: InternalDNS { reference_zone_id }

Settings for this internal zone.

reference_zone_id?: string

The ID of the zone to fallback to.

multi_provider: boolean

Whether to enable multi-provider DNS, which causes Cloudflare to activate the zone even when non-Cloudflare NS records exist, and to respect NS records at the zone apex during outbound zone transfers.

nameservers: Nameservers { type, ns_set }

Settings determining the nameservers through which the zone should be available.

type: "cloudflare.standard" | "custom.account" | "custom.tenant" | "custom.zone"

Nameserver type

One of the following:
"cloudflare.standard"
"custom.account"
"custom.tenant"
"custom.zone"
ns_set?: number

Configured nameserver set to be used for this zone

maximum5
minimum1
ns_ttl: number

The time to live (TTL) of the zone's nameserver (NS) records.

maximum86400
minimum30
secondary_overrides: boolean

Allows a Secondary DNS zone to use (proxied) override records and CNAME flattening at the zone apex.

soa: SOA { expire, min_ttl, mname, 4 more }

Components of the zone's SOA record.

expire?: number

Time in seconds of being unable to query the primary server after which secondary servers should stop serving the zone.

maximum2419200
minimum86400
min_ttl?: number

The time to live (TTL) for negative caching of records within the zone.

maximum86400
minimum60
mname?: string | null

The primary nameserver, which may be used for outbound zone transfers. If null, a Cloudflare-assigned value will be used.

refresh?: number

Time in seconds after which secondary servers should re-check the SOA record to see if the zone has been updated.

maximum86400
minimum600
retry?: number

Time in seconds after which secondary servers should retry queries after the primary server was unresponsive.

maximum86400
minimum600
rname?: string

The email address of the zone administrator, with the first label representing the local part of the email address.

ttl?: number

The time to live (TTL) of the SOA record itself.

maximum86400
minimum300
zone_mode: "standard" | "cdn_only" | "dns_only"

Whether the zone mode is a regular or CDN/DNS only zone.

One of the following:
"standard"
"cdn_only"
"dns_only"

DNSSettingsAccount

Show DNS Settings
client.dns.settings.account.get(AccountGetParams { account_id } params, RequestOptionsoptions?): AccountGetResponse { zone_defaults }
GET/accounts/{account_id}/dns_settings
Update DNS Settings
client.dns.settings.account.edit(AccountEditParams { account_id, zone_defaults } params, RequestOptionsoptions?): AccountEditResponse { zone_defaults }
PATCH/accounts/{account_id}/dns_settings
ModelsExpand Collapse
AccountGetResponse { zone_defaults }
zone_defaults: ZoneDefaults { flatten_all_cnames, foundation_dns, internal_dns, 6 more }
flatten_all_cnames: boolean

Whether to flatten all CNAME records in the zone. Note that, due to DNS limitations, a CNAME record at the zone apex will always be flattened.

foundation_dns: boolean

Whether to enable Foundation DNS Advanced Nameservers on the zone.

internal_dns: InternalDNS { reference_zone_id }

Settings for this internal zone.

reference_zone_id?: string

The ID of the zone to fallback to.

multi_provider: boolean

Whether to enable multi-provider DNS, which causes Cloudflare to activate the zone even when non-Cloudflare NS records exist, and to respect NS records at the zone apex during outbound zone transfers.

nameservers: Nameservers { type }

Settings determining the nameservers through which the zone should be available.

type: "cloudflare.standard" | "cloudflare.standard.random" | "custom.account" | "custom.tenant"

Nameserver type

One of the following:
"cloudflare.standard"
"cloudflare.standard.random"
"custom.account"
"custom.tenant"
ns_ttl: number

The time to live (TTL) of the zone's nameserver (NS) records.

maximum86400
minimum30
secondary_overrides: boolean

Allows a Secondary DNS zone to use (proxied) override records and CNAME flattening at the zone apex.

soa: SOA { expire, min_ttl, mname, 4 more }

Components of the zone's SOA record.

expire?: number

Time in seconds of being unable to query the primary server after which secondary servers should stop serving the zone.

maximum2419200
minimum86400
min_ttl?: number

The time to live (TTL) for negative caching of records within the zone.

maximum86400
minimum60
mname?: string | null

The primary nameserver, which may be used for outbound zone transfers. If null, a Cloudflare-assigned value will be used.

refresh?: number

Time in seconds after which secondary servers should re-check the SOA record to see if the zone has been updated.

maximum86400
minimum600
retry?: number

Time in seconds after which secondary servers should retry queries after the primary server was unresponsive.

maximum86400
minimum600
rname?: string

The email address of the zone administrator, with the first label representing the local part of the email address.

ttl?: number

The time to live (TTL) of the SOA record itself.

maximum86400
minimum300
zone_mode: "standard" | "cdn_only" | "dns_only"

Whether the zone mode is a regular or CDN/DNS only zone.

One of the following:
"standard"
"cdn_only"
"dns_only"
AccountEditResponse { zone_defaults }
zone_defaults: ZoneDefaults { flatten_all_cnames, foundation_dns, internal_dns, 6 more }
flatten_all_cnames: boolean

Whether to flatten all CNAME records in the zone. Note that, due to DNS limitations, a CNAME record at the zone apex will always be flattened.

foundation_dns: boolean

Whether to enable Foundation DNS Advanced Nameservers on the zone.

internal_dns: InternalDNS { reference_zone_id }

Settings for this internal zone.

reference_zone_id?: string

The ID of the zone to fallback to.

multi_provider: boolean

Whether to enable multi-provider DNS, which causes Cloudflare to activate the zone even when non-Cloudflare NS records exist, and to respect NS records at the zone apex during outbound zone transfers.

nameservers: Nameservers { type }

Settings determining the nameservers through which the zone should be available.

type: "cloudflare.standard" | "cloudflare.standard.random" | "custom.account" | "custom.tenant"

Nameserver type

One of the following:
"cloudflare.standard"
"cloudflare.standard.random"
"custom.account"
"custom.tenant"
ns_ttl: number

The time to live (TTL) of the zone's nameserver (NS) records.

maximum86400
minimum30
secondary_overrides: boolean

Allows a Secondary DNS zone to use (proxied) override records and CNAME flattening at the zone apex.

soa: SOA { expire, min_ttl, mname, 4 more }

Components of the zone's SOA record.

expire?: number

Time in seconds of being unable to query the primary server after which secondary servers should stop serving the zone.

maximum2419200
minimum86400
min_ttl?: number

The time to live (TTL) for negative caching of records within the zone.

maximum86400
minimum60
mname?: string | null

The primary nameserver, which may be used for outbound zone transfers. If null, a Cloudflare-assigned value will be used.

refresh?: number

Time in seconds after which secondary servers should re-check the SOA record to see if the zone has been updated.

maximum86400
minimum600
retry?: number

Time in seconds after which secondary servers should retry queries after the primary server was unresponsive.

maximum86400
minimum600
rname?: string

The email address of the zone administrator, with the first label representing the local part of the email address.

ttl?: number

The time to live (TTL) of the SOA record itself.

maximum86400
minimum300
zone_mode: "standard" | "cdn_only" | "dns_only"

Whether the zone mode is a regular or CDN/DNS only zone.

One of the following:
"standard"
"cdn_only"
"dns_only"

DNSSettingsAccountViews

List Internal DNS Views
client.dns.settings.account.views.list(ViewListParams { account_id, direction, match, 6 more } params, RequestOptionsoptions?): V4PagePaginationArray<ViewListResponse { id, created_time, modified_time, 2 more } >
GET/accounts/{account_id}/dns_settings/views
DNS Internal View Details
client.dns.settings.account.views.get(stringviewId, ViewGetParams { account_id } params, RequestOptionsoptions?): ViewGetResponse { id, created_time, modified_time, 2 more }
GET/accounts/{account_id}/dns_settings/views/{view_id}
Create Internal DNS View
client.dns.settings.account.views.create(ViewCreateParams { account_id, name, zones } params, RequestOptionsoptions?): ViewCreateResponse { id, created_time, modified_time, 2 more }
POST/accounts/{account_id}/dns_settings/views
Update Internal DNS View
client.dns.settings.account.views.edit(stringviewId, ViewEditParams { account_id, name, zones } params, RequestOptionsoptions?): ViewEditResponse { id, created_time, modified_time, 2 more }
PATCH/accounts/{account_id}/dns_settings/views/{view_id}
Delete Internal DNS View
client.dns.settings.account.views.delete(stringviewId, ViewDeleteParams { account_id } params, RequestOptionsoptions?): ViewDeleteResponse { id }
DELETE/accounts/{account_id}/dns_settings/views/{view_id}
ModelsExpand Collapse
ViewListResponse { id, created_time, modified_time, 2 more }
id: string

Identifier.

maxLength32
created_time: string

When the view was created.

formatdate-time
modified_time: string

When the view was last modified.

formatdate-time
name: string

The name of the view.

maxLength255
minLength1
zones: Array<string>

The list of zones linked to this view.

ViewGetResponse { id, created_time, modified_time, 2 more }
id: string

Identifier.

maxLength32
created_time: string

When the view was created.

formatdate-time
modified_time: string

When the view was last modified.

formatdate-time
name: string

The name of the view.

maxLength255
minLength1
zones: Array<string>

The list of zones linked to this view.

ViewCreateResponse { id, created_time, modified_time, 2 more }
id: string

Identifier.

maxLength32
created_time: string

When the view was created.

formatdate-time
modified_time: string

When the view was last modified.

formatdate-time
name: string

The name of the view.

maxLength255
minLength1
zones: Array<string>

The list of zones linked to this view.

ViewEditResponse { id, created_time, modified_time, 2 more }
id: string

Identifier.

maxLength32
created_time: string

When the view was created.

formatdate-time
modified_time: string

When the view was last modified.

formatdate-time
name: string

The name of the view.

maxLength255
minLength1
zones: Array<string>

The list of zones linked to this view.

ViewDeleteResponse { id }
id?: string

Identifier.

maxLength32

DNSAnalytics

DNSAnalyticsReports

Table
client.dns.analytics.reports.get(ReportGetParams { zone_id, dimensions, filters, 5 more } params, RequestOptionsoptions?): Report { data, data_lag, max, 4 more }
GET/zones/{zone_id}/dns_analytics/report
ModelsExpand Collapse
Report { data, data_lag, max, 4 more }
data: Array<Data>

Array with one row per combination of dimension values.

dimensions: Array<string>

Array of dimension values, representing the combination of dimension values corresponding to this row.

metrics: Array<number>

Array with one item per requested metric. Each item is a single value.

data_lag: number

Number of seconds between current time and last processed event, in another words how many seconds of data could be missing.

minimum0
max: unknown

Maximum results for each metric (object mapping metric names to values). Currently always an empty object.

min: unknown

Minimum results for each metric (object mapping metric names to values). Currently always an empty object.

query: Query { dimensions, limit, metrics, 4 more }
dimensions: Array<string>

Array of dimension names.

limit: number

Limit number of returned metrics.

metrics: Array<string>

Array of metric names.

since: string

Start date and time of requesting data period in ISO 8601 format.

formatdate-time
until: string

End date and time of requesting data period in ISO 8601 format.

formatdate-time
filters?: string

Segmentation filter in 'attribute operator value' format.

sort?: Array<string>

Array of dimensions to sort by, where each dimension may be prefixed by - (descending) or + (ascending).

rows: number

Total number of rows in the result.

minimum0
totals: unknown

Total results for metrics across all data (object mapping metric names to values).

DNSAnalyticsReportsBytimes

By Time
client.dns.analytics.reports.bytimes.get(BytimeGetParams { zone_id, dimensions, filters, 6 more } params, RequestOptionsoptions?): ByTime { data, data_lag, max, 5 more }
GET/zones/{zone_id}/dns_analytics/report/bytime
ModelsExpand Collapse
ByTime { data, data_lag, max, 5 more }
data: Array<Data>

Array with one row per combination of dimension values.

dimensions: Array<string>

Array of dimension values, representing the combination of dimension values corresponding to this row.

metrics: Array<Array<number>>

Array with one item per requested metric. Each item is an array of values, broken down by time interval.

data_lag: number

Number of seconds between current time and last processed event, in another words how many seconds of data could be missing.

minimum0
max: unknown

Maximum results for each metric (object mapping metric names to values). Currently always an empty object.

min: unknown

Minimum results for each metric (object mapping metric names to values). Currently always an empty object.

query: Query { dimensions, limit, metrics, 5 more }
dimensions: Array<string>

Array of dimension names.

limit: number

Limit number of returned metrics.

metrics: Array<string>

Array of metric names.

since: string

Start date and time of requesting data period in ISO 8601 format.

formatdate-time
time_delta: "all" | "auto" | "year" | 7 more

Unit of time to group data by.

One of the following:
"all"
"auto"
"year"
"quarter"
"month"
"week"
"day"
"hour"
"dekaminute"
"minute"
until: string

End date and time of requesting data period in ISO 8601 format.

formatdate-time
filters?: string

Segmentation filter in 'attribute operator value' format.

sort?: Array<string>

Array of dimensions to sort by, where each dimension may be prefixed by - (descending) or + (ascending).

rows: number

Total number of rows in the result.

minimum0
time_intervals: Array<Array<string>>

Array of time intervals in the response data. Each interval is represented as an array containing two values: the start time, and the end time.

totals: unknown

Total results for metrics across all data (object mapping metric names to values).

DNSZone Transfers

DNSZone TransfersForce AXFR

Force AXFR
client.dns.zoneTransfers.forceAXFR.create(ForceAXFRCreateParams { zone_id, body } params, RequestOptionsoptions?): ForceAXFR
POST/zones/{zone_id}/secondary_dns/force_axfr
ModelsExpand Collapse
ForceAXFR = string

When force_axfr query parameter is set to true, the response is a simple string.

DNSZone TransfersIncoming

Secondary Zone Configuration Details
client.dns.zoneTransfers.incoming.get(IncomingGetParams { zone_id } params, RequestOptionsoptions?): IncomingGetResponse { id, auto_refresh_seconds, checked_time, 5 more }
GET/zones/{zone_id}/secondary_dns/incoming
Create Secondary Zone Configuration
client.dns.zoneTransfers.incoming.create(IncomingCreateParams { zone_id, auto_refresh_seconds, name, peers } params, RequestOptionsoptions?): IncomingCreateResponse { id, auto_refresh_seconds, checked_time, 5 more }
POST/zones/{zone_id}/secondary_dns/incoming
Update Secondary Zone Configuration
client.dns.zoneTransfers.incoming.update(IncomingUpdateParams { zone_id, auto_refresh_seconds, name, peers } params, RequestOptionsoptions?): IncomingUpdateResponse { id, auto_refresh_seconds, checked_time, 5 more }
PUT/zones/{zone_id}/secondary_dns/incoming
Delete Secondary Zone Configuration
client.dns.zoneTransfers.incoming.delete(IncomingDeleteParams { zone_id } params, RequestOptionsoptions?): IncomingDeleteResponse { id }
DELETE/zones/{zone_id}/secondary_dns/incoming
ModelsExpand Collapse
Incoming { id, auto_refresh_seconds, checked_time, 5 more }
id?: string
auto_refresh_seconds?: number

How often should a secondary zone auto refresh regardless of DNS NOTIFY. Not applicable for primary zones.

minimum300
checked_time?: string

The time for a specific event.

created_time?: string

The time for a specific event.

modified_time?: string

The time for a specific event.

name?: string

Zone name.

peers?: Array<string>

A list of peer tags.

soa_serial?: number

The serial number of the SOA for the given zone.

IncomingGetResponse { id, auto_refresh_seconds, checked_time, 5 more }
id?: string
auto_refresh_seconds?: number

How often should a secondary zone auto refresh regardless of DNS NOTIFY. Not applicable for primary zones.

minimum300
checked_time?: string

The time for a specific event.

created_time?: string

The time for a specific event.

modified_time?: string

The time for a specific event.

name?: string

Zone name.

peers?: Array<string>

A list of peer tags.

soa_serial?: number

The serial number of the SOA for the given zone.

IncomingCreateResponse { id, auto_refresh_seconds, checked_time, 5 more }
id?: string
auto_refresh_seconds?: number

How often should a secondary zone auto refresh regardless of DNS NOTIFY. Not applicable for primary zones.

minimum300
checked_time?: string

The time for a specific event.

created_time?: string

The time for a specific event.

modified_time?: string

The time for a specific event.

name?: string

Zone name.

peers?: Array<string>

A list of peer tags.

soa_serial?: number

The serial number of the SOA for the given zone.

IncomingUpdateResponse { id, auto_refresh_seconds, checked_time, 5 more }
id?: string
auto_refresh_seconds?: number

How often should a secondary zone auto refresh regardless of DNS NOTIFY. Not applicable for primary zones.

minimum300
checked_time?: string

The time for a specific event.

created_time?: string

The time for a specific event.

modified_time?: string

The time for a specific event.

name?: string

Zone name.

peers?: Array<string>

A list of peer tags.

soa_serial?: number

The serial number of the SOA for the given zone.

IncomingDeleteResponse { id }
id?: string

DNSZone TransfersOutgoing

Primary Zone Configuration Details
client.dns.zoneTransfers.outgoing.get(OutgoingGetParams { zone_id } params, RequestOptionsoptions?): OutgoingGetResponse { id, checked_time, created_time, 4 more }
GET/zones/{zone_id}/secondary_dns/outgoing
Create Primary Zone Configuration
client.dns.zoneTransfers.outgoing.create(OutgoingCreateParams { zone_id, name, peers } params, RequestOptionsoptions?): OutgoingCreateResponse { id, checked_time, created_time, 4 more }
POST/zones/{zone_id}/secondary_dns/outgoing
Update Primary Zone Configuration
client.dns.zoneTransfers.outgoing.update(OutgoingUpdateParams { zone_id, name, peers } params, RequestOptionsoptions?): OutgoingUpdateResponse { id, checked_time, created_time, 4 more }
PUT/zones/{zone_id}/secondary_dns/outgoing
Delete Primary Zone Configuration
client.dns.zoneTransfers.outgoing.delete(OutgoingDeleteParams { zone_id } params, RequestOptionsoptions?): OutgoingDeleteResponse { id }
DELETE/zones/{zone_id}/secondary_dns/outgoing
Disable Outgoing Zone Transfers
client.dns.zoneTransfers.outgoing.disable(OutgoingDisableParams { zone_id, body } params, RequestOptionsoptions?): DisableTransfer
POST/zones/{zone_id}/secondary_dns/outgoing/disable
Enable Outgoing Zone Transfers
client.dns.zoneTransfers.outgoing.enable(OutgoingEnableParams { zone_id, body } params, RequestOptionsoptions?): EnableTransfer
POST/zones/{zone_id}/secondary_dns/outgoing/enable
Force DNS NOTIFY
client.dns.zoneTransfers.outgoing.forceNotify(OutgoingForceNotifyParams { zone_id, body } params, RequestOptionsoptions?): OutgoingForceNotifyResponse
POST/zones/{zone_id}/secondary_dns/outgoing/force_notify
ModelsExpand Collapse
DisableTransfer = string

The zone transfer status of a primary zone.

EnableTransfer = string

The zone transfer status of a primary zone.

Outgoing { id, checked_time, created_time, 4 more }
id?: string
checked_time?: string

The time for a specific event.

created_time?: string

The time for a specific event.

last_transferred_time?: string

The time for a specific event.

name?: string

Zone name.

peers?: Array<string>

A list of peer tags.

soa_serial?: number

The serial number of the SOA for the given zone.

OutgoingStatus = string | null

The zone transfer status of a primary zone.

OutgoingGetResponse { id, checked_time, created_time, 4 more }
id?: string
checked_time?: string

The time for a specific event.

created_time?: string

The time for a specific event.

last_transferred_time?: string

The time for a specific event.

name?: string

Zone name.

peers?: Array<string>

A list of peer tags.

soa_serial?: number

The serial number of the SOA for the given zone.

OutgoingCreateResponse { id, checked_time, created_time, 4 more }
id?: string
checked_time?: string

The time for a specific event.

created_time?: string

The time for a specific event.

last_transferred_time?: string

The time for a specific event.

name?: string

Zone name.

peers?: Array<string>

A list of peer tags.

soa_serial?: number

The serial number of the SOA for the given zone.

OutgoingUpdateResponse { id, checked_time, created_time, 4 more }
id?: string
checked_time?: string

The time for a specific event.

created_time?: string

The time for a specific event.

last_transferred_time?: string

The time for a specific event.

name?: string

Zone name.

peers?: Array<string>

A list of peer tags.

soa_serial?: number

The serial number of the SOA for the given zone.

OutgoingDeleteResponse { id }
id?: string
OutgoingForceNotifyResponse = string

When force_notify query parameter is set to true, the response is a simple string.

DNSZone TransfersOutgoingStatus

Get Outgoing Zone Transfer Status
client.dns.zoneTransfers.outgoing.status.get(StatusGetParams { zone_id } params, RequestOptionsoptions?): EnableTransfer
GET/zones/{zone_id}/secondary_dns/outgoing/status

DNSZone TransfersACLs

List ACLs
client.dns.zoneTransfers.acls.list(ACLListParams { account_id } params, RequestOptionsoptions?): SinglePage<ACL { id, ip_range, name } >
GET/accounts/{account_id}/secondary_dns/acls
ACL Details
client.dns.zoneTransfers.acls.get(stringaclId, ACLGetParams { account_id } params, RequestOptionsoptions?): ACL { id, ip_range, name }
GET/accounts/{account_id}/secondary_dns/acls/{acl_id}
Create ACL
client.dns.zoneTransfers.acls.create(ACLCreateParams { account_id, ip_range, name } params, RequestOptionsoptions?): ACL { id, ip_range, name }
POST/accounts/{account_id}/secondary_dns/acls
Update ACL
client.dns.zoneTransfers.acls.update(stringaclId, ACLUpdateParams { account_id, ip_range, name } params, RequestOptionsoptions?): ACL { id, ip_range, name }
PUT/accounts/{account_id}/secondary_dns/acls/{acl_id}
Delete ACL
client.dns.zoneTransfers.acls.delete(stringaclId, ACLDeleteParams { account_id } params, RequestOptionsoptions?): ACLDeleteResponse { id }
DELETE/accounts/{account_id}/secondary_dns/acls/{acl_id}
ModelsExpand Collapse
ACL { id, ip_range, name }
id: string
ip_range: string

Allowed IPv4/IPv6 address range of primary or secondary nameservers. This will be applied for the entire account. The IP range is used to allow additional NOTIFY IPs for secondary zones and IPs Cloudflare allows AXFR/IXFR requests from for primary zones. CIDRs are limited to a maximum of /24 for IPv4 and /64 for IPv6 respectively.

name: string

The name of the acl.

ACLDeleteResponse { id }
id?: string

DNSZone TransfersPeers

List Peers
client.dns.zoneTransfers.peers.list(PeerListParams { account_id } params, RequestOptionsoptions?): SinglePage<Peer { id, name, ip, 3 more } >
GET/accounts/{account_id}/secondary_dns/peers
Peer Details
client.dns.zoneTransfers.peers.get(stringpeerId, PeerGetParams { account_id } params, RequestOptionsoptions?): Peer { id, name, ip, 3 more }
GET/accounts/{account_id}/secondary_dns/peers/{peer_id}
Create Peer
client.dns.zoneTransfers.peers.create(PeerCreateParams { account_id, name } params, RequestOptionsoptions?): Peer { id, name, ip, 3 more }
POST/accounts/{account_id}/secondary_dns/peers
Update Peer
client.dns.zoneTransfers.peers.update(stringpeerId, PeerUpdateParams { account_id, name, ip, 3 more } params, RequestOptionsoptions?): Peer { id, name, ip, 3 more }
PUT/accounts/{account_id}/secondary_dns/peers/{peer_id}
Delete Peer
client.dns.zoneTransfers.peers.delete(stringpeerId, PeerDeleteParams { account_id } params, RequestOptionsoptions?): PeerDeleteResponse { id }
DELETE/accounts/{account_id}/secondary_dns/peers/{peer_id}
ModelsExpand Collapse
Peer { id, name, ip, 3 more }
id: string
name: string

The name of the peer.

ip?: string

IPv4/IPv6 address of primary or secondary nameserver, depending on what zone this peer is linked to. For primary zones this IP defines the IP of the secondary nameserver Cloudflare will NOTIFY upon zone changes. For secondary zones this IP defines the IP of the primary nameserver Cloudflare will send AXFR/IXFR requests to.

ixfr_enable?: boolean

Enable IXFR transfer protocol, default is AXFR. Only applicable to secondary zones.

port?: number

DNS port of primary or secondary nameserver, depending on what zone this peer is linked to.

tsig_id?: string

TSIG authentication will be used for zone transfer if configured.

PeerDeleteResponse { id }
id?: string

DNSZone TransfersTSIGs

List TSIGs
client.dns.zoneTransfers.tsigs.list(TSIGListParams { account_id } params, RequestOptionsoptions?): SinglePage<TSIG { id, algo, name, secret } >
GET/accounts/{account_id}/secondary_dns/tsigs
TSIG Details
client.dns.zoneTransfers.tsigs.get(stringtsigId, TSIGGetParams { account_id } params, RequestOptionsoptions?): TSIG { id, algo, name, secret }
GET/accounts/{account_id}/secondary_dns/tsigs/{tsig_id}
Create TSIG
client.dns.zoneTransfers.tsigs.create(TSIGCreateParams { account_id, algo, name, secret } params, RequestOptionsoptions?): TSIG { id, algo, name, secret }
POST/accounts/{account_id}/secondary_dns/tsigs
Update TSIG
client.dns.zoneTransfers.tsigs.update(stringtsigId, TSIGUpdateParams { account_id, algo, name, secret } params, RequestOptionsoptions?): TSIG { id, algo, name, secret }
PUT/accounts/{account_id}/secondary_dns/tsigs/{tsig_id}
Delete TSIG
client.dns.zoneTransfers.tsigs.delete(stringtsigId, TSIGDeleteParams { account_id } params, RequestOptionsoptions?): TSIGDeleteResponse { id }
DELETE/accounts/{account_id}/secondary_dns/tsigs/{tsig_id}
ModelsExpand Collapse
TSIG { id, algo, name, secret }
id: string
algo: string

TSIG algorithm.

name: string

TSIG key name.

secret: string

TSIG secret.

TSIGDeleteResponse { id }
id?: string