Skip to content
Start here

Addressing

AddressingRegional Hostnames

List Regional Hostnames
client.addressing.regionalHostnames.list(RegionalHostnameListParams { zone_id } params, RequestOptionsoptions?): SinglePage<RegionalHostnameListResponse { created_on, hostname, region_key, routing } >
GET/zones/{zone_id}/addressing/regional_hostnames
Fetch Regional Hostname
client.addressing.regionalHostnames.get(stringhostname, RegionalHostnameGetParams { zone_id } params, RequestOptionsoptions?): RegionalHostnameGetResponse { created_on, hostname, region_key, routing }
GET/zones/{zone_id}/addressing/regional_hostnames/{hostname}
Create Regional Hostname
client.addressing.regionalHostnames.create(RegionalHostnameCreateParams { zone_id, hostname, region_key, routing } params, RequestOptionsoptions?): RegionalHostnameCreateResponse { created_on, hostname, region_key, routing }
POST/zones/{zone_id}/addressing/regional_hostnames
Update Regional Hostname
client.addressing.regionalHostnames.edit(stringhostname, RegionalHostnameEditParams { zone_id, region_key } params, RequestOptionsoptions?): RegionalHostnameEditResponse { created_on, hostname, region_key, routing }
PATCH/zones/{zone_id}/addressing/regional_hostnames/{hostname}
Delete Regional Hostname
client.addressing.regionalHostnames.delete(stringhostname, RegionalHostnameDeleteParams { zone_id } params, RequestOptionsoptions?): RegionalHostnameDeleteResponse { errors, messages, success }
DELETE/zones/{zone_id}/addressing/regional_hostnames/{hostname}
ModelsExpand Collapse
RegionalHostnameListResponse { created_on, hostname, region_key, routing }
created_on: string

When the regional hostname was created

formatdate-time
hostname: string

DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g *.example.com

region_key: string

Identifying key for the region

routing?: string

Configure which routing method to use for the regional hostname

RegionalHostnameGetResponse { created_on, hostname, region_key, routing }
created_on: string

When the regional hostname was created

formatdate-time
hostname: string

DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g *.example.com

region_key: string

Identifying key for the region

routing?: string

Configure which routing method to use for the regional hostname

RegionalHostnameCreateResponse { created_on, hostname, region_key, routing }
created_on: string

When the regional hostname was created

formatdate-time
hostname: string

DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g *.example.com

region_key: string

Identifying key for the region

routing?: string

Configure which routing method to use for the regional hostname

RegionalHostnameEditResponse { created_on, hostname, region_key, routing }
created_on: string

When the regional hostname was created

formatdate-time
hostname: string

DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g *.example.com

region_key: string

Identifying key for the region

routing?: string

Configure which routing method to use for the regional hostname

