Skip to content
Start here

Update interconnect

client.magicTransit.cfInterconnects.update(stringcfInterconnectId, CfInterconnectUpdateParams { account_id, automatic_return_routing, description, 7 more } params, RequestOptionsoptions?): CfInterconnectUpdateResponse { modified, modified_interconnect }
PUT/accounts/{account_id}/magic/cf_interconnects/{cf_interconnect_id}

Updates a specific interconnect associated with an account. Use ?validate_only=true as an optional query parameter to only run validation without persisting changes.

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
cfInterconnectId: string

Identifier

maxLength32
params: CfInterconnectUpdateParams { account_id, automatic_return_routing, description, 7 more }
account_id: string

Path param: Identifier

maxLength32
automatic_return_routing?: boolean

Body param: True if automatic stateful return routing should be enabled for a tunnel, false otherwise.

description?: string

Body param: An optional description of the interconnect.

gre?: GRE

Body param: The configuration specific to GRE interconnects.

cloudflare_endpoint?: string

The IP address assigned to the Cloudflare side of the GRE tunnel created as part of the Interconnect.

health_check?: HealthCheck { enabled, rate, target, type }

Body param

enabled?: boolean

Determines whether to run healthchecks for a tunnel.

How frequent the health check is run. The default value is mid.

One of the following:
"low"
"mid"
"high"
target?: MagicHealthCheckTarget { effective, saved } | string

The destination address in a request type health check. After the healthcheck is decapsulated at the customer end of the tunnel, the ICMP echo will be forwarded to this address. This field defaults to customer_gre_endpoint address. This field is ignored for bidirectional healthchecks as the interface_address (not assigned to the Cloudflare side of the tunnel) is used as the target. Must be in object form if the x-magic-new-hc-target header is set to true and string form if x-magic-new-hc-target is absent or set to false.

One of the following:
MagicHealthCheckTarget { effective, saved }

The destination address in a request type health check. After the healthcheck is decapsulated at the customer end of the tunnel, the ICMP echo will be forwarded to this address. This field defaults to customer_gre_endpoint address. This field is ignored for bidirectional healthchecks as the interface_address (not assigned to the Cloudflare side of the tunnel) is used as the target.

effective?: string

The effective health check target. If 'saved' is empty, then this field will be populated with the calculated default value on GET requests. Ignored in POST, PUT, and PATCH requests.

saved?: string

The saved health check target. Setting the value to the empty string indicates that the calculated default value will be used.

string

The type of healthcheck to run, reply or request. The default value is reply.

One of the following:
"reply"
"request"
interface_address?: string

Body param: A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255.

interface_address6?: string

Body param: A 127 bit IPV6 prefix from within the virtual_subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual_subnet6. Eg if virtual_subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface_address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127

mtu?: number

Body param: The Maximum Transmission Unit (MTU) in bytes for the interconnect. The minimum value is 576.

name?: string

Body param: The name of the interconnect. The name cannot share a name with other tunnels.

xMagicNewHcTarget?: boolean

Header param: If true, the health check target in the request and response bodies will be presented using the new object format. Defaults to false.

ReturnsExpand Collapse
CfInterconnectUpdateResponse { modified, modified_interconnect }
modified?: boolean
modified_interconnect?: ModifiedInterconnect { id, automatic_return_routing, colo_name, 10 more }
id?: string

Identifier

maxLength32
automatic_return_routing?: boolean

True if automatic stateful return routing should be enabled for a tunnel, false otherwise.

colo_name?: string

The name of the interconnect. The name cannot share a name with other tunnels.

created_on?: string

The date and time the tunnel was created.

formatdate-time
description?: string

An optional description of the interconnect.

gre?: GRE { cloudflare_endpoint }

The configuration specific to GRE interconnects.

cloudflare_endpoint?: string

The IP address assigned to the Cloudflare side of the GRE tunnel created as part of the Interconnect.

health_check?: HealthCheck { enabled, rate, target, type }
enabled?: boolean

Determines whether to run healthchecks for a tunnel.

How frequent the health check is run. The default value is mid.

One of the following:
"low"
"mid"
"high"
target?: MagicHealthCheckTarget { effective, saved } | string

