VNS3 Controller API (4.8)

Download OpenAPI specification:Download

Cohesive Networks Solutions team: solutions@cohesive.net URL: https://docs.cohesive.net License: Apache 2.0 Terms of Service

Cohesive networks VNS3 API providing complete control of your network's addresses, routes, rules and edge

Authentication

basicAuth

Security Scheme Type HTTP
HTTP Authorization Scheme basic

System Administration

Sysadmin functions for system status, device access and system actions

putRemoteSupport

Enables and disables remote support. Revokes the validity of a remote support keypair generated with postGenerateKeypair

Authorizations:
Request Body schema: application/json
enabled
boolean

True if remote support should be enabled

revoke_credential
boolean

True if remote support credential should be revoked

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /remote_support
https://vns3-host:8000/api/remote_support

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "enabled": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "enabled": true,
  • "revoke_credential": false
}

postGenerateKeypair

Generating a remote support key which can be shared with Cohesive to provide access to the internal of the VNS3 Manager remotely as a "one time key". Once Cohesive has used the key it can be revoked and access terminated.

Authorizations:
Request Body schema: text/plain

Encrypted passphrase file which will be used to generate an X509 key for accessing the VNS3 Manager in support mode. These are generated and owned by Cohesive. Contact support@cohesive.net for an encrypted passphrase file.

string <binary>

Responses

201

SSH key .pem file

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /remote_support/keypair
https://vns3-host:8000/api/remote_support/keypair

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "error":
    {
    }
}

getAPIAccessTokens

Retrieve list of api tokens

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /access/tokens
https://vns3-host:8000/api/access/tokens

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

postCreateAPIAccessToken

Create api token

Authorizations:
Request Body schema: application/json
expires
integer [ 60 .. 31536000 ]
Default: 3600

Number of seconds before expiration

token_name
string

Optional description of token

refreshes
boolean

Token lifetime refreshes when used

Responses

201

Created

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /access/token
https://vns3-host:8000/api/access/token

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "expires": 3600,
  • "token_name": "string",
  • "refreshes": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getAPIAccessToken

Retrieve details for specific access token (including expired ones)

Authorizations:
path Parameters
token_id
required
integer

Token ID

Responses

200

OK

401

Authentication information missing or invalid

404

Not found

default

Error occurred

get /access/token/{token_id}
https://vns3-host:8000/api/access/token/{token_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putExpireAPIAccessToken

Expire api token

Authorizations:
path Parameters
token_id
required
integer

Token ID

Request Body schema: application/json
expired
boolean

Responses

200

OK

401

Authentication information missing or invalid

404

Not found

default

Error occurred

put /access/token/{token_id}
https://vns3-host:8000/api/access/token/{token_id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "expired": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteAPIAccessToken

Delete api token by ID

Authorizations:
path Parameters
token_id
required
integer

Token ID

Responses

200

OK

401

Authentication information missing or invalid

404

Not found

default

Error occurred

delete /access/token/{token_id}
https://vns3-host:8000/api/access/token/{token_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response": "Token deleted"
}

getAccessUrls

Retrieve list of users' access urls, including expired ones

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /access/urls
https://vns3-host:8000/api/access/urls

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

postCreateAccessUrl

Create access URL

Authorizations:
Request Body schema: application/json
expires
integer [ 60 .. 259200 ]
Default: 3600

Number of seconds before expiration

description
string

Responses

201

Created

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /access/url
https://vns3-host:8000/api/access/url

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "expires": 3600,
  • "description": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteAccessUrl

Delete access URL by ID or URL

Authorizations:
Request Body schema: application/json
One of
  • object
  • object
access_url_id
required
integer

ID of access URL

access_url
string

Responses

200

OK

401

Authentication information missing or invalid

404

Not found

default

Error occurred

delete /access/url
https://vns3-host:8000/api/access/url

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "access_url_id": 0,
  • "access_url": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response": "Access url deleted"
}

getAccessUrl

Retrieve details for specific access url (including expired ones)

Authorizations:
path Parameters
access_url_id
required
integer

Access URL ID

Responses

200

OK

401

Authentication information missing or invalid

404

Not found

default

Error occurred

get /access/url/{access_url_id}
https://vns3-host:8000/api/access/url/{access_url_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putExpireAccessUrl

Expire access URL

Authorizations:
path Parameters
access_url_id
required
integer

Access URL ID

Request Body schema: application/json
expired
boolean

Responses

200

OK

401

Authentication information missing or invalid

404

Not found

default

Error occurred

put /access/url/{access_url_id}
https://vns3-host:8000/api/access/url/{access_url_id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "expired": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteAccessUrlByID

Delete access url by ID

Authorizations:
path Parameters
access_url_id
required
integer

Access URL ID

Responses

200

OK

401

Authentication information missing or invalid

404

Not found

default

Error occurred

delete /access/url/{access_url_id}
https://vns3-host:8000/api/access/url/{access_url_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response": "Access url deleted"
}

getCloudData

Returns cloud-specific data depending upon cloud type. Supports EC2 and GCE. More clouds coming soon.

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /cloud_data
https://vns3-host:8000/api/cloud_data

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putServerAction

Server action for VNS3 controller. Currently only reboot supported.

Authorizations:
Request Body schema: application/json
reboot
boolean

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /server
https://vns3-host:8000/api/server

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "reboot": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getStatus

Describe Runtime status details

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /status
https://vns3-host:8000/api/status

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getSystemStatus

Provides information about the underlying appliance; memory, cpu, disk space, etc

Authorizations:
query Parameters
timestamp
integer

Unix timestamp

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /status/system
https://vns3-host:8000/api/status/system

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getTaskStatus

Describe task status details

Authorizations:
Request Body schema: application/json
token
string

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /status/task
https://vns3-host:8000/api/status/task

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "token": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

Configuration

VNS3 device runtime configuration management such as SSL certs and keyset generation

putUpdateAdminUI

Update Admin UI settings. Enable/Disable and set credentials.

Authorizations:
Request Body schema: application/json
enabled
boolean
admin_username
string
admin_password
string

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /admin_ui
https://vns3-host:8000/api/admin_ui

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "enabled": true,
  • "admin_username": "vnscubed_user",
  • "admin_password": "supersecurepassword"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putUpdateApiPassword

Allows you to change the API password/secret key. To change the Web UI password (or username) use PUT admin_ui.

