Skip to content

VPN ​

66 operations. Call any of them with omada_call_operation (or, in full tool mode, as a tool named by its operationId).

OperationMethodSummary
downloadVpnCertificateGETDownload Open VPN or SSL VPN certificate
listRemoteSiteGETList Remote Site
batchDeleteVpnDELETEBatch delete VPN
getAllVpnListGETGet All VPN list (deprecated)
deleteVpnDELETEDelete VPN (deprecated)
checkUsedVpnGETCheck used function for single VPN item
modifyClientStatusPATCHModify VPN status
getSslVpnUserGroupBriefListGETGet SSL VPN user Group list V2
uploadVpnCertificateFilePOSTUpload VPN certificate file (deprecated)
checkUsedInVpnsPOSTCheck used function for multiple VPN items
checkValueAvailablePOSTCheck whether vpn value is available
getClientToSiteVpnClientListGETGet client-to-site VPN client list (deprecated)
createClientToSiteVpnClientPOSTCreate client-to-site VPN client (deprecated)
deleteClientToSiteVpnClientDELETEDelete client-to-site VPN client (deprecated)
getVpnClientToSiteClientInfoGETGet client-to-site VPN client info (deprecated)
modifyClientToSiteVpnClientPATCHModify client-to-site VPN client (deprecated)
getClientToSiteVpnServerListGETGet client-to-site VPN server list (deprecated)
createClientToSiteVpnServerPOSTCreate client-to-site VPN server (deprecated)
deleteClientToSiteVpnServerDELETEDelete client-to-site VPN server (deprecated)
getClientToSiteVpnServerInfoGETGet client-to-site VPN server info (deprecated)
modifyClientToSiteVpnServerPATCHModify client-to-site VPN server (deprecated)
getClientToSiteVpnServerUserListGETGet user list for client-to-site VPN server
getVpnDefaultValuePOSTGet default value for VPN
getVpnAvailableIpPoolGETGet available IP pools for VPN
getGridIpsecFailoverGETGet IPsec failover list (deprecated)
createIpsecFailoverPOSTCreate IPsec failover (deprecated)
deleteIpsecFailoverDELETEDelete IPsec failover (deprecated)
modifyIpsecFailoverPATCHModify IPsec failover (deprecated)
getVpnPreSharedKeyGETGenerate a random pre-shared key for IPSec
getSiteToSiteVpnListGETGet site-to-site VPN list (deprecated)
createSiteToSiteVpnPOSTCreate site-to-site VPN (deprecated)
deleteSiteToSiteVpnDELETEDelete site-to-site VPN (deprecated)
getSiteToSiteVpnInfoGETGet site-to-site VPN info (deprecated)
modifySiteToSiteVpnPATCHModify site-to-site VPN (deprecated)
disconnectSslVpnTunnelPOSTDisconnect SSL VPN tunnel
lockSslVpnTunnelPOSTLock SSL VPN tunnel
getVpnUserListGETGet VPN user list without page
getBriefVpnUserByServerIdListGETGet brief VPN user list by VPN server ID without page
batchDeleteVpnUserDELETEBatch delete VPN user
getGridVpnUserGETGet VPN user list (deprecated)
createVpnUserPOSTCreate VPN user (deprecated)
deleteVpnUserDELETEDelete VPN user
modifyVpnUserPATCHModify VPN user (deprecated)
getVpnUserServerListGETGet VPN server list for user
uploadVpnCertificateFileV2POSTUpload VPN certificate file V2
deleteVpnV2DELETEDelete VPN V2
getGridVpnClientV2GETGet VPN Client summary list
createVpnClientPOSTCreate client-to-site VPN client V2
getVpnClientDetailInfoGETGet client-to-site VPN client detail info
modifyVpnClientPATCHModify client-to-site VPN client V2
getGridVpnServerV2GETGet VPN Server summary list
createVpnServerPOSTCreate client-to-site VPN server V2
getVpnServerDetailInfoGETGet client-to-site VPN server detail info
modifyVpnServerPATCHModify client-to-site VPN server V2
getGridVpnS2SV2GETGet VPN Site to Site summary list
createS2SManualVpnPOSTCreate site-to-site VPN by manual
getVpnS2SDetailInfoGETGet site-to-site VPN detail info
modifyS2SManualVpnPATCHModify site-to-site VPN by manual
createS2SAutoVpnPOSTCreate site-to-site VPN by auto
modifyS2SAutoVpnPATCHModify site-to-site VPN by auto
getGridVpnUserV2GETGet VPN user list V2
createVpnUserV2POSTCreate VPN user V2 (deprecated)
modifyVpnUserV2PATCHModify VPN user V2 (deprecated)
getVpnServerUserListV3GETGet user list by VPN server ID
createVpnUserV3POSTCreate VPN user V3
modifyVpnUserV3PATCHModify VPN user V3

downloadVpnCertificate ​

GET /openapi/v1/{omadacId}/files/sites/{siteId}/vpn/{vpnId}/certificate

Download Open VPN or SSL VPN certificate

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "downloadVpnCertificate",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Download Open VPN or SSL VPN certificate. Filename is a UTF-8 string encoded by URL Encoder.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-34606 - No gateway in this site.
-34607 - Failed to get the VPN certificate.
-34624 - Failed to get any response from the gateway.
-34685 - It takes about 5 minutes to generate the file, please export it later.

listRemoteSite ​

GET /openapi/v1/{omadacId}/sites/{siteId}/remoteSites

