Skip to content
Start here

Zone Transfers

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

Zone 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

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

Zone 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

Zone 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

Zone 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

Zone 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