Authorizations:
Request Body schema: application/json
password
string

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /api_password
https://vns3-host:8000/api/api_password

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "password": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getConfig

Describe Runtime Configuration for VNS3 Controller

Authorizations:

Responses

200

Get runtime Configuration details

401

Authentication information missing or invalid

default

Error occurred

get /config
https://vns3-host:8000/api/config

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putConfig

Provides general information about the manager's topology, license state and checksums and allows you to set the topology name.

Authorizations:
Request Body schema: application/json
topology_name
string

Specifies a text name to display at the top of the web ui and in the desc_config API response

ntp_hosts
string

Single or space separated list of ntp server IPs or dns names. Using this argument overwrites the existing Configuration.

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /config
https://vns3-host:8000/api/config

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "topology_name": "Cohesive Test Topology"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getRuntime

Alias for GET /config

Authorizations:

Responses

200

Get runtime Configuration details

401

Authentication information missing or invalid

default

Error occurred

get /runtime
https://vns3-host:8000/api/runtime

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putUploadSSLKeypair

Upload new SSL cert and key pair

Authorizations:
Request Body schema: application/json
cert
required
string
key
required
string

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /system/ssl/keypair
https://vns3-host:8000/api/system/ssl/keypair

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "cert": "string",
  • "key": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response": "Valid key/cert files uploaded"
}

putInstallSSLKeypair

Install new SSL cert and key pair

Authorizations:

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /system/ssl/install
https://vns3-host:8000/api/system/ssl/install

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getSSLInstallStatus

Get status for ssl installation task

Authorizations:
path Parameters
uuid
required
string

uuid of resource

Responses

200

OK

401

Authentication information missing or invalid

404

Not found

default

Error occurred

get /system/ssl/install/{uuid}
https://vns3-host:8000/api/system/ssl/install/{uuid}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getKeyset

Returns status of whether cryptographic credentials, which are used to provide overlay devices access to the topology, have been generated.

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /keyset
https://vns3-host:8000/api/keyset

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putKeyset

Generates or fetches cryptographic credentials which are used to provide overlay devices access to the topology. Keyset generation happens in background. Poll on GET /keyset in_progress value.

Authorizations:
Request Body schema: application/json
source
string

If provided, fetches keyset from source manager

token
required
string

Arbitrary key used to help randomize the checksum, it must be identical for each manager in a topology.

topology_name
string

Name for the topology

sealed_network
boolean

UPDATEME

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /keyset
https://vns3-host:8000/api/keyset

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "source": "string",
  • "token": "string",
  • "topology_name": "string",
  • "sealed_network": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

Licensing

VNS3 Licensing configuration and details

getLicense

Get license details

Authorizations:

Responses

200

Get license topology details

401

Authentication information missing or invalid

default

Error occurred

get /license
https://vns3-host:8000/api/license

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

uploadLicense

License a VNS3 Controller to be a part of a specific topology. Must not be licensed already.

Authorizations:
Request Body schema: text/plain

License file

string <binary>

Responses

200

Upload license response

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /license
https://vns3-host:8000/api/license

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putSetLicenseParameters

Set and accept license parameters. Triggers reboot. Irreversible operation.

Authorizations:
Request Body schema: application/json
subnet
string

Specifies the CIDR of the virtual network created for use with the VNS3 Manager

managers
string

Whitespace delimited address string in the subnet to use for the VNS3 Controllers' virtual interfaces.

asns
string

Whitespace delimited string of ASNs (autonomous system numbers) corresponding to the order of the controllers

clients
string

Comma delimited, or hyphenated sequence of addresses for use as client addresses in the virtual network.

my_manager_vip
string

IPAddress that must be allocated from the subnet, and be the same for all controllers

default
required
boolean
Default: false

Specifices whether to use defualt topology addressing as specified by the license

Responses

200

Put new license parameters for topology

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /license/parameters
https://vns3-host:8000/api/license/parameters

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "subnet": "string",
  • "managers": "string",
  • "asns": "string",
  • "clients": "string",
  • "my_manager_vip": "string",
  • "default": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putLicenseUpgrade

Upload new license to controller

Authorizations:
Request Body schema: text/plain

License file

string <binary>

Responses

200

New license parameters

401

Authentication information missing or invalid

default

Error occurred

put /license/upgrade
https://vns3-host:8000/api/license/upgrade

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

IPsec

Control and manage your IPSec tunnels

getIpsecStatus

Describe ipsec tunnels status

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /status/ipsec
https://vns3-host:8000/api/status/ipsec

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getLinkHistory

Provides information about the connection history of the subnet or tunnel

Authorizations:
query Parameters
remote
string

Address string in CIDR format to display link history to a remote endpoint.

local
string

Address string in CIDR format which will display status of the local route

tunnelid
integer

Will display link history of just the tunnel specified, which may be only one tunnel to a remote endpoint.

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /status/link_history
https://vns3-host:8000/api/status/link_history

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getIpsec

Get details for all IPsec endpoints/subnets

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /ipsec
https://vns3-host:8000/api/ipsec

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postRestartIpsecAction

Restart ipsec subystem

Authorizations:
Request Body schema: application/json
restart
required
boolean

Restarts target system on server if true

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /ipsec
https://vns3-host:8000/api/ipsec

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "restart": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putIpsecConfig

Edit Ipsec Configuration on device. Note, This is device wide and must be set before any remote endpoint definitions are created. If it needs to be changed, all remote endpoint information and tunnel information must be deleted first.

Authorizations:
Request Body schema: application/json
ipsec_local_ipaddress
required
string

This is effectively a "cloud NAT" address, since you don't know what your LAN address will be between invocations in a cloud, this address can be used by remote endpoints as your "behind a NAT" address, sometimes referred to Peer or IKE ID, if needed (e.g. Watchguard or Juniper). It can ALSO be thought of even more simply as an IPsec "loopback" interface that you can use to terminate traffic.

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /ipsec
https://vns3-host:8000/api/ipsec

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ipsec_local_ipaddress": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postCreateIpsecEndpoint

Create IPsec connection to the defined remote gateway

Authorizations:
Request Body schema: application/json
name
required
string

Name for the connection.

ipaddress
required
string

IP of the remote gateway

secret
required
string

Pre-shared key

pfs
boolean
Default: true

Perfect Forward Secrecy if true, disables if false.

ike_version
integer
Default: 1
Enum: 1 2

Version for IKE algorithm

nat_t_enabled
boolean
Default: true