The destination address in a request type health check. After the healthcheck is decapsulated at the customer end of the tunnel, the ICMP echo will be forwarded to this address. This field defaults to customer_gre_endpoint address. This field is ignored for bidirectional healthchecks as the interface_address (not assigned to the Cloudflare side of the tunnel) is used as the target. Must be in object form if the x-magic-new-hc-target header is set to true and string form if x-magic-new-hc-target is absent or set to false.

One of the following:
MagicHealthCheckTarget { effective, saved }

The destination address in a request type health check. After the healthcheck is decapsulated at the customer end of the tunnel, the ICMP echo will be forwarded to this address. This field defaults to customer_gre_endpoint address. This field is ignored for bidirectional healthchecks as the interface_address (not assigned to the Cloudflare side of the tunnel) is used as the target.

effective?: string

The effective health check target. If 'saved' is empty, then this field will be populated with the calculated default value on GET requests. Ignored in POST, PUT, and PATCH requests.

saved?: string

The saved health check target. Setting the value to the empty string indicates that the calculated default value will be used.

string

The type of healthcheck to run, reply or request. The default value is reply.

One of the following:
"reply"
"request"
interface_address?: string

A 31-bit prefix (/31 in CIDR notation) supporting two hosts, one for each side of the tunnel. Select the subnet from the following private IP space: 10.0.0.0–10.255.255.255, 172.16.0.0–172.31.255.255, 192.168.0.0–192.168.255.255.

interface_address6?: string

A 127 bit IPV6 prefix from within the virtual_subnet6 prefix space with the address being the first IP of the subnet and not same as the address of virtual_subnet6. Eg if virtual_subnet6 is 2606:54c1:7:0:a9fe:12d2::/127 , interface_address6 could be 2606:54c1:7:0:a9fe:12d2:1:200/127

modified_on?: string

The date and time the tunnel was last modified.

formatdate-time
mtu?: number

The Maximum Transmission Unit (MTU) in bytes for the interconnect. The minimum value is 576.

name?: string

The name of the interconnect. The name cannot share a name with other tunnels.

virtual_port_reservation_id?: string

An identifier that correlates this interconnect with the corresponding V2 CNI interconnect resource.

maxLength32

Update interconnect

import Cloudflare from 'cloudflare';

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

const cfInterconnect = await client.magicTransit.cfInterconnects.update(
  '023e105f4ecef8ad9ca31a8372d0c353',
  { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
);

console.log(cfInterconnect.modified);
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "result": {
    "modified": true,
    "modified_interconnect": {
      "id": "c4a7362d577a6c3019a474fd6f485821",
      "automatic_return_routing": true,
      "colo_name": "pni_ord",
      "created_on": "2017-06-14T00:00:00Z",
      "description": "Tunnel for Interconnect to ORD",
      "gre": {
        "cloudflare_endpoint": "203.0.113.1"
      },
      "health_check": {
        "enabled": true,
        "rate": "low",
        "target": {
          "effective": "203.0.113.1",
          "saved": "203.0.113.1"
        },
        "type": "request"
      },
      "interface_address": "192.0.2.0/31",
      "interface_address6": "2606:54c1:7:0:a9fe:12d2:1:200/127",
      "modified_on": "2017-06-14T05:20:00Z",
      "mtu": 0,
      "name": "pni_ord",
      "virtual_port_reservation_id": "c4a7362d577a6c3019a474fd6f485821"
    }
  },
  "success": true
}
Returns Examples
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "result": {
    "modified": true,
    "modified_interconnect": {
      "id": "c4a7362d577a6c3019a474fd6f485821",
      "automatic_return_routing": true,
      "colo_name": "pni_ord",
      "created_on": "2017-06-14T00:00:00Z",
      "description": "Tunnel for Interconnect to ORD",
      "gre": {
        "cloudflare_endpoint": "203.0.113.1"
      },
      "health_check": {
        "enabled": true,
        "rate": "low",
        "target": {
          "effective": "203.0.113.1",
          "saved": "203.0.113.1"
        },
        "type": "request"
      },
      "interface_address": "192.0.2.0/31",
      "interface_address6": "2606:54c1:7:0:a9fe:12d2:1:200/127",
      "modified_on": "2017-06-14T05:20:00Z",
      "mtu": 0,
      "name": "pni_ord",
      "virtual_port_reservation_id": "c4a7362d577a6c3019a474fd6f485821"
    }
  },
  "success": true
}