List Remote Site

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
json
// omada_call_operation
{
  "operationId": "listRemoteSite",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

List Remote Site.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

batchDeleteVpn ​

DELETE /openapi/v1/{omadacId}/sites/{siteId}/vpn

Batch delete VPN

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema BatchSelectVpnVO

FieldTypeRequiredDescription
idsarray<string>noID list of batch selected VPNs.
searchKeystringnoThe keywords of the searchIt is effected when [selectAll] is 'true'.
selectAllbooleannoIndicates whether to select all VPNs for deletion. The behavior depends on the combination with 'ids': 1: If selectAll is true and ids is not empty: perform a reverse selection (excluding the specified IDs). 2: If selectAll is true and ids is empty: select all VPNs. 3: If selectAll is false and ids is not empty: select only the specified VPNs in the ID list.
usageintegernoParameter [usage] should be a value as follows: 0, Server; 1, Client; 2, Site-To-Site.
json
// omada_call_operation
{
  "operationId": "batchDeleteVpn",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Batch delete VPN.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify

getAllVpnList ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn

Deprecated

This operation is deprecated.

Get All VPN list

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
json
// omada_call_operation
{
  "operationId": "getAllVpnList",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get All VPN list. This interface has been deprecated. Please use the following interfaces instead: Get VPN Server summary list and Get client-to-site VPN server detail info;Get VPN Client summary list and Get client-to-site VPN client detail info;Get VPN Site to Site summary list and Get site-to-site VPN detail info. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

deleteVpn ​

DELETE /openapi/v1/{omadacId}/sites/{siteId}/vpn/{vpnId}

Deprecated

This operation is deprecated.

Delete VPN

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "deleteVpn",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Delete VPN. This interface has been deprecated. Please use the following interfaces instead: Delete VPN V2. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify

checkUsedVpn ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/{vpnId}/checkUsed

Check used function for single VPN item

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "checkUsedVpn",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Check used function for single VPN item.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

modifyClientStatus ​

PATCH /openapi/v1/{omadacId}/sites/{siteId}/vpn/{vpnId}/status

Modify VPN status

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID

Request body — application/json (required) — schema VpnStatusVO

FieldTypeRequiredDescription
statusbooleanyes
json
// omada_call_operation
{
  "operationId": "modifyClientStatus",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify VPN status.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

getSslVpnUserGroupBriefList ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/briefusergroups

Get SSL VPN user Group list V2

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
json
// omada_call_operation
{
  "operationId": "getSslVpnUserGroupBriefList",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get SSL VPN user Group brief information list.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

uploadVpnCertificateFile ​

POST /openapi/v1/{omadacId}/sites/{siteId}/vpn/certificate

Deprecated

This operation is deprecated.

Upload VPN certificate file

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — multipart/form-data (optional). File field(s): file.

json
// omada_call_operation
{
  "operationId": "uploadVpnCertificateFile",
  "params": {
    "siteId": "<siteId>"
  },
  "files": {
    "file": {
      "path": "/path/to/file"
    }
  }
}
Details, permissions and error codes

Upload VPN certificate file. This interface has been deprecated. Please use the following interfaces instead: Upload VPN certificate file V2. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify

checkUsedInVpns ​

POST /openapi/v1/{omadacId}/sites/{siteId}/vpn/checkUsed

Check used function for multiple VPN items

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema BatchSelectVpnVO

FieldTypeRequiredDescription
idsarray<string>noID list of batch selected VPNs.
searchKeystringnoThe keywords of the searchIt is effected when [selectAll] is 'true'.
selectAllbooleannoIndicates whether to select all VPNs for deletion. The behavior depends on the combination with 'ids': 1: If selectAll is true and ids is not empty: perform a reverse selection (excluding the specified IDs). 2: If selectAll is true and ids is empty: select all VPNs. 3: If selectAll is false and ids is not empty: select only the specified VPNs in the ID list.
usageintegernoParameter [usage] should be a value as follows: 0, Server; 1, Client; 2, Site-To-Site.
json
// omada_call_operation
{
  "operationId": "checkUsedInVpns",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Check used function for multiple VPN items.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

checkValueAvailable ​

POST /openapi/v1/{omadacId}/sites/{siteId}/vpn/checkValue

Check whether vpn value is available

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema VpnValueAvailableVO

FieldTypeRequiredDescription
typeintegeryesParameter [type] should be a value as follows: 0, name; 1, port.
usageintegernoParameter [usage] should not be null when [type] is name. Parameter [usage] should be a value as follows: 0, server; 1, client; 2: site-to-site.
namestringnoVPN name. Parameter [name] should not be null when [type] is name.
portintegernoParameter [port] should not be null when [type] is port.
vpnTypeintegernoVpn type should be a value as follows: 0: L2TP; 1: PPTP; 2: IPSec; 3: OpenVPN; 4: WireGuard; 5: SSL VPN.
wanstringnoWAN of the VPN.
serviceTypeintegernoService type of the Open VPN should be a value as follows: 0: UDP; 1: TCP.
idstringnoVPN ID.
json
// omada_call_operation
{
  "operationId": "checkValueAvailable",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Check whether vpn value is available.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

getClientToSiteVpnClientList ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-clients

Deprecated

This operation is deprecated.

Get client-to-site VPN client list

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
json
// omada_call_operation
{
  "operationId": "getClientToSiteVpnClientList",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get client-to-site VPN client list. This interface has been deprecated. Please use the following interfaces instead: Get VPN Client summary list and Get client-to-site VPN client detail info. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

createClientToSiteVpnClient ​

POST /openapi/v1/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-clients

Deprecated

This operation is deprecated.

Create client-to-site VPN client

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema ClientToSiteVpnClient

FieldTypeRequiredDescription
idstringnoID of the VPN.
namestringyesName should contain 1 to 63 characters.
statusbooleannoStatus of the VPN.
modeintegernoMode(only for server OpenVPN) should be a value as follows: 0: certification; 1: certification+account.
remoteSitestringnoRemote site of the VPN.
remoteIpstringnoRemote IP of the VPN. Get whether supports domain from interface 'Get client-to-site VPN client list'.
remoteSubnetarray<IPSubnetsVO>noRemote subnet of the VPN.
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<IPSubnetsVO>noCustom networks of the VPN.
preSharedKeystringnoPre-shared key of the VPN.
wanarray<string>yesWAN list of the VPN. WAN port ID can be obtained from 'Get internet basic info' interface.
clientVpnTypeintegeryesClient Vpn type should be a value as follows: 0: L2TP; 1: PPTP; 2: IPSec; 3: OpenVPN.
openVpnTunnelModeintegernoOpenVPN tunnel mode should be a value as follows: 0: split; 1: full.
openVpnModeintegernoOpenVPN mode should be a value as follows: 0: certification; 1: certification+account.
serviceTypeintegernoService type should be a value as follows: 0: UDP; 1: TCP.
servicePortintegernoService port should be within the range of 1–65535.
encryptionintegernoEncryption should be a value as follows: 0: Encrypted; 1: Unencrypted.
workingModeintegernoWorking mode should be a value as follows: 0: NAT; 1: Routing.
clientUserNamestringnoClient username should contain 1 to 64 characters.
clientPasswordstringnoClient password should contain 1 to 64 characters.
vpnConfigurationVpnCertificateOpenApiVOno(VpnCertificateOpenApiVO not expanded; call omada_get_schema "VpnCertificateOpenApiVO")
json
// omada_call_operation
{
  "operationId": "createClientToSiteVpnClient",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Create client-to-site VPN client. This interface has been deprecated. Please use the following interfaces instead: Create client-to-site VPN client V2. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

deleteClientToSiteVpnClient ​

DELETE /openapi/v1/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-clients/{vpnId}

Deprecated

This operation is deprecated.

Delete client-to-site VPN client

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "deleteClientToSiteVpnClient",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Delete client-to-site VPN client. This interface has been deprecated. Please use the following interfaces instead: Delete VPN V2. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-34682 - This VPN entry has been used by Static Route, and thus it cannot be deleted.
-34683 - This VPN entry has been used by Policy Routing, and thus it cannot be deleted.
-34684 - This VPN entry has been used by Static Route and Policy Routing, and thus it cannot be deleted.
-35706 - This VPN entry has been used by Gateway ACL, and thus it cannot be deleted.

getVpnClientToSiteClientInfo ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-clients/{vpnId}

Deprecated

This operation is deprecated.

Get client-to-site VPN client info

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "getVpnClientToSiteClientInfo",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Get client-to-site VPN client info. This interface has been deprecated. Please use the following interfaces instead: Get VPN Client summary list and Get client-to-site VPN client detail info. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

modifyClientToSiteVpnClient ​

PATCH /openapi/v1/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-clients/{vpnId}

Deprecated

This operation is deprecated.

Modify client-to-site VPN client

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID

Request body — application/json (required) — schema ClientToSiteVpnClient

FieldTypeRequiredDescription
idstringnoID of the VPN.
namestringyesName should contain 1 to 63 characters.
statusbooleannoStatus of the VPN.
modeintegernoMode(only for server OpenVPN) should be a value as follows: 0: certification; 1: certification+account.
remoteSitestringnoRemote site of the VPN.
remoteIpstringnoRemote IP of the VPN. Get whether supports domain from interface 'Get client-to-site VPN client list'.
remoteSubnetarray<IPSubnetsVO>noRemote subnet of the VPN.
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<IPSubnetsVO>noCustom networks of the VPN.
preSharedKeystringnoPre-shared key of the VPN.
wanarray<string>yesWAN list of the VPN. WAN port ID can be obtained from 'Get internet basic info' interface.
clientVpnTypeintegeryesClient Vpn type should be a value as follows: 0: L2TP; 1: PPTP; 2: IPSec; 3: OpenVPN.
openVpnTunnelModeintegernoOpenVPN tunnel mode should be a value as follows: 0: split; 1: full.
openVpnModeintegernoOpenVPN mode should be a value as follows: 0: certification; 1: certification+account.
serviceTypeintegernoService type should be a value as follows: 0: UDP; 1: TCP.
servicePortintegernoService port should be within the range of 1–65535.
encryptionintegernoEncryption should be a value as follows: 0: Encrypted; 1: Unencrypted.
workingModeintegernoWorking mode should be a value as follows: 0: NAT; 1: Routing.
clientUserNamestringnoClient username should contain 1 to 64 characters.
clientPasswordstringnoClient password should contain 1 to 64 characters.
vpnConfigurationVpnCertificateOpenApiVOno(VpnCertificateOpenApiVO not expanded; call omada_get_schema "VpnCertificateOpenApiVO")
json
// omada_call_operation
{
  "operationId": "modifyClientToSiteVpnClient",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify client-to-site VPN client. This interface has been deprecated. Please use the following interfaces instead: Modify client-to-site VPN client V2. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.
-34679 - This VPN entry has been used by Static Route, and thus the VPN type cannot be changed.
-34680 - This VPN entry has been used by Policy Routing, and thus the VPN type cannot be changed.
-34681 - This VPN entry has been used by Static Route and Policy Routing, and thus the VPN type cannot be changed.
-35705 - This VPN entry has been used by Gateway ACL, and thus the VPN type cannot be changed.

getClientToSiteVpnServerList ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-servers

Deprecated

This operation is deprecated.

Get client-to-site VPN server list

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
json
// omada_call_operation
{
  "operationId": "getClientToSiteVpnServerList",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get client-to-site VPN server list. This interface has been deprecated. Please use the following interfaces instead: Get VPN Server summary list and Get client-to-site VPN server detail info. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

createClientToSiteVpnServer ​

POST /openapi/v1/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-servers

Deprecated

This operation is deprecated.

Create client-to-site VPN server

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema ClientToSiteVpnServer

FieldTypeRequiredDescription
idstringnoID of the VPN.
namestringyesName should contain 1 to 63 characters.
statusbooleannoStatus of the VPN.
accountPasswordbooleannoAccount password of the VPN, only for server OpenVPN.
tunnelModeintegernoTunnel mode(only for server OpenVPN)should be a value as follows: 0: split; 1: full.
openVpnModeintegernoOpenVPN mode should be a value as follows: 0: certification; 1: certification+account.
remoteIpstringnoRemote IP of the VPN
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<IPSubnetsVO>noCustom networks of the VPN.
preSharedKeystringnoPre-shared key of the VPN.
wanarray<string>yesWAN list of the VPN. WAN port ID can be obtained from 'Get internet basic info' interface.
clientVpnTypeintegeryesClient Vpn type should be a value as follows: 0: L2TP; 1: PPTP; 2: IPSec; 3: OpenVPN.
encryptionintegernoEncryption should be a value as follows: 0: Encrypted; 1: Unencrypted.
ipPoolTypeintegernoIP pool type should be a value as follows: 0: Ip Address/Mask; 1: Ip Address Range.
ipPoolStartstringnoThe start IP of the IP pool.
ipPoolEndstringnoThe end IP of the IP pool.
ipPoolIPSubnetsVOyes(IPSubnetsVO not expanded; call omada_get_schema "IPSubnetsVO")
primaryDnsstringnoPrimary DNS of the VPN.
secondaryDnsstringnoSecondary DNS of the VPN.
serviceTypeintegernoService type of the VPN.
servicePortintegernoService port should be within the range of 1–65535.
authModeintegernoAuthentication mode should be a value as follows: 0: Local; 1: LDAP.
advancedSettingVpnAdvancedSettingOpenApiVOno(VpnAdvancedSettingOpenApiVO not expanded; call omada_get_schema "VpnAdvancedSettingOpenApiVO")
json
// omada_call_operation
{
  "operationId": "createClientToSiteVpnServer",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Create client-to-site VPN server. This interface has been deprecated. Please use the following interfaces instead: Create client-to-site VPN server V2. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

deleteClientToSiteVpnServer ​

DELETE /openapi/v1/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-servers/{vpnId}

Deprecated

This operation is deprecated.

Delete client-to-site VPN server

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "deleteClientToSiteVpnServer",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Delete client-to-site VPN server. This interface has been deprecated. Please use the following interfaces instead: Delete VPN V2. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify

getClientToSiteVpnServerInfo ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-servers/{vpnId}

Deprecated

This operation is deprecated.

Get client-to-site VPN server info

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "getClientToSiteVpnServerInfo",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Get client-to-site VPN server info. This interface has been deprecated. Please use the following interfaces instead: Get VPN Server summary list and Get client-to-site VPN server detail info. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

modifyClientToSiteVpnServer ​

PATCH /openapi/v1/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-servers/{vpnId}

Deprecated

This operation is deprecated.

Modify client-to-site VPN server

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID

Request body — application/json (required) — schema ClientToSiteVpnServer

FieldTypeRequiredDescription
idstringnoID of the VPN.
namestringyesName should contain 1 to 63 characters.
statusbooleannoStatus of the VPN.
accountPasswordbooleannoAccount password of the VPN, only for server OpenVPN.
tunnelModeintegernoTunnel mode(only for server OpenVPN)should be a value as follows: 0: split; 1: full.
openVpnModeintegernoOpenVPN mode should be a value as follows: 0: certification; 1: certification+account.
remoteIpstringnoRemote IP of the VPN
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<IPSubnetsVO>noCustom networks of the VPN.
preSharedKeystringnoPre-shared key of the VPN.
wanarray<string>yesWAN list of the VPN. WAN port ID can be obtained from 'Get internet basic info' interface.
clientVpnTypeintegeryesClient Vpn type should be a value as follows: 0: L2TP; 1: PPTP; 2: IPSec; 3: OpenVPN.
encryptionintegernoEncryption should be a value as follows: 0: Encrypted; 1: Unencrypted.
ipPoolTypeintegernoIP pool type should be a value as follows: 0: Ip Address/Mask; 1: Ip Address Range.
ipPoolStartstringnoThe start IP of the IP pool.
ipPoolEndstringnoThe end IP of the IP pool.
ipPoolIPSubnetsVOyes(IPSubnetsVO not expanded; call omada_get_schema "IPSubnetsVO")
primaryDnsstringnoPrimary DNS of the VPN.
secondaryDnsstringnoSecondary DNS of the VPN.
serviceTypeintegernoService type of the VPN.
servicePortintegernoService port should be within the range of 1–65535.
authModeintegernoAuthentication mode should be a value as follows: 0: Local; 1: LDAP.
advancedSettingVpnAdvancedSettingOpenApiVOno(VpnAdvancedSettingOpenApiVO not expanded; call omada_get_schema "VpnAdvancedSettingOpenApiVO")
json
// omada_call_operation
{
  "operationId": "modifyClientToSiteVpnServer",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify client-to-site VPN server. This interface has been deprecated. Please use the following interfaces instead: Modify client-to-site VPN server V2. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

getClientToSiteVpnServerUserList ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-servers/{vpnId}/users

Get user list for client-to-site VPN server

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "getClientToSiteVpnServerUserList",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Get user list for client-to-site VPN server.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

getVpnDefaultValue ​

POST /openapi/v1/{omadacId}/sites/{siteId}/vpn/defaultValue

Get default value for VPN

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema VpnDefaultValueReqVO

FieldTypeRequiredDescription
typeintegeryesParameter [type] should be a value as follows: 0, name; 1, port; 2, tunnelIp.
usageintegernoParameter [usage] should not be null when parameter [type] is name. Parameter [usage] should be a value as follows: 0, server; 1, client; 2, site-to-site.
vpnTypeintegernoParameter [vpnType] should not be null when parameter [type] is port. Parameter [vpnType] should be a value as follows: 3, Open VPN; 4, Wire Guard; 5, SSL VPN.
json
// omada_call_operation
{
  "operationId": "getVpnDefaultValue",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Get default value for VPN.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

getVpnAvailableIpPool ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/ippool

Get available IP pools for VPN

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
json
// omada_call_operation
{
  "operationId": "getVpnAvailableIpPool",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get available IP pools for VPN.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

getGridIpsecFailover ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/ipsec_failovers

Deprecated

This operation is deprecated.

Get IPsec failover list

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
pagequeryintegernoStart page number. Start from 1. (default 1)
pageSizequeryintegernoNumber of entries per page. It should be within the range of 1–1000. (default 100)
json
// omada_call_operation
{
  "operationId": "getGridIpsecFailover",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get IPsec failover list. This interface has been deprecated. Please use the following interfaces instead: Get VPN Site to Site summary list and Get site-to-site VPN detail info. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

createIpsecFailover ​

POST /openapi/v1/{omadacId}/sites/{siteId}/vpn/ipsec_failovers

Deprecated

This operation is deprecated.

Create IPsec failover

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema IPsecFailover configuration

FieldTypeRequiredDescription
idstringnoID of the IPSec failover.
namestringyesName should contain 1 to 64 characters.
primarystringyesPrimary of the IPSec failover. IPsec VPN can be created using 'Create site-to-site VPN' interface, and ID can be obtained from 'Get site-to-site VPN list' interface.
candidatesarray<string>yesCandidates of the IPSec failover. IPsec VPN can be created using 'Create site-to-site VPN' interface, and ID can be obtained from 'Get site-to-site VPN list' interface.
failbackbooleannoFailback of the IPSec failover.
failbackTimeintegernoFailback time should be within the range of 10–3600s.
json
// omada_call_operation
{
  "operationId": "createIpsecFailover",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Create IPsec failover. This interface has been deprecated. Please use the following interfaces instead: Create site-to-site VPN by manual or Modify site-to-site VPN by manual. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-35718 - The device does not support configuring the VPN IPsec failover.

deleteIpsecFailover ​

DELETE /openapi/v1/{omadacId}/sites/{siteId}/vpn/ipsec_failovers/{failoverId}

Deprecated

This operation is deprecated.

Delete IPsec failover

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
failoverIdpathstringyesIPSec failover ID
json
// omada_call_operation
{
  "operationId": "deleteIpsecFailover",
  "params": {
    "siteId": "<siteId>",
    "failoverId": "<failoverId>"
  }
}
Details, permissions and error codes

Delete IPsec failover. This interface has been deprecated. Please use the following interfaces instead: Modify site-to-site VPN by manual. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify

modifyIpsecFailover ​

PATCH /openapi/v1/{omadacId}/sites/{siteId}/vpn/ipsec_failovers/{failoverId}

Deprecated

This operation is deprecated.

Modify IPsec failover

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
failoverIdpathstringyesIPSec failover ID

Request body — application/json (required) — schema IPsecFailover configuration

FieldTypeRequiredDescription
idstringnoID of the IPSec failover.
namestringyesName should contain 1 to 64 characters.
primarystringyesPrimary of the IPSec failover. IPsec VPN can be created using 'Create site-to-site VPN' interface, and ID can be obtained from 'Get site-to-site VPN list' interface.
candidatesarray<string>yesCandidates of the IPSec failover. IPsec VPN can be created using 'Create site-to-site VPN' interface, and ID can be obtained from 'Get site-to-site VPN list' interface.
failbackbooleannoFailback of the IPSec failover.
failbackTimeintegernoFailback time should be within the range of 10–3600s.
json
// omada_call_operation
{
  "operationId": "modifyIpsecFailover",
  "params": {
    "siteId": "<siteId>",
    "failoverId": "<failoverId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify IPsec failover. This interface has been deprecated. Please use the following interfaces instead: Modify site-to-site VPN by manual. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-35718 - The device does not support configuring the VPN IPsec failover.

getVpnPreSharedKey ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/psk

Generate a random pre-shared key for IPSec

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
json
// omada_call_operation
{
  "operationId": "getVpnPreSharedKey",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Generate a random pre-shared key for IPSec.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

getSiteToSiteVpnList ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/site-to-site-vpns

Deprecated

This operation is deprecated.

Get site-to-site VPN list

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
json
// omada_call_operation
{
  "operationId": "getSiteToSiteVpnList",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get site-to-site VPN list. This interface has been deprecated. Please use the following interfaces instead: Get VPN Site to Site summary list and Get site-to-site VPN detail info. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

createSiteToSiteVpn ​

POST /openapi/v1/{omadacId}/sites/{siteId}/vpn/site-to-site-vpns

Deprecated

This operation is deprecated.

Create site-to-site VPN

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema SiteToSiteVpn

FieldTypeRequiredDescription
idstringnoID of the VPN.
namestringyesName should contain 1 to 63 characters.
siteVpnTypeintegeryesSite VPN type should be a value as follows: 0: Auto IPSec; 1: Manual IPSec.
statusbooleanyesStatus of the VPN.
remoteSitestringnoRemote site of the VPN, only for Auto IPSec type.
remoteIpstringnoRemote IP of the VPN, only for Manual IPSec type.
remoteSubnetarray<IPSubnetsVO>noRemote subnet of the VPN, only for Manual IPSec type.
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN, only for Manual IPSec type. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<IPSubnetsVO>noCustom networks of the VPN, only for Manual IPSec type.
preSharedKeystringnoPre-shared key of the VPN, only for Manual IPSec type.
wanarray<string>noWAN list of the VPN, only for Manual IPSec type. WAN port ID can be obtained from 'Get internet basic info' interface.
advancedSettingVpnAdvancedSettingOpenApiVOno(VpnAdvancedSettingOpenApiVO not expanded; call omada_get_schema "VpnAdvancedSettingOpenApiVO")
json
// omada_call_operation
{
  "operationId": "createSiteToSiteVpn",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Create site-to-site VPN. This interface has been deprecated. Please use the following interfaces instead: Create site-to-site VPN by auto or Create site-to-site VPN by manual. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

deleteSiteToSiteVpn ​

DELETE /openapi/v1/{omadacId}/sites/{siteId}/vpn/site-to-site-vpns/{vpnId}

Deprecated

This operation is deprecated.

Delete site-to-site VPN

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "deleteSiteToSiteVpn",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Delete site-to-site VPN. This interface has been deprecated. Please use the following interfaces instead: Delete VPN V2. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify

getSiteToSiteVpnInfo ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/site-to-site-vpns/{vpnId}

Deprecated

This operation is deprecated.

Get site-to-site VPN info

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "getSiteToSiteVpnInfo",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Get site-to-site VPN info. This interface has been deprecated. Please use the following interfaces instead: Get VPN Site to Site summary list and Get site-to-site VPN detail info. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

modifySiteToSiteVpn ​

PATCH /openapi/v1/{omadacId}/sites/{siteId}/vpn/site-to-site-vpns/{vpnId}

Deprecated

This operation is deprecated.

Modify site-to-site VPN

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID

Request body — application/json (required) — schema SiteToSiteVpn

FieldTypeRequiredDescription
idstringnoID of the VPN.
namestringyesName should contain 1 to 63 characters.
siteVpnTypeintegeryesSite VPN type should be a value as follows: 0: Auto IPSec; 1: Manual IPSec.
statusbooleanyesStatus of the VPN.
remoteSitestringnoRemote site of the VPN, only for Auto IPSec type.
remoteIpstringnoRemote IP of the VPN, only for Manual IPSec type.
remoteSubnetarray<IPSubnetsVO>noRemote subnet of the VPN, only for Manual IPSec type.
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN, only for Manual IPSec type. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<IPSubnetsVO>noCustom networks of the VPN, only for Manual IPSec type.
preSharedKeystringnoPre-shared key of the VPN, only for Manual IPSec type.
wanarray<string>noWAN list of the VPN, only for Manual IPSec type. WAN port ID can be obtained from 'Get internet basic info' interface.
advancedSettingVpnAdvancedSettingOpenApiVOno(VpnAdvancedSettingOpenApiVO not expanded; call omada_get_schema "VpnAdvancedSettingOpenApiVO")
json
// omada_call_operation
{
  "operationId": "modifySiteToSiteVpn",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify site-to-site VPN. This interface has been deprecated. Please use the following interfaces instead: Modify site-to-site VPN by auto or Modify site-to-site VPN by manual.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

disconnectSslVpnTunnel ​

POST /openapi/v1/{omadacId}/sites/{siteId}/vpn/stats/sslvpn/tunnel/{tunnelId}/disconnect

Disconnect SSL VPN tunnel

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
tunnelIdpathstringyesSSL VPN tunnel ID
json
// omada_call_operation
{
  "operationId": "disconnectSslVpnTunnel",
  "params": {
    "siteId": "<siteId>",
    "tunnelId": "<tunnelId>"
  }
}
Details, permissions and error codes

Disconnect SSL VPN tunnel by VPN ID.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify

lockSslVpnTunnel ​

POST /openapi/v1/{omadacId}/sites/{siteId}/vpn/stats/sslvpn/tunnel/{tunnelId}/lock

Lock SSL VPN tunnel

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
tunnelIdpathstringyesSSL VPN tunnel ID
json
// omada_call_operation
{
  "operationId": "lockSslVpnTunnel",
  "params": {
    "siteId": "<siteId>",
    "tunnelId": "<tunnelId>"
  }
}
Details, permissions and error codes

Lock SSL VPN tunnel by VPN ID.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify

getVpnUserList ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/userlist/{protocol}

Get VPN user list without page

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
protocolpathstringyes0: L2TP or PPTP; 1: OpenVPN; 2: SSL VPN
json
// omada_call_operation
{
  "operationId": "getVpnUserList",
  "params": {
    "siteId": "<siteId>",
    "protocol": "<protocol>"
  }
}
Details, permissions and error codes

Get VPN user list without page.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

getBriefVpnUserByServerIdList ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/userlist/server/{serverId}

Get brief VPN user list by VPN server ID without page

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
serverIdpathstringyesVPN server ID
json
// omada_call_operation
{
  "operationId": "getBriefVpnUserByServerIdList",
  "params": {
    "siteId": "<siteId>",
    "serverId": "<serverId>"
  }
}
Details, permissions and error codes

Get brief VPN user list by VPN server ID without page.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

batchDeleteVpnUser ​

DELETE /openapi/v1/{omadacId}/sites/{siteId}/vpn/users

Batch delete VPN user

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema BatchSelectVpnUserVO

FieldTypeRequiredDescription
idsarray<string>noID list of batch selected VPN users.
searchKeystringnoThe keywords of the searchIt is effected when [selectAll] is 'true'.
selectAllbooleannoIndicates whether to select all VPN users for deletion. The behavior depends on the combination with 'ids': 1: If selectAll is true and ids is not empty: perform a reverse selection (excluding the specified IDs). 2: If selectAll is true and ids is empty: select all VPN users. 3: If selectAll is false and ids is not empty: select only the specified VPN users in the ID list.
protocolintegernoProtocol should be a value as follows: 0: L2TP or PPTP; 1: OpenVPN, 2: SSL VPN.
json
// omada_call_operation
{
  "operationId": "batchDeleteVpnUser",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Batch delete VPN user.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify

getGridVpnUser ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/users

Deprecated

This operation is deprecated.

Get VPN user list

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
pagequeryintegernoStart page number. Start from 1. (default 1)
pageSizequeryintegernoNumber of entries per page. It should be within the range of 1–1000. (default 100)
searchKeyquerystringnosearchKey
json
// omada_call_operation
{
  "operationId": "getGridVpnUser",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get VPN user list. This interface has been deprecated. Please use the following interfaces instead: Get VPN user list V2. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

createVpnUser ​

POST /openapi/v1/{omadacId}/sites/{siteId}/vpn/users

Deprecated

This operation is deprecated.

Create VPN user

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema VpnUser

FieldTypeRequiredDescription
idstringnoID of the VPN user.
usernamestringnoUsername of the VPN user.
passwordstringnoPassword of the VPN user.
protocolintegernoProtocol should be a value as follows: 0: L2TP or PPTP; 1: openVPN.
clientModeintegernoClient mode should be a value as follows: 0: Client-To-Site, 1: Site-To-Site.
maxConnectionsintegernoMax connections should be within the range of 1–100.
userRemoteSubnetsarray<IPSubnetsVO>noUser remote subnets of the VPN user.
serversarray<string>noServers of the VPN user. Server can be created using 'Create client-to-site VPN server' interface, and server ID can be obtained from 'Get client-to-site VPN server list' interface.
localIpstringnoLocal IP of the VPN user.
serverNamesstringnoServer names of the VPN user.
json
// omada_call_operation
{
  "operationId": "createVpnUser",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Create VPN user. This interface has been deprecated. Please use the following interface instead: Create VPN user V2. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

deleteVpnUser ​

DELETE /openapi/v1/{omadacId}/sites/{siteId}/vpn/users/{userId}

Delete VPN user

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
userIdpathstringyesVPN user ID
json
// omada_call_operation
{
  "operationId": "deleteVpnUser",
  "params": {
    "siteId": "<siteId>",
    "userId": "<userId>"
  }
}
Details, permissions and error codes

Delete VPN user.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

modifyVpnUser ​

PATCH /openapi/v1/{omadacId}/sites/{siteId}/vpn/users/{userId}

Deprecated

This operation is deprecated.

Modify VPN user

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
userIdpathstringyesVPN user ID

Request body — application/json (required) — schema VpnUser

FieldTypeRequiredDescription
idstringnoID of the VPN user.
usernamestringnoUsername of the VPN user.
passwordstringnoPassword of the VPN user.
protocolintegernoProtocol should be a value as follows: 0: L2TP or PPTP; 1: openVPN.
clientModeintegernoClient mode should be a value as follows: 0: Client-To-Site, 1: Site-To-Site.
maxConnectionsintegernoMax connections should be within the range of 1–100.
userRemoteSubnetsarray<IPSubnetsVO>noUser remote subnets of the VPN user.
serversarray<string>noServers of the VPN user. Server can be created using 'Create client-to-site VPN server' interface, and server ID can be obtained from 'Get client-to-site VPN server list' interface.
localIpstringnoLocal IP of the VPN user.
serverNamesstringnoServer names of the VPN user.
json
// omada_call_operation
{
  "operationId": "modifyVpnUser",
  "params": {
    "siteId": "<siteId>",
    "userId": "<userId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify VPN user. This interface has been deprecated. Please use the following interface instead: Modify VPN user V3. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

getVpnUserServerList ​

GET /openapi/v1/{omadacId}/sites/{siteId}/vpn/userServers

Get VPN server list for user

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
json
// omada_call_operation
{
  "operationId": "getVpnUserServerList",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get VPN server list for user.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

uploadVpnCertificateFileV2 ​

POST /openapi/v2/{omadacId}/files/sites/{siteId}/vpn/certificate

Upload VPN certificate file V2

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — multipart/form-data (optional). File field(s): file.

json
// omada_call_operation
{
  "operationId": "uploadVpnCertificateFileV2",
  "params": {
    "siteId": "<siteId>"
  },
  "files": {
    "file": {
      "path": "/path/to/file"
    }
  }
}
Details, permissions and error codes

Upload VPN certificate file.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify

deleteVpnV2 ​

DELETE /openapi/v2/{omadacId}/sites/{siteId}/vpn/{vpnId}

Delete VPN V2

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "deleteVpnV2",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Delete VPN V2.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify

getGridVpnClientV2 ​

GET /openapi/v2/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-clients

Get VPN Client summary list

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
searchKeyquerystringnoFuzzy query parameters, support field name.
filters.vpnTypequerystringnoFilter query parameters, support field vpnType. 0: L2TP; 1: PPTP; 3: OpenVPN; 4: WireGuard;.
sorts.wansquerystringnoSort parameter may be one of asc or desc. Optional parameter. If it is not carried, it means it is not sorted by this field. When there are more than one, the first one takes effect
pagequeryintegernoStart page number. Start from 1. (default 1)
pageSizequeryintegernoNumber of entries per page. It should be within the range of 1–1000. (default 100)
json
// omada_call_operation
{
  "operationId": "getGridVpnClientV2",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get VPN Client summary list.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

createVpnClient ​

POST /openapi/v2/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-clients

Create client-to-site VPN client V2

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema VpnClientConfigOpenApiVO

FieldTypeRequiredDescription
namestringyesName should contain 1 to 63 characters.
statusbooleanyesStatus of the VPN.
vpnTypeintegeryesVpn type should be a value as follows: 0: L2TP; 1: PPTP; 3: OpenVPN; 4: WireGuard.
wansarray<string>yesWAN list of the VPN. WAN port ID can be obtained from 'Get internet basic info' interface.
setupintegeryesWire Guard setup should be a value as follows: 0: file; 1: manual.
tunnelIpstringnoThe local IP address of WireGuard VPN.
servicePortintegeryesService port should be within the range of 1–65535.
mtuintegernoThe MTU of WireGuard VPN should be within the range of 576-1440.
keepAliveintegernoThe keepalive second of WireGuard peer should be within the range of 0-65535.
clientPortintegernoClient port should be within the range of 1–65535.
privateKeystringnoThe private key of WireGuard VPN must have 44 character of base64 and end with '='.
serverPublicKeystringyesThe public key of WireGuard VPN must have 44 character of base64 and end with '='.
dns1stringnoPrimary DNS of the VPN.
dns2stringnoSecondary DNS of the VPN.
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<VpnIPSubnetsOpenApiVO>noCustom networks of the VPN.
remoteIpstringyesRemote IP of the VPN
remoteSubnetarray<string>noRemote subnet of the VPN.
encryptionintegernoEncryption should be a value as follows: 0: Encrypted; 1: Unencrypted; 2: Auto.
preSharedKeystringnoPre-shared key of the VPN.
workingModeintegernoWorking Mode should be a value as follow: 0:NAT 1:Routing.
openVpnModeintegernoOpenVPN mode should be a value as follows: 0: certification; 1: certification+account.
clientUsernamestringnoClient username of the VPN.
clientPasswordstringnoClient password of the VPN.
vpnConfigurationVpnCertificateOpenApiVOyes(VpnCertificateOpenApiVO not expanded; call omada_get_schema "VpnCertificateOpenApiVO")
allowedServerAddressarray<string>noWire Guard allowed server address.
json
// omada_call_operation
{
  "operationId": "createVpnClient",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Create client-to-site VPN client.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

getVpnClientDetailInfo ​

GET /openapi/v2/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-clients/{vpnId}

Get client-to-site VPN client detail info

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "getVpnClientDetailInfo",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Get client-to-site VPN client detail information by VPN ID.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

modifyVpnClient ​

PATCH /openapi/v2/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-clients/{vpnId}

Modify client-to-site VPN client V2

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID

Request body — application/json (required) — schema VpnClientConfigOpenApiVO

FieldTypeRequiredDescription
namestringyesName should contain 1 to 63 characters.
statusbooleanyesStatus of the VPN.
vpnTypeintegeryesVpn type should be a value as follows: 0: L2TP; 1: PPTP; 3: OpenVPN; 4: WireGuard.
wansarray<string>yesWAN list of the VPN. WAN port ID can be obtained from 'Get internet basic info' interface.
setupintegeryesWire Guard setup should be a value as follows: 0: file; 1: manual.
tunnelIpstringnoThe local IP address of WireGuard VPN.
servicePortintegeryesService port should be within the range of 1–65535.
mtuintegernoThe MTU of WireGuard VPN should be within the range of 576-1440.
keepAliveintegernoThe keepalive second of WireGuard peer should be within the range of 0-65535.
clientPortintegernoClient port should be within the range of 1–65535.
privateKeystringnoThe private key of WireGuard VPN must have 44 character of base64 and end with '='.
serverPublicKeystringyesThe public key of WireGuard VPN must have 44 character of base64 and end with '='.
dns1stringnoPrimary DNS of the VPN.
dns2stringnoSecondary DNS of the VPN.
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<VpnIPSubnetsOpenApiVO>noCustom networks of the VPN.
remoteIpstringyesRemote IP of the VPN
remoteSubnetarray<string>noRemote subnet of the VPN.
encryptionintegernoEncryption should be a value as follows: 0: Encrypted; 1: Unencrypted; 2: Auto.
preSharedKeystringnoPre-shared key of the VPN.
workingModeintegernoWorking Mode should be a value as follow: 0:NAT 1:Routing.
openVpnModeintegernoOpenVPN mode should be a value as follows: 0: certification; 1: certification+account.
clientUsernamestringnoClient username of the VPN.
clientPasswordstringnoClient password of the VPN.
vpnConfigurationVpnCertificateOpenApiVOyes(VpnCertificateOpenApiVO not expanded; call omada_get_schema "VpnCertificateOpenApiVO")
allowedServerAddressarray<string>noWire Guard allowed server address.
json
// omada_call_operation
{
  "operationId": "modifyVpnClient",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify client-to-site VPN client.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.
-34679 - This VPN entry has been used by Static Route, and thus the VPN type cannot be changed.
-34680 - This VPN entry has been used by Policy Routing, and thus the VPN type cannot be changed.
-34681 - This VPN entry has been used by Static Route and Policy Routing, and thus the VPN type cannot be changed.
-35705 - This VPN entry has been used by Gateway ACL, and thus the VPN type cannot be changed.

getGridVpnServerV2 ​

GET /openapi/v2/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-servers

Get VPN Server summary list

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
searchKeyquerystringnoFuzzy query parameters, support field name.
filters.vpnTypequerystringnoFilter query parameters, support field vpnType. 0: L2TP; 1: PPTP; 2: IPSec; 3: OpenVPN; 4: WireGuard; 5: SSL VPN.
sorts.wansquerystringnoSort parameter may be one of asc or desc. Optional parameter. If it is not carried, it means it is not sorted by this field. When there are more than one, the first one takes effect
pagequeryintegernoStart page number. Start from 1. (default 1)
pageSizequeryintegernoNumber of entries per page. It should be within the range of 1–1000. (default 100)
json
// omada_call_operation
{
  "operationId": "getGridVpnServerV2",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get VPN Server summary list.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

createVpnServer ​

POST /openapi/v2/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-servers

Create client-to-site VPN server V2

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema VpnServerConfigOpenApiVO

FieldTypeRequiredDescription
namestringyesName should contain 1 to 63 characters.
statusbooleanyesStatus of the VPN.
vpnTypeintegeryesVpn type should be a value as follows: 0: L2TP; 1: PPTP; 2: IPSec; 3: OpenVPN; 4: WireGuard; 5: SSL VPN.
wansarray<string>yesWAN list of the VPN. WAN port ID can be obtained from 'Get internet basic info' interface.
servicePortintegeryesService port should be within the range of 1–65535.
customServerbooleannoEnable custom server.
customServerAddressstringnoWhen parameter [customServer] is enable, parameter [customServerAddress] should be IPv4 address or FQDN.
ipPoolTypeintegernoIP pool type should be a value as follows: 0: Ip Address/Mask; 1: Ip Address Range.
ipPoolStartstringnoThe start IP of the IP pool.
ipPoolEndstringnoThe end IP of the IP pool.
ipPoolIPSubnetsVOno(IPSubnetsVO not expanded; call omada_get_schema "IPSubnetsVO")
mtuintegeryesThe MTU of WireGuard VPN should be within the range of 576-1440.
keepAliveintegeryesThe keepalive second of WireGuard peer should be within the range of 0-65535.
privateKeystringyesThe private key of WireGuard VPN must have 44 character of base64 and end with '='.
dnsStatusbooleannoDns auto status.
dns1stringnoPrimary DNS of the VPN.
dns2stringnoSecondary DNS of the VPN.
clientsarray<ServerWireGuardClientsConfigVO>noWireGuard clients.
tunnelModeintegernoTunnel mode(only for server OpenVPN) should be a value as follows: 0: split; 1: full.
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<VpnIPSubnetsOpenApiVO>noCustom networks of the VPN.
accountAuthbooleannoWhether enable account password of the VPN, only for server OpenVPN.
authModeintegernoAuthentication mode should be a value as follows: 0: Local; 1: LDAP; 2:RADIUS.
radiusSettingRadiusAuthSettingOpenApiVOno(RadiusAuthSettingOpenApiVO not expanded; call omada_get_schema "RadiusAuthSettingOpenApiVO")
ldapSettingVpnBaseAuthSettingOpenApiVOno(VpnBaseAuthSettingOpenApiVO not expanded; call omada_get_schema "VpnBaseAuthSettingOpenApiVO")
ldapProfilestringnoIt is required when parameter [authType] is 1.
serviceTypeintegeryesService type of the Open VPN should be a value as follows: 0: UDP; 1: TCP.
remoteIpstringyesRemote IP of the VPN.
encryptionintegernoEncryption should be a value as follows: 0: Encrypted; 1: Unencrypted; 2: Auto.
preSharedKeystringyesPre-shared key of the VPN.
advancedSettingVpnAdvancedSettingOpenApiVOyes(VpnAdvancedSettingOpenApiVO not expanded; call omada_get_schema "VpnAdvancedSettingOpenApiVO")
nameLockSettingLockSettingOpenApiVOyes(LockSettingOpenApiVO not expanded; call omada_get_schema "LockSettingOpenApiVO")
ipLockSettingLockSettingOpenApiVOyes(LockSettingOpenApiVO not expanded; call omada_get_schema "LockSettingOpenApiVO")
exitAtIdlebooleanyesWhether to exit when idle. It is required when parameter [status] is true.
exitTimeintegernoExit time should be within the range of 5–3600(s). It is required when parameter [exitAtIdle] is true.
totalTrafficbooleannoWhether to proxy all traffic. It is required when parameter [status] is true.
vpnUserListarray<string>yesVPN user ID list.
json
// omada_call_operation
{
  "operationId": "createVpnServer",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Create client-to-site VPN server V2.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

getVpnServerDetailInfo ​

GET /openapi/v2/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-servers/{vpnId}

Get client-to-site VPN server detail info

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "getVpnServerDetailInfo",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Get client-to-site VPN server detail information by VPN ID.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

modifyVpnServer ​

PATCH /openapi/v2/{omadacId}/sites/{siteId}/vpn/client-to-site-vpn-servers/{vpnId}

Modify client-to-site VPN server V2

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID

Request body — application/json (required) — schema VpnServerConfigOpenApiVO

FieldTypeRequiredDescription
namestringyesName should contain 1 to 63 characters.
statusbooleanyesStatus of the VPN.
vpnTypeintegeryesVpn type should be a value as follows: 0: L2TP; 1: PPTP; 2: IPSec; 3: OpenVPN; 4: WireGuard; 5: SSL VPN.
wansarray<string>yesWAN list of the VPN. WAN port ID can be obtained from 'Get internet basic info' interface.
servicePortintegeryesService port should be within the range of 1–65535.
customServerbooleannoEnable custom server.
customServerAddressstringnoWhen parameter [customServer] is enable, parameter [customServerAddress] should be IPv4 address or FQDN.
ipPoolTypeintegernoIP pool type should be a value as follows: 0: Ip Address/Mask; 1: Ip Address Range.
ipPoolStartstringnoThe start IP of the IP pool.
ipPoolEndstringnoThe end IP of the IP pool.
ipPoolIPSubnetsVOno(IPSubnetsVO not expanded; call omada_get_schema "IPSubnetsVO")
mtuintegeryesThe MTU of WireGuard VPN should be within the range of 576-1440.
keepAliveintegeryesThe keepalive second of WireGuard peer should be within the range of 0-65535.
privateKeystringyesThe private key of WireGuard VPN must have 44 character of base64 and end with '='.
dnsStatusbooleannoDns auto status.
dns1stringnoPrimary DNS of the VPN.
dns2stringnoSecondary DNS of the VPN.
clientsarray<ServerWireGuardClientsConfigVO>noWireGuard clients.
tunnelModeintegernoTunnel mode(only for server OpenVPN) should be a value as follows: 0: split; 1: full.
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<VpnIPSubnetsOpenApiVO>noCustom networks of the VPN.
accountAuthbooleannoWhether enable account password of the VPN, only for server OpenVPN.
authModeintegernoAuthentication mode should be a value as follows: 0: Local; 1: LDAP; 2:RADIUS.
radiusSettingRadiusAuthSettingOpenApiVOno(RadiusAuthSettingOpenApiVO not expanded; call omada_get_schema "RadiusAuthSettingOpenApiVO")
ldapSettingVpnBaseAuthSettingOpenApiVOno(VpnBaseAuthSettingOpenApiVO not expanded; call omada_get_schema "VpnBaseAuthSettingOpenApiVO")
ldapProfilestringnoIt is required when parameter [authType] is 1.
serviceTypeintegeryesService type of the Open VPN should be a value as follows: 0: UDP; 1: TCP.
remoteIpstringyesRemote IP of the VPN.
encryptionintegernoEncryption should be a value as follows: 0: Encrypted; 1: Unencrypted; 2: Auto.
preSharedKeystringyesPre-shared key of the VPN.
advancedSettingVpnAdvancedSettingOpenApiVOyes(VpnAdvancedSettingOpenApiVO not expanded; call omada_get_schema "VpnAdvancedSettingOpenApiVO")
nameLockSettingLockSettingOpenApiVOyes(LockSettingOpenApiVO not expanded; call omada_get_schema "LockSettingOpenApiVO")
ipLockSettingLockSettingOpenApiVOyes(LockSettingOpenApiVO not expanded; call omada_get_schema "LockSettingOpenApiVO")
exitAtIdlebooleanyesWhether to exit when idle. It is required when parameter [status] is true.
exitTimeintegernoExit time should be within the range of 5–3600(s). It is required when parameter [exitAtIdle] is true.
totalTrafficbooleannoWhether to proxy all traffic. It is required when parameter [status] is true.
vpnUserListarray<string>yesVPN user ID list.
json
// omada_call_operation
{
  "operationId": "modifyVpnServer",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify client-to-site VPN server V2.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

getGridVpnS2SV2 ​

GET /openapi/v2/{omadacId}/sites/{siteId}/vpn/site-to-site-vpns

Get VPN Site to Site summary list

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
searchKeyquerystringnoFuzzy query parameters, support field name.
filters.vpnTypequerystringnoFilter query parameters, support field vpnType. 2: IPSec; 4: WireGuard; 5: SSL VPN.
sorts.wansquerystringnoSort parameter may be one of asc or desc. Optional parameter. If it is not carried, it means it is not sorted by this field. When there are more than one, the first one takes effect
pagequeryintegernoStart page number. Start from 1. (default 1)
pageSizequeryintegernoNumber of entries per page. It should be within the range of 1–1000. (default 100)
json
// omada_call_operation
{
  "operationId": "getGridVpnS2SV2",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get VPN Site to Site summary list.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

createS2SManualVpn ​

POST /openapi/v2/{omadacId}/sites/{siteId}/vpn/site-to-site-vpns

Create site-to-site VPN by manual

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema VpnSiteToSiteManualConfigOpenApiVO

FieldTypeRequiredDescription
namestringyesName should contain 1 to 63 characters.
statusbooleanyesStatus of the VPN.
vpnTypeintegeryesVpn type should be a value as follows: 2: IPSec; 4: WireGuard.
mtuintegeryesThe MTU of WireGuard VPN should be within the range of 576-1440.
servicePortintegeryesService port should be within the range of 1–65535.
tunnelIpstringyesIP address.
privateKeystringyesThe private key of WireGuard VPN must have 44 character of base64 and end with '='.
peersarray<SiteToSiteManualWgPeerConfigVO>noList of Site-To-Site manual WireGuard peer Configuration.
wansarray<string>yesWAN list of the VPN, only for Manual IPSec type. WAN port ID can be obtained from 'Get internet basic info' interface.
failoverSettingIPsecFailoverSettingOpenApiVOno(IPsecFailoverSettingOpenApiVO not expanded; call omada_get_schema "IPsecFailoverSettingOpenApiVO")
remoteIpstringyesRemote IP of the VPN.
remoteSubnetarray<string>yesRemote subnet of the VPN.
preSharedKeystringyesPre-shared key of the VPN.
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<VpnIPSubnetsOpenApiVO>noCustom networks of the VPN.
existCustomNetworkbooleannoWhether Local Network Type is Custom.
advancedSettingVpnAdvancedSettingOpenApiVOyes(VpnAdvancedSettingOpenApiVO not expanded; call omada_get_schema "VpnAdvancedSettingOpenApiVO")
json
// omada_call_operation
{
  "operationId": "createS2SManualVpn",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Create site-to-site VPN by manual.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

getVpnS2SDetailInfo ​

GET /openapi/v2/{omadacId}/sites/{siteId}/vpn/site-to-site-vpns/{vpnId}

Get site-to-site VPN detail info

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
json
// omada_call_operation
{
  "operationId": "getVpnS2SDetailInfo",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Get site-to-site VPN detail information by VPN ID.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

modifyS2SManualVpn ​

PATCH /openapi/v2/{omadacId}/sites/{siteId}/vpn/site-to-site-vpns/{vpnId}

Modify site-to-site VPN by manual

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID

Request body — application/json (required) — schema VpnSiteToSiteManualConfigOpenApiVO

FieldTypeRequiredDescription
namestringyesName should contain 1 to 63 characters.
statusbooleanyesStatus of the VPN.
vpnTypeintegeryesVpn type should be a value as follows: 2: IPSec; 4: WireGuard.
mtuintegeryesThe MTU of WireGuard VPN should be within the range of 576-1440.
servicePortintegeryesService port should be within the range of 1–65535.
tunnelIpstringyesIP address.
privateKeystringyesThe private key of WireGuard VPN must have 44 character of base64 and end with '='.
peersarray<SiteToSiteManualWgPeerConfigVO>noList of Site-To-Site manual WireGuard peer Configuration.
wansarray<string>yesWAN list of the VPN, only for Manual IPSec type. WAN port ID can be obtained from 'Get internet basic info' interface.
failoverSettingIPsecFailoverSettingOpenApiVOno(IPsecFailoverSettingOpenApiVO not expanded; call omada_get_schema "IPsecFailoverSettingOpenApiVO")
remoteIpstringyesRemote IP of the VPN.
remoteSubnetarray<string>yesRemote subnet of the VPN.
preSharedKeystringyesPre-shared key of the VPN.
networkTypeintegernoNetwork type should be a value as follows: 0: network list; 1: custom networks.
networkListarray<string>noNetwork list of the VPN. Network can be created using 'Create LAN network' interface, and network ID can be obtained from 'Get LAN network list' interface.
customNetworkarray<VpnIPSubnetsOpenApiVO>noCustom networks of the VPN.
existCustomNetworkbooleannoWhether Local Network Type is Custom.
advancedSettingVpnAdvancedSettingOpenApiVOyes(VpnAdvancedSettingOpenApiVO not expanded; call omada_get_schema "VpnAdvancedSettingOpenApiVO")
json
// omada_call_operation
{
  "operationId": "modifyS2SManualVpn",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify site-to-site VPN by manual.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

createS2SAutoVpn ​

POST /openapi/v2/{omadacId}/sites/{siteId}/vpn/site-to-site-vpns/auto

Create site-to-site VPN by auto

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema VpnSiteToSiteAutoConfigOpenApiVO

FieldTypeRequiredDescription
namestringyesName should contain 1 to 63 characters.
statusbooleanyesStatus of the VPN.
vpnTypeintegeryesVpn type should be a value as follows: 2: IPSec; 4: WireGuard.
remoteSitestringyesRemote site of the VPN.
json
// omada_call_operation
{
  "operationId": "createS2SAutoVpn",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Create site-to-site VPN by auto.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

modifyS2SAutoVpn ​

PATCH /openapi/v2/{omadacId}/sites/{siteId}/vpn/site-to-site-vpns/auto/{vpnId}

Modify site-to-site VPN by auto

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID

Request body — application/json (required) — schema VpnSiteToSiteAutoConfigOpenApiVO

FieldTypeRequiredDescription
namestringyesName should contain 1 to 63 characters.
statusbooleanyesStatus of the VPN.
vpnTypeintegeryesVpn type should be a value as follows: 2: IPSec; 4: WireGuard.
remoteSitestringyesRemote site of the VPN.
json
// omada_call_operation
{
  "operationId": "modifyS2SAutoVpn",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify site-to-site VPN by auto.
The interface requires one of the permissions:
Site Settings Manager Modify
Network Config Page Modify
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-33474 - This feature is not supported for the DS-Lite or Map-E WAN connection types.

getGridVpnUserV2 ​

GET /openapi/v2/{omadacId}/sites/{siteId}/vpn/users

Get VPN user list V2

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
pagequeryintegernoStart page number. Start from 1. (default 1)
pageSizequeryintegernoNumber of entries per page. It should be within the range of 1–1000. (default 100)
searchKeyquerystringnosearchKey
filters.protocolquerystringnoFilter query parameters, support field protocol. 0: L2TP or PPTP; 1: OpenVPN; 2: SSL VPN.
filters.clientModequerystringnoFilter query parameters, support field clientMode. 0: Network Extension Mode; 1: Client.
sorts.maxConnectionsquerystringnoSort parameter may be one of asc or desc. Optional parameter. If it is not carried, it means it is not sorted by this field. When there are more than one, the first one takes effect
sorts.validityquerystringnoSort parameter may be one of asc or desc. Optional parameter. If it is not carried, it means it is not sorted by this field. When there are more than one, the first one takes effect
json
// omada_call_operation
{
  "operationId": "getGridVpnUserV2",
  "params": {
    "siteId": "<siteId>"
  }
}
Details, permissions and error codes

Get VPN user list V2.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

createVpnUserV2 ​

POST /openapi/v2/{omadacId}/sites/{siteId}/vpn/users

Deprecated

This operation is deprecated.

Create VPN user V2

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema VpnUserRequest

FieldTypeRequiredDescription
usernamestringyesUsername of the VPN user.
passwordstringyesPassword of the VPN user.
protocolintegernoProtocol should be a value as follows: 0: L2TP or PPTP; 1: openVPN.
clientModeintegernoClient mode should be a value as follows: 0: Client-To-Site, 1: Site-To-Site.
maxConnectionsintegernoMax connections should be within the range of 1–100.
userRemoteSubnetsarray<IPSubnetsVO>noUser remote subnets of the VPN user.
serversarray<string>yesServers of the VPN user. Server can be created using 'Create client-to-site VPN server' interface, and server ID can be obtained from 'Get client-to-site VPN server list' interface.
localIpstringnoLocal IP of the VPN user.
json
// omada_call_operation
{
  "operationId": "createVpnUserV2",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Create VPN user. This interface has been deprecated. Please use the following interfaces instead: Create VPN user V3. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-34601 - Invalid IP address.
-34602 - This VPN policy does not exist.
-34609 - This VPN user already exists. Please add a VPN user with a different username.
-34654 - Missing parameters.
-35702 - VPN user configuration requires VPN server configuration.
-35716 - The device does not support configuring local IP addresses for VPN users.
-35717 - This device does not support configuring OpenVPN users.
-35719 - The device does not support configuring VPN users.

modifyVpnUserV2 ​

PATCH /openapi/v2/{omadacId}/sites/{siteId}/vpn/users/{userId}

Deprecated

This operation is deprecated.

Modify VPN user V2

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
userIdpathstringyesVPN user ID

Request body — application/json (required) — schema VpnUserRequest

FieldTypeRequiredDescription
usernamestringyesUsername of the VPN user.
passwordstringyesPassword of the VPN user.
protocolintegernoProtocol should be a value as follows: 0: L2TP or PPTP; 1: openVPN.
clientModeintegernoClient mode should be a value as follows: 0: Client-To-Site, 1: Site-To-Site.
maxConnectionsintegernoMax connections should be within the range of 1–100.
userRemoteSubnetsarray<IPSubnetsVO>noUser remote subnets of the VPN user.
serversarray<string>yesServers of the VPN user. Server can be created using 'Create client-to-site VPN server' interface, and server ID can be obtained from 'Get client-to-site VPN server list' interface.
localIpstringnoLocal IP of the VPN user.
json
// omada_call_operation
{
  "operationId": "modifyVpnUserV2",
  "params": {
    "siteId": "<siteId>",
    "userId": "<userId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify VPN user. This interface has been deprecated. Please use the following interfaces instead: Modify VPN user V3. This interface had been deprecated.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-34601 - Invalid IP address.
-34602 - This VPN policy does not exist.
-34609 - This VPN user already exists. Please add a VPN user with a different username.
-34654 - Missing parameters.
-35702 - VPN user configuration requires VPN server configuration.
-35716 - The device does not support configuring local IP addresses for VPN users.
-35717 - This device does not support configuring OpenVPN users.
-35719 - The device does not support configuring VPN users.

getVpnServerUserListV3 ​

GET /openapi/v3/{omadacId}/sites/{siteId}/vpn/{vpnId}/users

Get user list by VPN server ID

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
vpnIdpathstringyesVPN ID
filters.clientModequerystringnoFilter query parameters, support field clientMode. 0: Network Extension Mode; 1: Client.
sorts.maxConnectionsquerystringnoSort parameter may be one of asc or desc. Optional parameter. If it is not carried, it means it is not sorted by this field. When there are more than one, the first one takes effect
pagequeryintegernoStart page number. Start from 1. (default 1)
pageSizequeryintegernoNumber of entries per page. It should be within the range of 1–1000. (default 100)
json
// omada_call_operation
{
  "operationId": "getVpnServerUserListV3",
  "params": {
    "siteId": "<siteId>",
    "vpnId": "<vpnId>"
  }
}
Details, permissions and error codes

Get user list by VPN server ID.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only

createVpnUserV3 ​

POST /openapi/v3/{omadacId}/sites/{siteId}/vpn/users

Create VPN user V3

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)

Request body — application/json (required) — schema VpnUserConfigVO

FieldTypeRequiredDescription
usernamestringnoUsername of the VPN user.
passwordstringnoPassword of the VPN user.
protocolintegernoProtocol should be a value as follows: 0: L2TP or PPTP; 1: openVPN; 2: SSL VPN.
serversarray<string>noServers of the VPN user. Server can be created using 'Create client-to-site VPN server' interface, and server ID can be obtained from 'Get client-to-site VPN server list' interface.
clientModeintegernoClient mode should be a value as follows: 0: Client-To-Site, 1: Site-To-Site.
maxConnectionsintegernoMax connections should be within the range of 1–100.
userRemoteSubnetsarray<IPSubnetsVO>noUser remote subnets of the VPN user.
localIpstringnoLocal IP of the VPN user.
groupIdstringnoGroup ID of the SSL VPN user. User group can be created using 'Create SSL VPN user group' interface, and User Group ID can be obtained from 'Get user group list for SSL VPN server' interface.
statusbooleannoStatus of the SSL VPN user.
validitystringnoValidity of the SSL VPN user. The format is Month/Day/Year, for example 08/20/2022.
json
// omada_call_operation
{
  "operationId": "createVpnUserV3",
  "params": {
    "siteId": "<siteId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Create VPN user.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-34601 - Invalid IP address.
-34602 - This VPN policy does not exist.
-34609 - This VPN user already exists. Please add a VPN user with a different username.
-34654 - Missing parameters.
-35702 - VPN user configuration requires VPN server configuration.
-35716 - The device does not support configuring local IP addresses for VPN users.
-35717 - This device does not support configuring OpenVPN users.
-35719 - The device does not support configuring VPN users.

modifyVpnUserV3 ​

PATCH /openapi/v3/{omadacId}/sites/{siteId}/vpn/users/{userId}

Modify VPN user V3

ParameterInTypeRequiredDescription
omadacIdpathstringautoOmada ID (filled in automatically)
siteIdpathstringyesSite ID (site ID or site name)
userIdpathstringyesVPN user ID

Request body — application/json (required) — schema VpnUserConfigVO

FieldTypeRequiredDescription
usernamestringnoUsername of the VPN user.
passwordstringnoPassword of the VPN user.
protocolintegernoProtocol should be a value as follows: 0: L2TP or PPTP; 1: openVPN; 2: SSL VPN.
serversarray<string>noServers of the VPN user. Server can be created using 'Create client-to-site VPN server' interface, and server ID can be obtained from 'Get client-to-site VPN server list' interface.
clientModeintegernoClient mode should be a value as follows: 0: Client-To-Site, 1: Site-To-Site.
maxConnectionsintegernoMax connections should be within the range of 1–100.
userRemoteSubnetsarray<IPSubnetsVO>noUser remote subnets of the VPN user.
localIpstringnoLocal IP of the VPN user.
groupIdstringnoGroup ID of the SSL VPN user. User group can be created using 'Create SSL VPN user group' interface, and User Group ID can be obtained from 'Get user group list for SSL VPN server' interface.
statusbooleannoStatus of the SSL VPN user.
validitystringnoValidity of the SSL VPN user. The format is Month/Day/Year, for example 08/20/2022.
json
// omada_call_operation
{
  "operationId": "modifyVpnUserV3",
  "params": {
    "siteId": "<siteId>",
    "userId": "<userId>"
  },
  "body": "{...}"
}
Details, permissions and error codes

Modify VPN user.
The interface requires one of the permissions:
Site Settings Manager View Only
Network Config Page View Only
The possible error code for the interface in the returned body is one of the following error codes (non generic error codes):
-34601 - Invalid IP address.
-34602 - This VPN policy does not exist.
-34609 - This VPN user already exists. Please add a VPN user with a different username.
-34654 - Missing parameters.
-35702 - VPN user configuration requires VPN server configuration.
-35716 - The device does not support configuring local IP addresses for VPN users.
-35717 - This device does not support configuring OpenVPN users.
-35719 - The device does not support configuring VPN users.

Released under the MIT License. Not affiliated with or endorsed by TP-Link.