True if you want encapsulated IPsec protocol to this gateway

extra_config
string

Additional optionals for connection such as 'phase1=aes256_gcm-sha2_256-dh14 phase2=aes256_gcm'

private_ipaddress
string

Internal NAT address of the remote gateway

gre
boolean

True if GRE is being used for the specific endpoint

gre_interface_address
string

Interface for GRE in /30 format

vpn_type
string

policy, gre, vti

route_based_int_address
string
route_based_local
string
route_based_remote
string

Responses

200

Created

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /ipsec/endpoints
https://vns3-host:8000/api/ipsec/endpoints

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "ipaddress": "string",
  • "secret": "string",
  • "pfs": true,
  • "ike_version": 1,
  • "nat_t_enabled": true,
  • "extra_config": "string",
  • "private_ipaddress": "string",
  • "gre": true,
  • "gre_interface_address": "string",
  • "vpn_type": "string",
  • "route_based_int_address": "string",
  • "route_based_local": "string",
  • "route_based_remote": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getIpsecEndpoint

Get IPsec endpoint information

Authorizations:
path Parameters
endpoint_id
required
integer >= 0

ID for IPsec endpoint

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /ipsec/endpoints/{endpoint_id}
https://vns3-host:8000/api/ipsec/endpoints/{endpoint_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putEditIpsecEndpoint

Edit IPsec connection

Authorizations:
path Parameters
endpoint_id
required
integer >= 0

ID for IPsec endpoint

Request Body schema: application/json
name
string

Name for the connection.

ipaddress
string

IP of the remote gateway

secret
string

Pre-shared key

pfs
boolean

Perfect Forward Secrecy if true, disables if false.

ike_version
integer
Enum: 1 2

Version for IKE algorithm

nat_t_enabled
boolean

True if you want encapsulated IPsec protocol to this gateway

extra_config
string

Additional optionals for connection such as 'phase1=aes256_gcm-sha2_256-dh14 phase2=aes256_gcm'

private_ipaddress
string

Internal NAT address of the remote gateway

gre
boolean

True if GRE is being used for the specific endpoint

gre_interface_address
string

Interface address for GRE

vpn_type
string

policy, gre, vti

route_based_int_address
string
route_based_local
string
route_based_remote
string

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /ipsec/endpoints/{endpoint_id}
https://vns3-host:8000/api/ipsec/endpoints/{endpoint_id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "ipaddress": "string",
  • "secret": "string",
  • "pfs": true,
  • "ike_version": 1,
  • "nat_t_enabled": true,
  • "extra_config": "string",
  • "private_ipaddress": "string",
  • "gre": true,
  • "gre_interface_address": "string",
  • "vpn_type": "string",
  • "route_based_int_address": "string",
  • "route_based_local": "string",
  • "route_based_remote": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteIpsecEndpoint

Delete IPsec endpoint

Authorizations:
path Parameters
endpoint_id
required
integer >= 0

ID for IPsec endpoint

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

delete /ipsec/endpoints/{endpoint_id}
https://vns3-host:8000/api/ipsec/endpoints/{endpoint_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postCreateIpsecEndpointTunnel

Create IPsec endpoint tunnel

Authorizations:
path Parameters
endpoint_id
required
integer >= 0

ID for IPsec endpoint

Request Body schema: application/json
description
string
remote_subnet
required
string

Remote subnet for tunnel in CIDR notation

local_subnet
string

Local subnet for tunnel in CIDR notation

ping_ipaddress
string

Exo Ping feature - remote IP destination of ping

ping_interval
integer

Exo Ping feature - periodicy of the ping in seconds

ping_interface
string

Exo Ping feature - what network interface IP of the VNS3 controller to use as the source of ping

enabled
boolean
Default: true

Disables tunnel if set to false

Responses

200

Created

400

Bad request

401

Authentication information missing or invalid

403

Permission denied. Max number of tunnels reach

default

Error occurred

post /ipsec/endpoints/{endpoint_id}/tunnels
https://vns3-host:8000/api/ipsec/endpoints/{endpoint_id}/tunnels

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "description": "string",
  • "remote_subnet": "string",
  • "local_subnet": "string",
  • "ping_ipaddress": "string",
  • "ping_interval": 0,
  • "ping_interface": "string",
  • "enabled": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putEditIpsecEndpointTunnel

Edit IPsec endpoint tunnel

Authorizations:
path Parameters
endpoint_id
required
integer >= 0

ID for IPsec endpoint

tunnel_id
required
integer

ID for tunnel

Request Body schema: application/json
bounce
boolean
Default: false

Resets the IPsec connection for this specific tunnel

description
string
remote_subnet
string

Remote subnet for tunnel in CIDR notation

local_subnet
string

Local subnet for tunnel in CIDR notation

ping_ipaddress
string

Exo Ping feature - remote IP destination of ping

ping_interval
integer

Exo Ping feature - periodicy of the ping in seconds

ping_interface
string

Exo Ping feature - what network interface IP of the VNS3 controller to use as the source of ping

enabled
boolean

Disables tunnel if set to false

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /ipsec/endpoints/{endpoint_id}/tunnels/{tunnel_id}
https://vns3-host:8000/api/ipsec/endpoints/{endpoint_id}/tunnels/{tunnel_id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "bounce": false,
  • "description": "string",
  • "remote_subnet": "string",
  • "local_subnet": "string",
  • "ping_ipaddress": "string",
  • "ping_interval": 0,
  • "ping_interface": "string",
  • "enabled": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteIpsecEndpointTunnel

Delete IPsec tunnel

Authorizations:
path Parameters
endpoint_id
required
integer >= 0

ID for IPsec endpoint

tunnel_id
required
integer

ID for tunnel

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

delete /ipsec/endpoints/{endpoint_id}/tunnels/{tunnel_id}
https://vns3-host:8000/api/ipsec/endpoints/{endpoint_id}/tunnels/{tunnel_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

Firewall

Functions for managing Firewall rules, subgroups (chains) and IPSets

getFirewallRules

Get a list of current firewall rules

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /firewall/rules
https://vns3-host:8000/api/firewall/rules

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

postCreateFirewallRule

Adds a firewall rule to the VNS3 Controller's firewall

Authorizations:
Request Body schema: application/json
rule
required
string

New firewall rule string that needs to be compatible with a Linux "iptables" statement

position
integer
Default: -1