RegionalHostnameDeleteResponse { 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.

AddressingRegional HostnamesRegions

List Regions
client.addressing.regionalHostnames.regions.list(RegionListParams { account_id } params, RequestOptionsoptions?): SinglePage<RegionListResponse { key, label } >
GET/accounts/{account_id}/addressing/regional_hostnames/regions
ModelsExpand Collapse
RegionListResponse { key, label }
key?: string

Identifying key for the region

label?: string

Human-readable text label for the region

AddressingServices

List Services
client.addressing.services.list(ServiceListParams { account_id } params, RequestOptionsoptions?): SinglePage<ServiceListResponse { id, name } >
GET/accounts/{account_id}/addressing/services
ModelsExpand Collapse
ServiceListResponse { id, name }
id?: string

Identifier of a Service on the Cloudflare network. Available services and their IDs may be found in the List Services endpoint.

maxLength32
name?: string

Name of a service running on the Cloudflare network

AddressingAddress Maps

List Address Maps
client.addressing.addressMaps.list(AddressMapListParams { account_id } params, RequestOptionsoptions?): SinglePage<AddressMap { id, can_delete, can_modify_ips, 5 more } >
GET/accounts/{account_id}/addressing/address_maps
Address Map Details
client.addressing.addressMaps.get(stringaddressMapId, AddressMapGetParams { account_id } params, RequestOptionsoptions?): AddressMapGetResponse { id, can_delete, can_modify_ips, 7 more }
GET/accounts/{account_id}/addressing/address_maps/{address_map_id}
Create Address Map
client.addressing.addressMaps.create(AddressMapCreateParams { account_id, description, enabled, 2 more } params, RequestOptionsoptions?): AddressMapCreateResponse { id, can_delete, can_modify_ips, 7 more }
POST/accounts/{account_id}/addressing/address_maps
Update Address Map
client.addressing.addressMaps.edit(stringaddressMapId, AddressMapEditParams { account_id, default_sni, description, enabled } params, RequestOptionsoptions?): AddressMap { id, can_delete, can_modify_ips, 5 more }
PATCH/accounts/{account_id}/addressing/address_maps/{address_map_id}
Delete Address Map
client.addressing.addressMaps.delete(stringaddressMapId, AddressMapDeleteParams { account_id } params, RequestOptionsoptions?): AddressMapDeleteResponse { errors, messages, success, result_info }
DELETE/accounts/{account_id}/addressing/address_maps/{address_map_id}
ModelsExpand Collapse
AddressMap { id, can_delete, can_modify_ips, 5 more }
id?: string

Identifier of an Address Map.

maxLength32
can_delete?: boolean

If set to false, then the Address Map cannot be deleted via API. This is true for Cloudflare-managed maps.

can_modify_ips?: boolean

If set to false, then the IPs on the Address Map cannot be modified via the API. This is true for Cloudflare-managed maps.

created_at?: string
formatdate-time
default_sni?: string | null

If you have legacy TLS clients which do not send the TLS server name indicator, then you can specify one default SNI on the map. If Cloudflare receives a TLS handshake from a client without an SNI, it will respond with the default SNI on those IPs. The default SNI can be any valid zone or subdomain owned by the account.

description?: string | null

An optional description field which may be used to describe the types of IPs or zones on the map.

enabled?: boolean | null

Whether the Address Map is enabled or not. Cloudflare's DNS will not respond with IP addresses on an Address Map until the map is enabled.

modified_at?: string
formatdate-time
Kind = "zone" | "account"

The type of the membership.

One of the following:
"zone"
"account"
AddressMapGetResponse { id, can_delete, can_modify_ips, 7 more }
id?: string

Identifier of an Address Map.

maxLength32
can_delete?: boolean

If set to false, then the Address Map cannot be deleted via API. This is true for Cloudflare-managed maps.

can_modify_ips?: boolean

If set to false, then the IPs on the Address Map cannot be modified via the API. This is true for Cloudflare-managed maps.

created_at?: string
formatdate-time
default_sni?: string | null

If you have legacy TLS clients which do not send the TLS server name indicator, then you can specify one default SNI on the map. If Cloudflare receives a TLS handshake from a client without an SNI, it will respond with the default SNI on those IPs. The default SNI can be any valid zone or subdomain owned by the account.

description?: string | null

An optional description field which may be used to describe the types of IPs or zones on the map.

enabled?: boolean | null

Whether the Address Map is enabled or not. Cloudflare's DNS will not respond with IP addresses on an Address Map until the map is enabled.

ips?: IPsArray { created_at, ip }

The set of IPs on the Address Map.

memberships?: Array<Membership>

Zones and Accounts which will be assigned IPs on this Address Map. A zone membership will take priority over an account membership.

can_delete?: boolean

Controls whether the membership can be deleted via the API or not.

created_at?: string
formatdate-time
identifier?: string

The identifier for the membership (eg. a zone or account tag).

maxLength32
kind?: Kind

The type of the membership.

modified_at?: string
formatdate-time
AddressMapCreateResponse { id, can_delete, can_modify_ips, 7 more }
id?: string

Identifier of an Address Map.

maxLength32
can_delete?: boolean

If set to false, then the Address Map cannot be deleted via API. This is true for Cloudflare-managed maps.

can_modify_ips?: boolean

If set to false, then the IPs on the Address Map cannot be modified via the API. This is true for Cloudflare-managed maps.

created_at?: string
formatdate-time
default_sni?: string | null

If you have legacy TLS clients which do not send the TLS server name indicator, then you can specify one default SNI on the map. If Cloudflare receives a TLS handshake from a client without an SNI, it will respond with the default SNI on those IPs. The default SNI can be any valid zone or subdomain owned by the account.

description?: string | null

An optional description field which may be used to describe the types of IPs or zones on the map.

enabled?: boolean | null

Whether the Address Map is enabled or not. Cloudflare's DNS will not respond with IP addresses on an Address Map until the map is enabled.

ips?: IPsArray { created_at, ip }

The set of IPs on the Address Map.

memberships?: Array<Membership>

Zones and Accounts which will be assigned IPs on this Address Map. A zone membership will take priority over an account membership.

can_delete?: boolean

Controls whether the membership can be deleted via the API or not.

created_at?: string
formatdate-time
identifier?: string

The identifier for the membership (eg. a zone or account tag).

maxLength32
kind?: Kind

The type of the membership.

modified_at?: string
formatdate-time
AddressMapDeleteResponse { errors, messages, success, result_info }
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.

result_info?: ResultInfo { count, page, per_page, total_count }
count?: number

Total number of results for the requested service.

page?: number

Current page within paginated list of results.

per_page?: number

Number of results per page of results.

total_count?: number

Total results available without any search parameters.

AddressingAddress MapsAccounts

Add an account membership to an Address Map
client.addressing.addressMaps.accounts.update(stringaddressMapId, AccountUpdateParams { account_id, body } params, RequestOptionsoptions?): AccountUpdateResponse { errors, messages, success, result_info }
PUT/accounts/{account_id}/addressing/address_maps/{address_map_id}/accounts/{account_id}
Remove an account membership from an Address Map
client.addressing.addressMaps.accounts.delete(stringaddressMapId, AccountDeleteParams { account_id } params, RequestOptionsoptions?): AccountDeleteResponse { errors, messages, success, result_info }
DELETE/accounts/{account_id}/addressing/address_maps/{address_map_id}/accounts/{account_id}
ModelsExpand Collapse
AccountUpdateResponse { errors, messages, success, result_info }
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.

result_info?: ResultInfo { count, page, per_page, total_count }
count?: number

Total number of results for the requested service.

page?: number

Current page within paginated list of results.

per_page?: number

Number of results per page of results.

total_count?: number

Total results available without any search parameters.

AccountDeleteResponse { errors, messages, success, result_info }
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.

result_info?: ResultInfo { count, page, per_page, total_count }
count?: number

Total number of results for the requested service.

page?: number

Current page within paginated list of results.

per_page?: number

Number of results per page of results.

total_count?: number

Total results available without any search parameters.

AddressingAddress MapsIPs

Add an IP to an Address Map
client.addressing.addressMaps.ips.update(stringaddressMapId, stringipAddress, IPUpdateParams { account_id, body } params, RequestOptionsoptions?): IPUpdateResponse { errors, messages, success, result_info }
PUT/accounts/{account_id}/addressing/address_maps/{address_map_id}/ips/{ip_address}
Remove an IP from an Address Map
client.addressing.addressMaps.ips.delete(stringaddressMapId, stringipAddress, IPDeleteParams { account_id } params, RequestOptionsoptions?): IPDeleteResponse { errors, messages, success, result_info }
DELETE/accounts/{account_id}/addressing/address_maps/{address_map_id}/ips/{ip_address}
ModelsExpand Collapse
IPUpdateResponse { errors, messages, success, result_info }
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.

result_info?: ResultInfo { count, page, per_page, total_count }
count?: number

Total number of results for the requested service.

page?: number

Current page within paginated list of results.

per_page?: number

Number of results per page of results.

total_count?: number

Total results available without any search parameters.

IPDeleteResponse { errors, messages, success, result_info }
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.

result_info?: ResultInfo { count, page, per_page, total_count }
count?: number

Total number of results for the requested service.

page?: number

Current page within paginated list of results.

per_page?: number

Number of results per page of results.

total_count?: number

Total results available without any search parameters.

AddressingAddress MapsZones

Add a zone membership to an Address Map
client.addressing.addressMaps.zones.update(stringaddressMapId, ZoneUpdateParams { zone_id, account_id, body } params, RequestOptionsoptions?): ZoneUpdateResponse { errors, messages, success, result_info }
PUT/accounts/{account_id}/addressing/address_maps/{address_map_id}/zones/{zone_id}
Remove a zone membership from an Address Map
client.addressing.addressMaps.zones.delete(stringaddressMapId, ZoneDeleteParams { zone_id, account_id } params, RequestOptionsoptions?): ZoneDeleteResponse { errors, messages, success, result_info }
DELETE/accounts/{account_id}/addressing/address_maps/{address_map_id}/zones/{zone_id}
ModelsExpand Collapse
ZoneUpdateResponse { errors, messages, success, result_info }
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.

result_info?: ResultInfo { count, page, per_page, total_count }
count?: number

Total number of results for the requested service.

page?: number

Current page within paginated list of results.

per_page?: number

Number of results per page of results.

total_count?: number

Total results available without any search parameters.

ZoneDeleteResponse { errors, messages, success, result_info }
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.

result_info?: ResultInfo { count, page, per_page, total_count }
count?: number

Total number of results for the requested service.

page?: number

Current page within paginated list of results.

per_page?: number

Number of results per page of results.

total_count?: number

Total results available without any search parameters.

AddressingLOA Documents

Download LOA Document
client.addressing.loaDocuments.get(stringloaDocumentId, LOADocumentGetParams { account_id } params, RequestOptionsoptions?): Response
GET/accounts/{account_id}/addressing/loa_documents/{loa_document_id}/download
Upload LOA Document
client.addressing.loaDocuments.create(LOADocumentCreateParams { account_id, loa_document } params, RequestOptionsoptions?): LOADocumentCreateResponse { id, account_id, auto_generated, 5 more }
POST/accounts/{account_id}/addressing/loa_documents
ModelsExpand Collapse
LOADocumentCreateResponse { id, account_id, auto_generated, 5 more }
id?: string | null

Identifier for the uploaded LOA document.

maxLength32
account_id?: string

Identifier of a Cloudflare account.

maxLength32
auto_generated?: boolean

Whether the LOA has been auto-generated for the prefix owner by Cloudflare.

created?: string
formatdate-time
filename?: string

Name of LOA document. Max file size 10MB, and supported filetype is pdf.

size_bytes?: number

File size of the uploaded LOA document.

verified?: boolean

Whether the LOA has been verified by Cloudflare staff.

verified_at?: string | null

Timestamp of the moment the LOA was marked as validated.

formatdate-time

AddressingPrefixes

List Prefixes
client.addressing.prefixes.list(PrefixListParams { account_id } params, RequestOptionsoptions?): SinglePage<Prefix { id, account_id, advertised, 15 more } >
GET/accounts/{account_id}/addressing/prefixes
Prefix Details
client.addressing.prefixes.get(stringprefixId, PrefixGetParams { account_id } params, RequestOptionsoptions?): Prefix { id, account_id, advertised, 15 more }
GET/accounts/{account_id}/addressing/prefixes/{prefix_id}
Add Prefix
client.addressing.prefixes.create(PrefixCreateParams { account_id, asn, cidr, 3 more } params, RequestOptionsoptions?): Prefix { id, account_id, advertised, 15 more }
POST/accounts/{account_id}/addressing/prefixes
Update Prefix Description
client.addressing.prefixes.edit(stringprefixId, PrefixEditParams { account_id, description } params, RequestOptionsoptions?): Prefix { id, account_id, advertised, 15 more }
PATCH/accounts/{account_id}/addressing/prefixes/{prefix_id}
Delete Prefix
client.addressing.prefixes.delete(stringprefixId, PrefixDeleteParams { account_id } params, RequestOptionsoptions?): PrefixDeleteResponse { errors, messages, success }
DELETE/accounts/{account_id}/addressing/prefixes/{prefix_id}
ModelsExpand Collapse
Prefix { id, account_id, advertised, 15 more }
id?: string

Identifier of an IP Prefix.

maxLength32
account_id?: string

Identifier of a Cloudflare account.

maxLength32
Deprecatedadvertised?: boolean | null
Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix.

Prefix advertisement status to the Internet. This field is only not 'null' if on demand is enabled.

Deprecatedadvertised_modified_at?: string | null
Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix.

Last time the advertisement status was changed. This field is only not 'null' if on demand is enabled.

formatdate-time
approved?: string

Approval state of the prefix (P = pending, V = active).

asn?: number

Autonomous System Number (ASN) the prefix will be advertised under.

cidr?: string

IP Prefix in Classless Inter-Domain Routing format.

created_at?: string
formatdate-time
delegate_loa_creation?: boolean

Whether Cloudflare is allowed to generate the LOA document on behalf of the prefix owner.

description?: string

Description of the prefix.

maxLength1000
irr_validation_state?: string

State of one kind of validation for an IP prefix.

loa_document_id?: string | null

Identifier for the uploaded LOA document.

maxLength32
modified_at?: string
formatdate-time
Deprecatedon_demand_enabled?: boolean
Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix.

Whether advertisement of the prefix to the Internet may be dynamically enabled or disabled.

Deprecatedon_demand_locked?: boolean
Prefer the [BGP Prefixes API](https://developers.cloudflare.com/api/resources/addressing/subresources/prefixes/subresources/bgp_prefixes/) instead, which allows for advertising multiple BGP routes within a single IP Prefix.

Whether advertisement status of the prefix is locked, meaning it cannot be changed.

ownership_validation_state?: string

State of one kind of validation for an IP prefix.

ownership_validation_token?: string

Token provided to demonstrate ownership of the prefix.

rpki_validation_state?: string

State of one kind of validation for an IP prefix.

PrefixDeleteResponse { 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.

AddressingPrefixesService Bindings

List Service Bindings
client.addressing.prefixes.serviceBindings.list(stringprefixId, ServiceBindingListParams { account_id } params, RequestOptionsoptions?): SinglePage<ServiceBinding { id, cidr, provisioning, 2 more } >
GET/accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings
Get Service Binding
client.addressing.prefixes.serviceBindings.get(stringprefixId, stringbindingId, ServiceBindingGetParams { account_id } params, RequestOptionsoptions?): ServiceBinding { id, cidr, provisioning, 2 more }
GET/accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id}
Create Service Binding
client.addressing.prefixes.serviceBindings.create(stringprefixId, ServiceBindingCreateParams { account_id, cidr, service_id } params, RequestOptionsoptions?): ServiceBinding { id, cidr, provisioning, 2 more }
POST/accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings
Delete Service Binding
client.addressing.prefixes.serviceBindings.delete(stringprefixId, stringbindingId, ServiceBindingDeleteParams { account_id } params, RequestOptionsoptions?): ServiceBindingDeleteResponse { errors, messages, success }
DELETE/accounts/{account_id}/addressing/prefixes/{prefix_id}/bindings/{binding_id}
ModelsExpand Collapse
ServiceBinding { id, cidr, provisioning, 2 more }
id?: string

Identifier of a Service Binding.

maxLength32
cidr?: string

IP Prefix in Classless Inter-Domain Routing format.

provisioning?: Provisioning { state }

Status of a Service Binding's deployment to the Cloudflare network

state?: "provisioning" | "active"

When a binding has been deployed to a majority of Cloudflare datacenters, the binding will become active and can be used with its associated service.

One of the following:
"provisioning"
"active"
service_id?: string

Identifier of a Service on the Cloudflare network. Available services and their IDs may be found in the List Services endpoint.

maxLength32
service_name?: string

Name of a service running on the Cloudflare network

ServiceBindingDeleteResponse { 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.

AddressingPrefixesBGP Prefixes

List BGP Prefixes
client.addressing.prefixes.bgpPrefixes.list(stringprefixId, BGPPrefixListParams { account_id } params, RequestOptionsoptions?): SinglePage<BGPPrefix { id, asn, asn_prepend_count, 6 more } >
GET/accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes
Fetch BGP Prefix
client.addressing.prefixes.bgpPrefixes.get(stringprefixId, stringbgpPrefixId, BGPPrefixGetParams { account_id } params, RequestOptionsoptions?): BGPPrefix { id, asn, asn_prepend_count, 6 more }
GET/accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id}
Create BGP Prefix
client.addressing.prefixes.bgpPrefixes.create(stringprefixId, BGPPrefixCreateParams { account_id, cidr } params, RequestOptionsoptions?): BGPPrefix { id, asn, asn_prepend_count, 6 more }
POST/accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes
Update BGP Prefix
client.addressing.prefixes.bgpPrefixes.edit(stringprefixId, stringbgpPrefixId, BGPPrefixEditParams { account_id, asn_prepend_count, auto_advertise_withdraw, on_demand } params, RequestOptionsoptions?): BGPPrefix { id, asn, asn_prepend_count, 6 more }
PATCH/accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/prefixes/{bgp_prefix_id}
ModelsExpand Collapse
BGPPrefix { id, asn, asn_prepend_count, 6 more }
id?: string

Identifier of BGP Prefix.

maxLength32
asn?: number | null

Autonomous System Number (ASN) the prefix will be advertised under.

asn_prepend_count?: number

Number of times to prepend the Cloudflare ASN to the BGP AS-Path attribute

maximum3
minimum0
auto_advertise_withdraw?: boolean

Determines if Cloudflare advertises a BYOIP BGP prefix even when there is no matching BGP prefix in the Magic routing table. When true, Cloudflare will automatically withdraw the BGP prefix when there are no matching BGP routes, and will resume advertising when there is at least one matching BGP route.

bgp_signal_opts?: BGPSignalOpts { enabled, modified_at }
enabled?: boolean

Whether control of advertisement of the prefix to the Internet is enabled to be performed via BGP signal

modified_at?: string | null

Last time BGP signaling control was toggled. This field is null if BGP signaling has never been enabled.

formatdate-time
cidr?: string

IP Prefix in Classless Inter-Domain Routing format.

created_at?: string
formatdate-time
modified_at?: string
formatdate-time
on_demand?: OnDemand { advertised, advertised_modified_at, on_demand_enabled, on_demand_locked }
advertised?: boolean | null

Prefix advertisement status to the Internet. This field is only not 'null' if on demand is enabled.

advertised_modified_at?: string | null

Last time the advertisement status was changed. This field is only not 'null' if on demand is enabled.

formatdate-time
on_demand_enabled?: boolean

Whether advertisement of the prefix to the Internet may be dynamically enabled or disabled.

on_demand_locked?: boolean

Whether the advertisement status of the prefix is locked, meaning it cannot be changed.

AddressingPrefixesAdvertisement Status

Get Advertisement Status
Deprecated
client.addressing.prefixes.advertisementStatus.get(stringprefixId, AdvertisementStatusGetParams { account_id } params, RequestOptionsoptions?): AdvertisementStatusGetResponse { advertised, advertised_modified_at }
GET/accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/status
Update Prefix Dynamic Advertisement Status
Deprecated
client.addressing.prefixes.advertisementStatus.edit(stringprefixId, AdvertisementStatusEditParams { account_id, advertised } params, RequestOptionsoptions?): AdvertisementStatusEditResponse { advertised, advertised_modified_at }
PATCH/accounts/{account_id}/addressing/prefixes/{prefix_id}/bgp/status
ModelsExpand Collapse

AddressingPrefixesDelegations

List Prefix Delegations
client.addressing.prefixes.delegations.list(stringprefixId, DelegationListParams { account_id } params, RequestOptionsoptions?): SinglePage<Delegations { id, cidr, created_at, 3 more } >
GET/accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations
Create Prefix Delegation
client.addressing.prefixes.delegations.create(stringprefixId, DelegationCreateParams { account_id, cidr, delegated_account_id } params, RequestOptionsoptions?): Delegations { id, cidr, created_at, 3 more }
POST/accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations
Delete Prefix Delegation
client.addressing.prefixes.delegations.delete(stringprefixId, stringdelegationId, DelegationDeleteParams { account_id } params, RequestOptionsoptions?): DelegationDeleteResponse { id }
DELETE/accounts/{account_id}/addressing/prefixes/{prefix_id}/delegations/{delegation_id}
ModelsExpand Collapse
Delegations { id, cidr, created_at, 3 more }
id?: string

Identifier of a Delegation.

maxLength32
cidr?: string

IP Prefix in Classless Inter-Domain Routing format.

created_at?: string
formatdate-time
delegated_account_id?: string

Account identifier for the account to which prefix is being delegated.

maxLength32
modified_at?: string
formatdate-time
parent_prefix_id?: string

Identifier of an IP Prefix.

maxLength32
DelegationDeleteResponse { id }
id?: string

Identifier of a Delegation.

maxLength32