---
title: "Update dynamic IPSec tunnel"
slug: "update-dynamic-ipsec-tunnel-1"
updated: 2026-02-18T12:52:40Z
published: 2026-02-18T12:52:58Z
canonical: "support.perimeter81.com/update-dynamic-ipsec-tunnel-1"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://support.perimeter81.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update dynamic IPSec tunnel

Put/v2.3/networks/enhanced/{networkId}/tunnels/ipsec/dynamic/{dynamicTunnelId}

Update a dynamic IPSec tunnel configuration

SecurityHTTPType bearer

Path parametersnetworkIdstringRequired
dynamicTunnelIdstringRequired

Body parameters<select class='api-response-data' aria-label='Media type'><option value='0527d6e0-72e1-4bf5-8690-114765ff49dc'>application/json</option>
</select>Expand Allobject  tunnelNamestring    Required

Name of the tunnel

descriptionstring    

Optional description for the tunnel

addTunnels Array of object (DynamicTunnelDetails)   Min items0Max items8object  regionIDstring    Required

Dynamic tunnel enhanced region ID

authTypestring    

Authentication type for tunnel (psk for pre-shared key, cert for certificate)

Valid values[
  "psk",
  "cert"
]
passphrasestring    

Pre-shared key for tunnel authentication (8-64 characters). Required when authType is psk.

Min length8Max length64
customerRootCAstring    

Customer root certificate authority. Required when authType is cert.

p81GWInternalIPstring  (ipv4)    

Harmony Sase gateway internal IP address

remoteGWInternalIPstring  (ipv4)    

Remote gateway internal IP address

remotePublicIPstring  (ipv4)    

Remote gateway public IP address

remoteASNinteger  

Autonomous System Number (ASN) for BGP routing. It will be automatically assigned an ASN once creating the first dynamic tunnel in this network. The network ASN can never be changed once it is set.

OneOfintegerintegerMinimum1Maximum64496
integerintegerMinimum64512Maximum65535
integerintegerMinimum131072Maximum4294967295

remoteIDstring    

Remote gateway ID

routingTypestring    

Routing mode for the tunnel

Valid values[
  "route",
  "policy"
]Default"route"

updateTunnels Array of object   Min items0Max items8object  idstring    Required
authTypestring    

Authentication type for tunnel (psk for pre-shared key, cert for certificate)

Valid values[
  "psk",
  "cert"
]
passphrasestring    

Pre-shared key for tunnel authentication (8-64 characters). Required when authType is psk.

Min length8Max length64
customerRootCAstring    

Customer root certificate authority. Required when authType is cert.

remotePublicIPstring  (ipv4)    

Remote gateway public IP address

remoteASNinteger  

Autonomous System Number (ASN) for BGP routing. It will be automatically assigned an ASN once creating the first dynamic tunnel in this network. The network ASN can never be changed once it is set.

OneOfintegerintegerMinimum1Maximum64496
integerintegerMinimum64512Maximum65535
integerintegerMinimum131072Maximum4294967295

remoteIDstring    

Remote gateway ID

routingTypestring    

Routing mode for the tunnel

Valid values[
  "route",
  "policy"
]

removeTunnels Array of object   Min items0Max items8object  idstring    Required

sharedSettingsobject  p81GatewaySubnets Array of string   RequiredMin length1string    
remoteGatewaySubnets Array of string   RequiredMin length1string    
peakBandwidthinteger    

Expected peak throughput of the tunnel communication in Mbps. Typical connection will be of 1000Mbps.

Minimum10Maximum8000Default1000
p81ASNinteger #deprecatedtemplate# #additional-property-template#OneOfintegerintegerMinimum1Maximum23455
integerintegerMinimum23457Maximum64495
integerintegerMinimum64512Maximum65534
integerintegerMinimum131072Maximum4294967294

featuresobject  symmetricInnerMeshobject  enabledboolean    Defaultfalse

