Updates a specific IPsec tunnel associated with an account. Use `?validate_only=true` as an optional query parameter to only run validation without persisting changes.
/accounts/{account_identifier}/magic/ipsec_tunnels/{tunnel_identifier}
put
Magic IPsec tunnels
magic-ipsec-tunnels-update-ipsec-tunnel
{
"business": false,
"enterprise": true,
"free": false,
"pro": false
} null [
{
"in": "path",
"name": "tunnel_identifier",
"required": true,
"schema": {
"description": "Identifier",
"example": "023e105f4ecef8ad9ca31a8372d0c353",
"maxLength": 32,
"readOnly": true,
"type": "string"
}
},
{
"in": "path",
"name": "account_identifier",
"required": true,
"schema": {
"description": "Identifier",
"example": "023e105f4ecef8ad9ca31a8372d0c353",
"maxLength": 32,
"readOnly": true,
"type": "string"
}
}
] {
"content": {
"application/json": {
"schema": {
"allOf": [
{
"properties": {
"cloudflare_endpoint": {
"description": "The IP address assigned to the Cloudflare side of the IPsec tunnel.",
"example": "203.0.113.1",
"type": "string"
},
"customer_endpoint": {
"description": "The IP address assigned to the customer side of the IPsec tunnel.",
"example": "203.0.113.1",
"type": "string"
},
"description": {
"description": "An optional description forthe IPsec tunnel.",
"example": "Tunnel for ISP X",
"type": "string"
},
"interface_address": {
"description": "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.",
"example": "192.0.2.0/31",
"type": "string"
},
"name": {
"description": "The name of the IPsec tunnel. The name cannot share a name with other tunnels.",
"example": "IPsec_1",
"type": "string"
},
"psk": {
"description": "A randomly generated or provided string for use in the IPsec tunnel.",
"example": "O3bwKSjnaoCxDoUxjcq4Rk8ZKkezQUiy",
"type": "string"
},
"replay_protection": {
"default": false,
"description": "If `true`, then IPsec replay protection will be supported in the Cloudflare-to-customer direction.",
"example": false,
"type": "boolean"
}
},
"required": [
"name",
"cloudflare_endpoint",
"interface_address"
],
"type": "object"
}
]
}
}
},
"required": true
} {
"200": {
"content": {
"application/json": {
"schema": {
"allOf": [
{
"allOf": [
{
"properties": {
"errors": {
"example": [],
"items": {
"properties": {
"code": {
"minimum": 1000,
"type": "integer"
},
"message": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"type": "object",
"uniqueItems": true
},
"type": "array"
},
"messages": {
"example": [],
"items": {
"properties": {
"code": {
"minimum": 1000,
"type": "integer"
},
"message": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"type": "object",
"uniqueItems": true
},
"type": "array"
},
"result": {
"anyOf": [
{
"type": "object"
},
{
"items": {},
"type": "array"
},
{
"type": "string"
}
]
},
"success": {
"description": "Whether the API call was successful",
"enum": [
true
],
"example": true,
"type": "boolean"
}
},
"required": [
"success",
"errors",
"messages",
"result"
],
"type": "object"
},
{
"properties": {
"result": {
"anyOf": [
{
"nullable": true,
"type": "object"
},
{
"nullable": true,
"type": "string"
}
]
}
}
}
],
"type": "object"
},
{
"properties": {
"result": {
"properties": {
"modified": {
"example": true,
"type": "boolean"
},
"modified_ipsec_tunnel": {
"type": "object"
}
}
}
}
}
]
}
}
},
"description": "Update IPsec Tunnel response"
},
"4XX": {
"content": {
"application/json": {
"schema": {
"allOf": [
{
"allOf": [
{
"allOf": [
{
"properties": {
"errors": {
"example": [],
"items": {
"properties": {
"code": {
"minimum": 1000,
"type": "integer"
},
"message": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"type": "object",
"uniqueItems": true
},
"type": "array"
},
"messages": {
"example": [],
"items": {
"properties": {
"code": {
"minimum": 1000,
"type": "integer"
},
"message": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"type": "object",
"uniqueItems": true
},
"type": "array"
},
"result": {
"anyOf": [
{
"type": "object"
},
{
"items": {},
"type": "array"
},
{
"type": "string"
}
]
},
"success": {
"description": "Whether the API call was successful",
"enum": [
true
],
"example": true,
"type": "boolean"
}
},
"required": [
"success",
"errors",
"messages",
"result"
],
"type": "object"
},
{
"properties": {
"result": {
"anyOf": [
{
"nullable": true,
"type": "object"
},
{
"nullable": true,
"type": "string"
}
]
}
}
}
],
"type": "object"
},
{
"properties": {
"result": {
"properties": {
"modified": {
"example": true,
"type": "boolean"
},
"modified_ipsec_tunnel": {
"type": "object"
}
}
}
}
}
]
},
{
"properties": {
"errors": {
"allOf": [
{
"example": [],
"items": {
"properties": {
"code": {
"minimum": 1000,
"type": "integer"
},
"message": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"type": "object",
"uniqueItems": true
},
"type": "array"
}
],
"example": [
{
"code": 7003,
"message": "No route for the URI"
}
],
"minLength": 1
},
"messages": {
"allOf": [
{
"example": [],
"items": {
"properties": {
"code": {
"minimum": 1000,
"type": "integer"
},
"message": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"type": "object",
"uniqueItems": true
},
"type": "array"
}
],
"example": []
},
"result": {
"enum": [
null
],
"nullable": true,
"type": "object"
},
"success": {
"description": "Whether the API call was successful",
"enum": [
false
],
"example": false,
"type": "boolean"
}
},
"required": [
"success",
"errors",
"messages",
"result"
],
"type": "object"
}
]
}
}
},
"description": "Update IPsec Tunnel response failure"
}
} [
{
"api_email": [],
"api_key": []
}
]