Position which the rule will be inserted in the list of Firewall rules. Default is -1, which will post as the next rule in the list

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /firewall/rules
https://vns3-host:8000/api/firewall/rules

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "rule": "MACRO_CUST -o eth0 -s 10.199.2.0/24 -j MASQUERADE",
  • "position": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteFirewallRuleByRule

Delete firewall rule

Authorizations:
Request Body schema: application/json
rule
required
string

Rule to be deleted

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

delete /firewall/rules
https://vns3-host:8000/api/firewall/rules

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "rule": "MACRO_CUST -o eth0 -s 10.199.2.0/24 -j MASQUERADE"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteFirewallRuleByPosition

Delete Firewall Rule

Authorizations:
path Parameters
position
required
integer

index position for firewall rule, 0 is first

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

delete /firewall/rules/{position}
https://vns3-host:8000/api/firewall/rules/{position}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getFirewallRuleSubgroups

Get a list of current firewall rules at subgroup (chained rules)

Authorizations:
query Parameters
name
string

name of resource

verbose
boolean
Default: true

True for verbose output

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /firewall/rules/subgroup
https://vns3-host:8000/api/firewall/rules/subgroup

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

postCreateFirewallSubgroupRule

Create a new firewall subgroup rules (rule chain)

Authorizations:
Request Body schema: application/json
rules
string

Chained firewall rules seperated by \n

name
string

'name of the subgroup. Must be valid chain that begins with one of the following: PRE_C_, PST_C_, FWD_C_, INP_C_, OUT_C_.'

position
integer

Position which the chain will be inserted in the list of Firewall rules. Default is 0, which is first in the ruleset

flush
boolean
Default: true

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /firewall/rules/subgroup
https://vns3-host:8000/api/firewall/rules/subgroup

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "rules": "string",
  • "name": "string",
  • "position": 0,
  • "flush": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putReinitializeSubgroups

Reinitialize Firewall subgroups

Authorizations:
Request Body schema: application/json
reinitialize
boolean

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

put /firewall/rules/subgroup
https://vns3-host:8000/api/firewall/rules/subgroup

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "reinitialize": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "error":
    {
    }
}

deleteFirewallSubgroup

Delete Firewall subgroup by name or rules

Authorizations:
Request Body schema: application/json
rules
string

Chained firewall rules seperated by "\n"

name
string

'name of the FWSet. Must be valid chain that begins with one of the following: NETS_, PORTS_, LIST_.'

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

404

Not found

410

Resource gone

default

Error occurred

delete /firewall/rules/subgroup
https://vns3-host:8000/api/firewall/rules/subgroup

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "rules": "string",
  • "name": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getFirewallFWSets

Get a list of current firewall rule sets. These are IPsets that allow for faster matching of rules against IPs. See http://ipset.netfilter.org for more details.

Authorizations:
query Parameters
name
string

name of resource

verbose
boolean
Default: true

True for verbose output

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /firewall/fwsets
https://vns3-host:8000/api/firewall/fwsets

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

postCreateFirewallFWSet

Create a new firewall FWSet for fast rule matching

Authorizations:
Request Body schema: application/json
rules
string

Chained firewall rules seperated by "\n"

name
string

'name of the FWSet. Must be valid chain that begins with one of the following: NETS_, PORTS_, LIST_.'

flush
boolean
Default: true

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /firewall/fwsets
https://vns3-host:8000/api/firewall/fwsets

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "rules": "string",
  • "name": "string",
  • "flush": true
}

Response samples

Content type
application/json
Example
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putReinitializeFWSets

Reinitialize all Firewall FWSet

Authorizations:
Request Body schema: application/json
reinitialize
boolean

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

put /firewall/fwsets
https://vns3-host:8000/api/firewall/fwsets

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "reinitialize": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "error":
    {
    }
}

deleteFirewallFWSet

Delete Firewall FWSet by name or rules

Authorizations:
Request Body schema: application/json
rules
string

Chained firewall rules seperated by "\n"

name
string

'name of the FWSet. Must be valid chain that begins with one of the following: NETS_, PORTS_, LIST_.'

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

delete /firewall/fwsets
https://vns3-host:8000/api/firewall/fwsets

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "rules": "string",
  • "name": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

Routing

Control the network route table

getRoutes

Describes routes that this manager has access to via its network interfaces (virtual or otherwise). If advertized, other VNS3 Controllers will receive the route instantly. Network clients will receive it when they get their next route push, which is normally on a re-connect or in neartime if they use the VNS3 Routing agent on their cloud servers. Remote endpoints (other data centers) would not receive the route unless specified as part of their IPsec Configuration AND the Configuration of such a tunnel on the VNS3 controller.

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /routes
https://vns3-host:8000/api/routes

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postCreateRoute

Pushes routes that this manager has access to via its network interfaces (virtual or otherwise)

Authorizations:
Request Body schema: application/json
cidr
required
string

CIDR of a route that the VNS3 Controller has access to that it wants to publish throughout the Routing tables of the overlay network

description
string
interface
string

Sets the interface where this route will be advertised.

gateway
string

If interface is set, a specific gateway address reachable from that interface

tunnel
integer

numerical reference for the GRE endpoint id (must provide either tunnel OR interface)

advertise
boolean

advertise route to overlay network

metric
integer

weight for route

Responses

200

Created

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /routes
https://vns3-host:8000/api/routes

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "cidr": "172.31.3.0/24",
  • "gateway": "172.31.3.1",
  • "metric": 0,
  • "interface": "eth0"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteRoute

Delete Route

Authorizations:
path Parameters
route_id
required
integer >= 0

ID for Route

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

delete /routes/{route_id}
https://vns3-host:8000/api/routes/{route_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

Overlay Network

Configure and control encrypted overlay network

getClientsStatus

Describe overlay clients

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /status/clients
https://vns3-host:8000/api/status/clients

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getConnectedSubnets

Provides information about any connected subnets.

Authorizations:
query Parameters
extended_output
boolean
Default: false

Receive verbose information about resources

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /status/connected_subnets
https://vns3-host:8000/api/status/connected_subnets

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

getClientpacks

Returns detailed information about all of the clientpacks in the topology. If manager's are properly peered, this information can come from any of the controllers.

Authorizations:
query Parameters
sorted
boolean
Default: false

Sort resources

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /clientpacks
https://vns3-host:8000/api/clientpacks

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putUpdateClientpacks

