Skip to main content

VPN API 1.5.0

VPN and cluster communication operations.

Base path: https://{controller_ip}/api/v1. API description version: 1.5.0.

Examples use placeholder values for passwords, tokens, UUIDs, addresses and secrets. Replace them with values from your controller before sending requests.

Section methods

MethodPath
GET/vpn/master/status
GET/vpn/members
GET/vpn/slave/status
POST/vpn/master/sync/stop
POST/vpn/master/sync/{serial}/{action}
POST/vpn/slave/sync/{action}
DELETE/vpn/{serial}

GET /vpn/master/status

Section: VPN.

Returns data for the VPN endpoint /vpn/master/status.

Request example

curl -k -X GET "https://{controller_ip}/api/v1/vpn/master/status" \
-H "Authorization: Bearer <token>"

Response command example

curl -k -sS -X GET "https://{controller_ip}/api/v1/vpn/master/status" \
-H "Authorization: Bearer <token>" | jq .

Response example

{
"status": "ready",
"active": true
}

GET /vpn/members

Section: VPN.

Returns data for the VPN endpoint /vpn/members.

Request example

curl -k -X GET "https://{controller_ip}/api/v1/vpn/members" \
-H "Authorization: Bearer <token>"

Response command example

curl -k -sS -X GET "https://{controller_ip}/api/v1/vpn/members" \
-H "Authorization: Bearer <token>" | jq .

Response example

{
"data": [],
"meta": {
"api_version": "1.5.0",
"path": "/vpn/members"
}
}

GET /vpn/slave/status

Section: VPN.

Returns data for the VPN endpoint /vpn/slave/status.

Request example

curl -k -X GET "https://{controller_ip}/api/v1/vpn/slave/status" \
-H "Authorization: Bearer <token>"

Response command example

curl -k -sS -X GET "https://{controller_ip}/api/v1/vpn/slave/status" \
-H "Authorization: Bearer <token>" | jq .

Response example

{
"status": "ready",
"active": true
}

POST /vpn/master/sync/stop

Section: VPN.

Creates a record or starts an operation for the VPN endpoint /vpn/master/sync/stop.

Request example

curl -k -X POST "https://{controller_ip}/api/v1/vpn/master/sync/stop" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data-raw '{
"action": "start"
}'

Request body example

{
"action": "start"
}

Response command example

curl -k -sS -X POST "https://{controller_ip}/api/v1/vpn/master/sync/stop" \
-H "Authorization: Bearer <token>" | jq .

Response example

{
"status": "success",
"data": {
"uuid": "<uuid>"
}
}

POST /vpn/master/sync/{serial}/{action}

Section: VPN.

Creates a record or starts an operation for the VPN endpoint /vpn/master/sync/{serial}/{action}.

Request example

curl -k -X POST "https://{controller_ip}/api/v1/vpn/master/sync/{serial}/{action}" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data-raw '{
"action": "start"
}'

Request body example

{
"action": "start"
}

Response command example

curl -k -sS -X POST "https://{controller_ip}/api/v1/vpn/master/sync/{serial}/{action}" \
-H "Authorization: Bearer <token>" | jq .

Response example

{
"status": "success",
"data": {
"uuid": "<uuid>"
}
}

POST /vpn/slave/sync/{action}

Section: VPN.

Creates a record or starts an operation for the VPN endpoint /vpn/slave/sync/{action}.

Request example

curl -k -X POST "https://{controller_ip}/api/v1/vpn/slave/sync/{action}" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data-raw '{
"action": "start"
}'

Request body example

{
"action": "start"
}

Response command example

curl -k -sS -X POST "https://{controller_ip}/api/v1/vpn/slave/sync/{action}" \
-H "Authorization: Bearer <token>" | jq .

Response example

{
"status": "success",
"data": {
"uuid": "<uuid>"
}
}

DELETE /vpn/{serial}

Section: VPN.

Deletes data for the VPN endpoint /vpn/{serial}.

Request example

curl -k -X DELETE "https://{controller_ip}/api/v1/vpn/{serial}" \
-H "Authorization: Bearer <token>"

Response command example

curl -k -sS -X DELETE "https://{controller_ip}/api/v1/vpn/{serial}" \
-H "Authorization: Bearer <token>" | jq .

Response example

{
"status": "success",
"deleted": true
}