---
title: "Create a new IPSec Single tunnel"
slug: "create-a-new-ipsec-single-tunnel"
updated: 2026-02-18T12:52:40Z
published: 2026-02-18T12:52:58Z
canonical: "support.perimeter81.com/create-a-new-ipsec-single-tunnel"
---

> ## 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.

# Create a new IPSec Single tunnel

Post/v2.3/networks/{networkId}/tunnels/ipsec/single

Required permissions: `[&quot;network:write]`

SecurityHTTPType bearer

Path parametersnetworkIdstringRequired

Body parameters<select class='api-response-data' aria-label='Media type'><option value='9bc3a681-fd08-4307-a929-be75c1f3c4fc'>application/json</option>
</select>object  regionIDstring    Required

Region ID

gatewayIDstring    Required

Gateway ID

tunnelNamestring    Required

The name of the tunnel

Min length3Max length15Pattern^[a-zA-Z0-9]*$
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

keyExchangestring    RequiredValid values[
  "ikev1",
  "ikev2"
]
ikeLifeTimestring    RequiredPattern^((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    RequiredPattern^((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    RequiredPattern^([5-9]|[1-5][0-9]|60)s$
dpdTimeoutstring    RequiredPattern^([5-9]|[1-5][0-9]|60)s$
phase1object  Requiredauth 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"
]
dh Array of integer   Required

Diffie Helman encryption

Min length0integer    Valid values[
  2,
  5,
  14,
  19,
  20,
  21,
  31
]

phase2object  Requiredauth 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"
]
dh Array of integer   Required

Diffie Helman encryption

Min length0integer    Valid values[
  2,
  5,
  14,
  19,
  20,
  21,
  31
]

passphrasestring    Pattern^[a-zA-Z1-9._][a-zA-Z0-9._]{7,63}$
remotePublicIPstring  (ipv4)    
remoteIDOneOfstring (ipv4)string
stringstringPattern^[a-zA-Z0-9]{3,25}$

Responses202

Request accepted

<select class='api-response-data' aria-label='Media type'><option value='00835ddd-e38e-4671-8574-b2922fd1664d'>application/json</option>
</select>object  statusUrlstring    
samplingTimeinteger    

401

Unauthorized

<select class='api-response-data' aria-label='Media type'><option value='de76b360-fac9-4e94-a9cf-9d79243cdd69'>application/json</option>
</select>object  idstring    
messagestring    

402

Insufficient licenses

<select class='api-response-data' aria-label='Media type'><option value='dff56359-6588-4079-ab21-4945aa16e838'>application/json</option>
</select>object  idstring    
messagestring    

403

Forbidden

<select class='api-response-data' aria-label='Media type'><option value='242c94bb-c2d9-4b8b-9f7c-f4ae284e0d64'>application/json</option>
</select>object  idstring    
messagestring    

404

Resource not found

<select class='api-response-data' aria-label='Media type'><option value='ad77c38c-7b4d-4ab9-8b75-900a3eda0274'>application/json</option>
</select>object  idstring    
messagestring    

422

Unprocessable entity

<select class='api-response-data' aria-label='Media type'><option value='8889a4d7-56ea-43ac-8704-d98e01612e77'>application/json</option>
</select>object  idstring    
messagestring