For bulk set of the enabled (true/false) state for all clientpacks and the checked_out (true/false) state for all clientpacks. This enables a variety of work flows by calling these functions after key generation, but before general provisioning of addresses to devivces

Authorizations:
Request Body schema: application/json
enabled
boolean

Enable or disable clientpacks.

checked_out
boolean

Update whether clientpacks are checked out and thus unavailable

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

put /clientpacks
https://vns3-host:8000/api/clientpacks

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "enabled": true,
  • "checked_out": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postAddClientpacks

Incrementally add new clientpacks for use

Authorizations:
Request Body schema: application/json
requested_ips
required
string

CSV of IP addresses to be used for new clientpacks

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /clientpacks/add_clientpacks
https://vns3-host:8000/api/clientpacks/add_clientpacks

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "requested_ips": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response": "string"
}

getClientpack

Returns detailed information about all of the clientpacks in the topology. If manager's are properly peered, this information can come from any of the controllers.

Authorizations:
path Parameters
clientpack_name
required
string

name of clientpack

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /clientpacks/{clientpack_name}
https://vns3-host:8000/api/clientpacks/{clientpack_name}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getDownloadClientpack

Returns clientpack file. Clientpacks are files with the necessary information and credentials for an overlay client to be connected to the VNS3 topology

Authorizations:
query Parameters
name
required
string

name of clientpack. Typical IP address with underscores. e.g. 100_127_255_200.

fileformat
required
string

One of tarball (default), zip, conf, ovpn

Responses

200

Clientpack file

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /clientpack
https://vns3-host:8000/api/clientpack

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "error":
    {
    }
}

putClientpack

Change properties of clientpacks; enabling or disabling, checking in or out, or regenerating

Authorizations:
Request Body schema: application/json
One of
  • object
  • object
  • object
name
required
string

Name of the clientpack (IP snake case)

enabled
required
boolean

Enable or disable clientpack.

checked_out
boolean

Update whether clientpack is checked out and thus unavailable

regenerate
boolean

Regenerate clientpack file. Returns a task token in the response.

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

put /clientpack
https://vns3-host:8000/api/clientpack

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "enabled": true,
  • "checked_out": true,
  • "regenerate": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postCalcNextClientpack

Get next sequential client pack. Provides sufficient information to call GET /clientpack. Note, Using this resource against multiple controllers in the same topology could cause distribution of the same clientpack to multiple overlay devices which is not allowed.

Authorizations:
Request Body schema: application/json
low_ip
string

Set the lower bound for the resulting IP

high_ip
string

Set the upper bound for the resulting IP

include_disabled
boolean
Default: false

Allows clientpack allocation from the disabled pool, for workflows where all clientpacks are disabled at the start.

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /clientpacks/next_available
https://vns3-host:8000/api/clientpacks/next_available

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "low_ip": "string",
  • "high_ip": "string",
  • "include_disabled": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postResetClient

For resetting the connection of a client to a VNS3 Controller

Authorizations:
Request Body schema: application/json
name
required
string

Name of the clientpack as returned by the "desc_clientpacks" call

disconnect
boolean
Default: true

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /client/reset
https://vns3-host:8000/api/client/reset

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "disconnect": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postResetAllClients

For resetting all of the connections of clients connected to the VNS3 Controller

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /clients/reset_all
https://vns3-host:8000/api/clients/reset_all

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putDisconnectClientpack

Force disconnect client for named clientpack

Authorizations:
path Parameters
clientpack_name
required
string

name of clientpack

Request Body schema: application/json
disconnect
required
boolean

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

put /clientpack/{clientpack_name}
https://vns3-host:8000/api/clientpack/{clientpack_name}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "disconnect": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postClientpackTag

For tagging individual clientpacks.

Authorizations:
path Parameters
clientpack_name
required
string

name of clientpack

Request Body schema: application/json
key
required
string

Alphanumeric characters allowed in snake_case or kebab-case

value
required
string

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /clientpack/{clientpack_name}
https://vns3-host:8000/api/clientpack/{clientpack_name}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "key": "string",
  • "value": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteClientpackTag

For deleting individual clientpack tags

Authorizations:
path Parameters
clientpack_name
required
string

name of clientpack

Request Body schema: application/json
key
required
string

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

delete /clientpack/{clientpack_name}
https://vns3-host:8000/api/clientpack/{clientpack_name}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "key": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

Peering

Manage VNS3 controller peering for mesh topologies

getPeeringStatus

Provides the status of whether a Controller is peered to other Controllers

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /peering
https://vns3-host:8000/api/peering

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putSelfPeeringId

Sets the Controller ID of a controller so that it can be peered within a topology

Authorizations:
Request Body schema: application/json
id
required
integer

Cannot be the same as the id of another manager in the topology, and cannot be greater than the number of controllers in the topology

force
boolean

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /peering/self
https://vns3-host:8000/api/peering/self

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": 0,
  • "force": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "peered": true,
  • "id": 1,
  • "managers":
    {
    }
}

postPeer

Creates a peering relationship from a manager to another manager. The peering call is unidirectional. Reciprocal calls must be made to peer two controllers together and complete the peering process.

Authorizations:
Request Body schema: application/json
id
required
integer

Manager ID as an integer of the the manager you are peering with, NOT the id of the one you are calling from

name
required
string

IP address or host name of the one you are peering with.

overlay_mtu
string

link MTU between 500 and 4800. Defaults to 1500

force
boolean

Setting false will NOT finalize the peering operation. A peer "reconfigure" call would then be required. Default is true

Responses

200

Created

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /peering/peers
https://vns3-host:8000/api/peering/peers

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": 2,
  • "name": "192.168.1.230"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deletePeer

Breaks a peering relationship from a manager to another manager. The peering call is unidirectional. Reciprocal calls must be made to fully break the peer relationship.

Authorizations:
path Parameters
peer_id
required
integer

Peer ID for controller peer

Responses

200

Delete Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

delete /peering/peers/{peer_id}
https://vns3-host:8000/api/peering/peers/{peer_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putPeer

Edits a peering relationship from a manager to another manager. The peering call is unidirectional. Reciprocal calls must be made to peer two controllers together and complete the peering process.

Authorizations:
path Parameters
peer_id
required
integer

Peer ID for controller peer

Request Body schema: application/json
name
string

IP address or host name of the one you are peering with.

overlay_mtu
string

link MTU between 500 and 4800

force
boolean

