Skip to content
Start here

Create a new interconnect

client.networkInterconnects.interconnects.create(InterconnectCreateParamsparams, RequestOptionsoptions?): InterconnectCreateResponse
POST/accounts/{account_id}/cni/interconnects

Creates a new network interconnect for connecting Cloudflare’s network to external networks. Interconnects provide dedicated bandwidth and reduced latency for traffic exchange.

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
Accepted Permissions (at least one required)
Magic WAN WriteMagic Transit Write
ParametersExpand Collapse
InterconnectCreateParams = NscInterconnectCreatePhysicalBody | NscInterconnectCreateGcpPartnerBody
InterconnectCreateParamsBase { account_id, account, slot_id, 2 more }
account_id: string

Path param: Customer account tag

account: string

Body param

slot_id: string

Body param

formatuuid
type: string

Body param

speed?: string | null

Body param

NscInterconnectCreatePhysicalBody extends InterconnectCreateParamsBase { account_id, account, slot_id, 2 more }
NscInterconnectCreateGcpPartnerBody extends InterconnectCreateParamsBase { account_id, account, slot_id, 2 more }
ReturnsExpand Collapse
InterconnectCreateResponse = NscInterconnectPhysicalBody { account, facility, name, 7 more } | NscInterconnectGcpPartnerBody { account, name, region, 4 more }
One of the following:
NscInterconnectPhysicalBody { account, facility, name, 7 more }
account: string
facility: Facility { address, name }
address: Array<string>
name: string
name: string
site: string

A Cloudflare site name.

slot_id: string
formatuuid
speed: string
type: string
virtual_port_reservation_id: string
formatuuid
ccr_device_name?: string | null
owner?: string
NscInterconnectGcpPartnerBody { account, name, region, 4 more }
account: string
name: string
region: string
type: string
virtual_port_reservation_id: string
formatuuid
owner?: string
speed?: "50M" | "100M" | "200M" | 9 more

Bandwidth structure as visible through the customer-facing API.

One of the following:
"50M"
"100M"
"200M"
"300M"
"400M"
"500M"
"1G"
"2G"
"5G"
"10G"
"20G"
"50G"

Create a new interconnect

import Cloudflare from 'cloudflare';

const client = new Cloudflare({
  apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted
});

const interconnect = await client.networkInterconnects.interconnects.create({
  account_id: 'account_id',
  account: 'account',
  slot_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e',
  type: 'type',
});

console.log(interconnect);
{
  "account": "account",
  "facility": {
    "address": [
      "string"
    ],
    "name": "name"
  },
  "name": "name",
  "site": "site",
  "slot_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "speed": "speed",
  "type": "type",
  "virtual_port_reservation_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "ccr_device_name": "ccr_device_name",
  "owner": "owner"
}
Returns Examples
{
  "account": "account",
  "facility": {
    "address": [
      "string"
    ],
    "name": "name"
  },
  "name": "name",
  "site": "site",
  "slot_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "speed": "speed",
  "type": "type",
  "virtual_port_reservation_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
  "ccr_device_name": "ccr_device_name",
  "owner": "owner"
}