advancedSettingsobject (IPSecAdvancedSettingsUpdateV2_3)  keyExchangestring    Valid values[
  "ikev1",
  "ikev2"
]
ikeLifeTimestring    Pattern^((1[0-9]|[2-9][0-9]|[1-9][0-9]{2,3}|[1-7][0-9]{4}|8[0-5][0-9]{3}|86[0-3][0-9]{2}|86400)s)|(([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|1[0-3][0-9][0-9]|14[0-3][0-9]|1440)m)|(([1-9]|1[0-9]|2[0-4])h)$
lifetimestring    Pattern^((1[0-9]|[2-9][0-9]|[1-9][0-9]{2,3}|[1-7][0-9]{4}|8[0-5][0-9]{3}|86[0-3][0-9]{2}|86400)s)|(([1-9]|[1-9][0-9]|[1-9][0-9][0-9]|1[0-3][0-9][0-9]|14[0-3][0-9]|1440)m)|(([1-9]|1[0-9]|2[0-4])h)$
dpdDelaystring    Pattern^([5-9]|[1-5][0-9]|60)s$
dpdTimeoutstring    Pattern^([5-9]|[1-5][0-9]|60)s$
phase1object  auth Array of string   Min length1string    Valid values[
  "md5",
  "sha1",
  "sha384",
  "sha256",
  "sha512",
  "aesxcbc",
  "aescmac",
  "prfmd5",
  "prfsha1",
  "prfaesxcbc",
  "prfaescmac",
  "prfsha256",
  "prfsha384",
  "prfsha512"
]
encryption Array of string   Min length1string    Valid values[
  "3des",
  "blowfish128",
  "blowfish192",
  "blowfish256",
  "aes128",
  "aes192",
  "aes256",
  "aes128ctr",
  "aes192ctr",
  "aes256ctr",
  "camellia128",
  "camellia192",
  "camellia256",
  "camellia128ctr",
  "camellia192ctr",
  "camellia256ctr",
  "aes128ccm8",
  "aes192ccm8",
  "aes256ccm8",
  "aes128ccm16",
  "aes192ccm16",
  "aes256ccm16",
  "aes128gcm8",
  "aes192gcm8",
  "aes256gcm8",
  "aes128gcm16",
  "aes192gcm16",
  "aes256gcm16",
  "camellia128ccm16",
  "camellia192ccm16",
  "camellia256ccm16",
  "chacha20poly1305"
]
keyExchangeMethod Array of string   Required

Key exchange method encryption

Min length0string    Valid values[
  "modp1024",
  "modp1536",
  "modp2048",
  "ecp256",
  "ecp384",
  "ecp521",
  "curve25519"
]

phase2object  auth Array of string   Min length1string    Valid values[
  "md5",
  "sha1",
  "sha384",
  "sha256",
  "sha512",
  "aesxcbc",
  "aescmac",
  "prfmd5",
  "prfsha1",
  "prfaesxcbc",
  "prfaescmac",
  "prfsha256",
  "prfsha384",
  "prfsha512"
]
encryption Array of string   Min length1string    Valid values[
  "3des",
  "blowfish128",
  "blowfish192",
  "blowfish256",
  "aes128",
  "aes192",
  "aes256",
  "aes128ctr",
  "aes192ctr",
  "aes256ctr",
  "camellia128",
  "camellia192",
  "camellia256",
  "camellia128ctr",
  "camellia192ctr",
  "camellia256ctr",
  "aes128ccm8",
  "aes192ccm8",
  "aes256ccm8",
  "aes128ccm16",
  "aes192ccm16",
  "aes256ccm16",
  "aes128gcm8",
  "aes192gcm8",
  "aes256gcm8",
  "aes128gcm16",
  "aes192gcm16",
  "aes256gcm16",
  "camellia128ccm16",
  "camellia192ccm16",
  "camellia256ccm16",
  "chacha20poly1305"
]
keyExchangeMethod Array of string   Required

Key exchange method encryption

Min length0string    Valid values[
  "modp1024",
  "modp1536",
  "modp2048",
  "ecp256",
  "ecp384",
  "ecp521",
  "curve25519"
]

routingTypestring    

Routing mode for the tunnel

Valid values[
  "route",
  "policy"
]Default"route"

Responses202

Request accepted

<select class='api-response-data' aria-label='Media type'><option value='fdc9c845-1b21-4323-b722-b9693177dde9'>application/json</option>
</select>object  statusUrlstring    
samplingTimeinteger    

401

Unauthorized

<select class='api-response-data' aria-label='Media type'><option value='5a127771-3ae3-43b9-8cb4-ae5dde003fb4'>application/json</option>
</select>object  idstring    
messagestring    

403

Forbidden

<select class='api-response-data' aria-label='Media type'><option value='5faf4d08-917c-4529-8a2b-f5c87110b977'>application/json</option>
</select>object  idstring    
messagestring    

404

Resource not found

<select class='api-response-data' aria-label='Media type'><option value='65454717-b4a7-40c4-9142-191f812e3e9a'>application/json</option>
</select>object  idstring    
messagestring