Setting false will NOT finalize the peering operation. A peer "reconfigure" call would then be required. Default is true

Responses

200

Updated

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /peering/peers/{peer_id}
https://vns3-host:8000/api/peering/peers/{peer_id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "overlay_mtu": "string",
  • "force": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

Interfaces

Collection for viewing and editing virtual and system interfaces

getInterfaces

(BETA) Describe all physical and virtual interfaces, both system and edge GRE interfaces

Authorizations:

Responses

200

Created

401

Authentication information missing or invalid

default

Error occurred

get /interfaces
https://vns3-host:8000/api/interfaces

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

postActionInterfaces

Take action on interfaces. Only one action can be taken per request.

Authorizations:
Request Body schema: application/json
discover_new_primary_adapters
boolean

Run discovery for new primary adapters

discover_ips
boolean
manage_overlay_interfaces
boolean

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /interfaces/action
https://vns3-host:8000/api/interfaces/action

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "discover_ips": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

getSystemInterfaces

Describe system interfaces

Authorizations:

Responses

200

Created

401

Authentication information missing or invalid

default

Error occurred

get /interfaces/system
https://vns3-host:8000/api/interfaces/system

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

postCreateSystemInterface

Create new system interface

Authorizations:
Request Body schema: application/json
name
required
string
description
string
ip_internal
string
mtu
integer
enabled
boolean
mask_bits
string
gateway
string Nullable
system_default
boolean
ip_external
string Nullable

Responses

200

Created

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /interfaces/system
https://vns3-host:8000/api/interfaces/system

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "description": "string",
  • "ip_internal": "string",
  • "mtu": 0,
  • "enabled": true,
  • "mask_bits": "string",
  • "gateway": "string",
  • "system_default": true,
  • "ip_external": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getSystemInterfaceDetails

Get interface details by name

Authorizations:
path Parameters
interface_id
required
string

ID for system interface

Responses

200

Accepted

401

Authentication information missing or invalid

404

Not found

default

Error occurred

get /interfaces/system/{interface_id}
https://vns3-host:8000/api/interfaces/system/{interface_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putUpdateSystemInterface

Update system interface

Authorizations:
path Parameters
interface_id
required
string

ID for system interface

Request Body schema: application/json
name
string
description
string
ip_internal
string
mtu
integer
enabled
boolean
mask_bits
string
gateway
string Nullable
system_default
boolean
ip_external
string Nullable

Responses

200

Updated

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /interfaces/system/{interface_id}
https://vns3-host:8000/api/interfaces/system/{interface_id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "description": "string",
  • "ip_internal": "string",
  • "mtu": 0,
  • "enabled": true,
  • "mask_bits": "string",
  • "gateway": "string",
  • "system_default": true,
  • "ip_external": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteSystemInterface

Delete System Interface

Authorizations:
path Parameters
interface_id
required
string

ID for system interface

Responses

200

Accepted

401

Authentication information missing or invalid

404

Not found

default

Error occurred

delete /interfaces/system/{interface_id}
https://vns3-host:8000/api/interfaces/system/{interface_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getEdgeGREEndpoints

Describe system edge GRE endpoints

Authorizations:

Responses

200

Created

401

Authentication information missing or invalid

default

Error occurred

get /interfaces/edge_gre
https://vns3-host:8000/api/interfaces/edge_gre

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

postCreateGREEndpoint

Create new edge GRE interface

Authorizations:
Request Body schema: application/json
endpoint_name
string
description
string
ip_internal
string
mtu
integer
enabled
boolean
Default: false
mask_bits
string
system_default
boolean
Default: false
local_connection_ip
string
remote_connection_ip
string
ttl
integer
Default: 255

Responses

200

Created

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /interfaces/edge_gre
https://vns3-host:8000/api/interfaces/edge_gre

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "endpoint_name": "string",
  • "description": "string",
  • "ip_internal": "string",
  • "mtu": 0,
  • "enabled": false,
  • "mask_bits": "string",
  • "system_default": false,
  • "local_connection_ip": "string",
  • "remote_connection_ip": "string",
  • "ttl": 255
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getGREEndpointDetails

Get GRE interface details by id or name

Authorizations:
path Parameters
interface_id
required
string

ID for system interface

Responses

200

Accepted

401

Authentication information missing or invalid

404

Not found

default

Error occurred

get /interfaces/edge_gre/{interface_id}
https://vns3-host:8000/api/interfaces/edge_gre/{interface_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putUpdateGREEndpoint

Update GRE interface

Authorizations:
path Parameters
interface_id
required
string

ID for system interface

Request Body schema: application/json
endpoint_name
string
description
string
ip_internal
string
mtu
integer
enabled
boolean
Default: false
mask_bits
string
system_default
boolean
Default: false
local_connection_ip
string
remote_connection_ip
string
ttl
integer
Default: 255

Responses

200

Updated

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /interfaces/edge_gre/{interface_id}
https://vns3-host:8000/api/interfaces/edge_gre/{interface_id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "endpoint_name": "string",
  • "description": "string",
  • "ip_internal": "string",
  • "mtu": 0,
  • "enabled": false,
  • "mask_bits": "string",
  • "system_default": false,
  • "local_connection_ip": "string",
  • "remote_connection_ip": "string",
  • "ttl": 255
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteGREEndpoint

Delete GRE Interface

Authorizations:
path Parameters
interface_id
required
string

ID for system interface

Responses

200

Accepted

401

Authentication information missing or invalid

404

Not found

default

Error occurred

delete /interfaces/edge_gre/{interface_id}
https://vns3-host:8000/api/interfaces/edge_gre/{interface_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

Snapshots

Backup management with device snapshots

getSnapshots

get list of snapshots

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /snapshots
https://vns3-host:8000/api/snapshots

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postCreateSnapshot

Create a new snapshot

Authorizations:
Request Body schema: application/json
name
string

Name of file. Defaults to a timestamped name

Responses

200

Created

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /snapshots
https://vns3-host:8000/api/snapshots

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "custom_snapshot_name"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getDownloadSnapshot

Download snapshot file

Authorizations:
path Parameters
snapshot_name
required
string

name of Snapshot

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

404

Not found

default

Error occurred

get /snapshots/{snapshot_name}
https://vns3-host:8000/api/snapshots/{snapshot_name}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "error":
    {
    }
}

deleteSnapshot

Delete named snapshot

Authorizations:
path Parameters
snapshot_name
required
string

name of Snapshot

Responses

200

Accepted

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

404

Not found

default

Error occurred

delete /snapshots/{snapshot_name}
https://vns3-host:8000/api/snapshots/{snapshot_name}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putImportSnapshot

Import snapshot into the manager and triggers a reboot for the Configuration to take effect.

Authorizations:
Request Body schema: text/plain

Snapshot file

string <binary>

Responses

200

Accepted

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

put /snapshots/running_config
https://vns3-host:8000/api/snapshots/running_config

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

Network Edge Plugins

Deploy and manage plugin functionality on the edge of the network with containers

getContainerSystemStatus

Retrieve status of container system

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /container_system
https://vns3-host:8000/api/container_system

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putConfigureContainerSystem

Configures the container network.

Authorizations:
Request Body schema: application/json
network
required
string

Subnet CIDR that will be used for the container network.

Responses

200

Accepted

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

put /container_system
https://vns3-host:8000/api/container_system

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "network": "172.0.10.0/28"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postActionContainerSystem

Take action on container system

Authorizations:
Request Body schema: application/json
action
required
string
Enum: "start" "stop"

argument to pass

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /container_system
https://vns3-host:8000/api/container_system

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "action": "stop"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getContainerSystemIPs

Retrieve IP address list for current container network configuration

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /container_system/ip_addresses
https://vns3-host:8000/api/container_system/ip_addresses

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getContainerSystemImages

Get list of existing container system images

Authorizations:
query Parameters
uuid
string

UUID for Container

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

500

Invalid server state

default

Error occurred

get /container_system/images
https://vns3-host:8000/api/container_system/images

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postCreateContainerImage

Create new container image

Authorizations:
Request Body schema: application/json
One of
  • object
  • object
  • object
  • object
name
required
string

Name of the image

url
required
string

URL of the image file to be imported

buildurl
string

URL of a dockerfile that will be used to build the image

localbuild
string

Local build file to create new image

localimage
string

Local image to tag

description
string

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /container_system/images
https://vns3-host:8000/api/container_system/images

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "url": "string",
  • "buildurl": "string",
  • "localbuild": "string",
  • "localimage": "string",
  • "description": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putEditContainerImage

Edits container image

Authorizations:
path Parameters
uuid
required
string

uuid of resource

Request Body schema: application/json
name
required
string

Name of the image

description
string

Description of the container image

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

put /container_system/images/{uuid}
https://vns3-host:8000/api/container_system/images/{uuid}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "New image name",
  • "description": "new image description"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteContainerImage

Delete container image

Authorizations:
path Parameters
uuid
required
string

uuid of resource

query Parameters
force
boolean
Default: false

force operation with cleanup

Responses

200

Accepted

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

delete /container_system/images/{uuid}
https://vns3-host:8000/api/container_system/images/{uuid}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getContainerSystemRunningContainers

Provides description information for one or all allocated containers

Authorizations:
query Parameters
show_all
boolean
Default: true

Boolean for full list output of containers

uuid
string

UUID for resource

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

get /container_system/containers
https://vns3-host:8000/api/container_system/containers

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postStartContainer

Create (allocate) a new container or start an existing one

Authorizations:
Request Body schema: application/json
One of
  • object
  • object
uuid
required
string

Id of container if present

image_uuid
string

Container image source from which to allocate container

name
string

Name for the allocated container

ipaddress
string
description
string
command
string

Command used to run container

environment
string

Command used to run container

Responses

200

Created

400

Bad request

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /container_system/containers
https://vns3-host:8000/api/container_system/containers

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "uuid": "string",
  • "image_uuid": "string",
  • "name": "string",
  • "ipaddress": "string",
  • "description": "string",
  • "command": "string",
  • "environment": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putStopContainer

Stops a running container

Authorizations:
path Parameters
uuid
required
string

uuid of resource

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

put /container_system/containers/{uuid}
https://vns3-host:8000/api/container_system/containers/{uuid}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteContainer

Delete a container

Authorizations:
path Parameters
uuid
required
string

uuid of resource

Responses

200

OK

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

delete /container_system/containers/{uuid}
https://vns3-host:8000/api/container_system/containers/{uuid}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postCommitContainer

Creates a new container image from a running container

Authorizations:
path Parameters
uuid
required
string

uuid of resource

Request Body schema: application/json
name
required
boolean

Name of new image

description
string

Responses

200

Created

401

Authentication information missing or invalid

403

Request Forbidden - operation not allowed

default

Error occurred

post /container_system/containers/{uuid}/commit
https://vns3-host:8000/api/container_system/containers/{uuid}/commit

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": true,
  • "description": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getContainerLogs

Fetch containers log messages

Authorizations:
path Parameters
uuid
required
string

uuid of resource

query Parameters
lines
required
integer

Number of log lines to fetch

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /container_system/containers/{uuid}/logs
https://vns3-host:8000/api/container_system/containers/{uuid}/logs

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

BGP

Configure and control Border Gateway Protocol system and peering

postCreateIpsecEndpointBGPPeer

Create BGP peer connection

Authorizations:
path Parameters
endpoint_id
required
integer >= 0

ID for IPsec endpoint

Request Body schema: application/json
ipaddress
required
string

IP address of the desired BGP peer.

asn
integer

Autonomous system number assigned to device at ipaddress

access_list
string

List of "in permit CIDR" and/or "out permit CIDR" statements in a string delimited by "\n"

bgp_password
string

String to be agreed upon by both peers as a simple password.

Responses

200

Created

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /ipsec/endpoints/{endpoint_id}/ebgp_peers
https://vns3-host:8000/api/ipsec/endpoints/{endpoint_id}/ebgp_peers

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ipaddress": "string",
  • "asn": 0,
  • "access_list": "string",
  • "bgp_password": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

Get eBGP peer

Get eBGP peer details

Authorizations:
path Parameters
endpoint_id
required
integer >= 1

ID for IPsec endpoint

bgp_peer_id
required
integer >= 1

ID for BGP peer

query Parameters
verbose
boolean
Default: true

True for verbose output

Responses

200

Accepted

401

Authentication information missing or invalid

get /ipsec/endpoints/{endpoint_id}/ebgp_peers/{bgp_peer_id}
https://vns3-host:8000/api/ipsec/endpoints/{endpoint_id}/ebgp_peers/{bgp_peer_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putEditIpsecEndpointBGPPeer

Edit BGP peer connection parameters

Authorizations:
path Parameters
endpoint_id
required
integer >= 0

ID for IPsec endpoint

bgp_peer_id
required
integer >= 0

ID for BGP peer

Request Body schema: application/json
ipaddress
required
string

IP address of the desired BGP peer.

asn
required
integer

Autonomous system number assigned to device at ipaddress

access_list
string

List of "in permit CIDR" and/or "out permit CIDR" statements in a string delimited by "\n"

bgp_password
string

String to be agreed upon by both peers as a simple password.

add_network_distance
boolean

Enable network distance for BGP peer

add_network_distance_direction
string

Add distance direction for BGP peer

add_network_distance_hops
integer

Distance metric weight indicating distance in hops for BGP peer

Responses

200

Accepted

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /ipsec/endpoints/{endpoint_id}/ebgp_peers/{bgp_peer_id}
https://vns3-host:8000/api/ipsec/endpoints/{endpoint_id}/ebgp_peers/{bgp_peer_id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ipaddress": "string",
  • "asn": 0,
  • "access_list": "string",
  • "bgp_password": "string",
  • "add_network_distance": true,
  • "add_network_distance_direction": "string",
  • "add_network_distance_hops": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteIpsecEndpointBGPPeer

Delete BGP Peer connection

Authorizations:
path Parameters
endpoint_id
required
integer >= 0

ID for IPsec endpoint

bgp_peer_id
required
integer >= 0

ID for BGP peer

Responses

200

Accepted

400

Bad request indicating BGP peer does not exist

401

Authentication information missing or invalid

default

Error occurred

delete /ipsec/endpoints/{endpoint_id}/ebgp_peers/{bgp_peer_id}
https://vns3-host:8000/api/ipsec/endpoints/{endpoint_id}/ebgp_peers/{bgp_peer_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

Monitoring and Alerting

Setup and view alerts and monitors for feedback and analysis of your network

getWebhooks

Retrieve all Alert integrations (webhooks)

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /webhooks
https://vns3-host:8000/api/webhooks

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

postCreateWebhook

Define new Webhook integration

Authorizations:
Request Body schema: application/json
name
required
string
url
string
events
Array of strings
Default: ["tunnel_up","tunnel_down"]
body
string

Serialized HTTP Post request body

validate_cert
boolean
custom_properties
Array of objects
headers
Array of objects
parameters
Array of objects

Responses

201

Created

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /webhook
https://vns3-host:8000/api/webhook

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "url": "string",
  • "events":
    [
    ],
  • "body": "string",
  • "validate_cert": true,
  • "custom_properties":
    [
    ],
  • "headers":
    [
    ],
  • "parameters":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getWebhook

Retrieve details for single webhook integration

Authorizations:
path Parameters
webhook_id
required
integer >= 0

ID for webhook integration

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /webhook/{webhook_id}
https://vns3-host:8000/api/webhook/{webhook_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putUpdateWebhook

Edit defined webhook integration

Authorizations:
path Parameters
webhook_id
required
integer >= 0

ID for webhook integration

Request Body schema: application/json
name
string
url
string
events
Array of strings
Default: ["tunnel_up","tunnel_down"]
body
string

Serialized HTTP Post request body

validate_cert
boolean
custom_properties
Array of objects
headers
Array of objects
parameters
Array of objects

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /webhook/{webhook_id}
https://vns3-host:8000/api/webhook/{webhook_id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "url": "string",
  • "events":
    [
    ],
  • "body": "string",
  • "validate_cert": true,
  • "custom_properties":
    [
    ],
  • "headers":
    [
    ],
  • "parameters":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteWebhook

Delete defined webhook integration

Authorizations:
path Parameters
webhook_id
required
integer >= 0

ID for webhook integration

Responses

200

Accepted

401

Authentication information missing or invalid

default

Error occurred

delete /webhook/{webhook_id}
https://vns3-host:8000/api/webhook/{webhook_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getAlerts

Retrieve all alerts

Authorizations:

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /alerts
https://vns3-host:8000/api/alerts

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    [
    ]
}

postDefineNewAlert

Define new alert

Authorizations:
Request Body schema: application/json
One of
  • object
  • object
name
required
string
url
required
string
webhook_id
required
integer
template_id
integer
events
Array of strings
custom_properties
Array of objects
enabled
boolean
Default: true

Responses

201

Created

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

post /alert
https://vns3-host:8000/api/alert

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "string",
  • "url": "string",
  • "webhook_id": 0,
  • "template_id": 0,
  • "events":
    [
    ],
  • "custom_properties":
    [
    ],
  • "enabled": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

getAlert

Retrieve details for single alert

Authorizations:
path Parameters
alert_id
required
integer >= 0

ID for Alert definition

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

get /alert/{alert_id}
https://vns3-host:8000/api/alert/{alert_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

putUpdateAlert

Edit defined alert

Authorizations:
path Parameters
alert_id
required
integer >= 0

ID for Alert definition

Request Body schema: application/json
url
string
webhook_id
integer
events
Array of strings
custom_properties
object
enabled
boolean
Default: true

Responses

200

OK

400

Bad request

401

Authentication information missing or invalid

default

Error occurred

put /alert/{alert_id}
https://vns3-host:8000/api/alert/{alert_id}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "url": "string",
  • "webhook_id": 0,
  • "events":
    [
    ],
  • "custom_properties":
    {
    },
  • "enabled": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

deleteAlert

Delete defined alert

Authorizations:
path Parameters
alert_id
required
integer >= 0

ID for Alert definition

Responses

200

OK

401

Authentication information missing or invalid

default

Error occurred

delete /alert/{alert_id}
https://vns3-host:8000/api/alert/{alert_id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postToggleEnabledAlert

Toggle enabled property on alert

Authorizations:
path Parameters
alert_id
required
integer >= 0

ID for Alert definition

Responses

200

Accepted

401

Authentication information missing or invalid

default

Error occurred

post /alert/{alert_id}/toggle_enabled
https://vns3-host:8000/api/alert/{alert_id}/toggle_enabled

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}

postTestAlert

Send test alert for this defined alert

Authorizations:
path Parameters
alert_id
required
integer >= 0

ID for Alert definition

Responses

200

Accepted

401

Authentication information missing or invalid

default

Error occurred

post /alert/{alert_id}/test
https://vns3-host:8000/api/alert/{alert_id}/test

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "response":
    {
    }
}