Перейти к основному содержимому

VPN API 1.5.0

Участники VPN и синхронизация master/slave.

Базовый путь: https://{IP_контроллера}/api/v1. Версия описания API: 1.5.0.

Примеры используют placeholder-значения для паролей, token, UUID, адресов и секретов. Перед выполнением запроса замените их на значения вашего контроллера.

Методы раздела

МетодПуть
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

Раздел: VPN.

Возвращает статус синхронизации текущего контроллера.

Пример запроса

curl -k -X GET "https://{IP_контроллера}/api/v1/vpn/master/status" \
-H "Authorization: Bearer <token>"

Пример получения ответа

curl -k -sS -X GET "https://{IP_контроллера}/api/v1/vpn/master/status" \
-H "Authorization: Bearer <token>" | jq .

Пример ответа

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

GET /vpn/members

Раздел: VPN.

Возвращает список контроллеров в кластере.

Пример запроса

curl -k -X GET "https://{IP_контроллера}/api/v1/vpn/members" \
-H "Authorization: Bearer <token>"

Пример получения ответа

curl -k -sS -X GET "https://{IP_контроллера}/api/v1/vpn/members" \
-H "Authorization: Bearer <token>" | jq .

Пример ответа

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

GET /vpn/slave/status

Раздел: VPN.

Возвращает статус контроллера, ожидающего синхронизацию.

Пример запроса

curl -k -X GET "https://{IP_контроллера}/api/v1/vpn/slave/status" \
-H "Authorization: Bearer <token>"

Пример получения ответа

curl -k -sS -X GET "https://{IP_контроллера}/api/v1/vpn/slave/status" \
-H "Authorization: Bearer <token>" | jq .

Пример ответа

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

POST /vpn/master/sync/stop

Раздел: VPN.

Останавливает синхронизацию данных с указанным контроллером.

Пример запроса

curl -k -X POST "https://{IP_контроллера}/api/v1/vpn/master/sync/stop" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data-raw '{
"action": "start"
}'

Пример тела запроса

{
"action": "start"
}

Пример получения ответа

curl -k -sS -X POST "https://{IP_контроллера}/api/v1/vpn/master/sync/stop" \
-H "Authorization: Bearer <token>" | jq .

Пример ответа

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

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

Раздел: VPN.

Добавляет или удаляет контроллер из очереди синхронизации данных.

Пример запроса

curl -k -X POST "https://{IP_контроллера}/api/v1/vpn/master/sync/{serial}/{action}" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data-raw '{
"action": "start"
}'

Пример тела запроса

{
"action": "start"
}

Пример получения ответа

curl -k -sS -X POST "https://{IP_контроллера}/api/v1/vpn/master/sync/{serial}/{action}" \
-H "Authorization: Bearer <token>" | jq .

Пример ответа

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

POST /vpn/slave/sync/{action}

Раздел: VPN.

Останавливает синхронизацию данных с текущим контроллером.

Пример запроса

curl -k -X POST "https://{IP_контроллера}/api/v1/vpn/slave/sync/{action}" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data-raw '{
"action": "start"
}'

Пример тела запроса

{
"action": "start"
}

Пример получения ответа

curl -k -sS -X POST "https://{IP_контроллера}/api/v1/vpn/slave/sync/{action}" \
-H "Authorization: Bearer <token>" | jq .

Пример ответа

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

DELETE /vpn/{serial}

Раздел: VPN.

Удаляет контроллер из кластера.

Пример запроса

curl -k -X DELETE "https://{IP_контроллера}/api/v1/vpn/{serial}" \
-H "Authorization: Bearer <token>"

Пример получения ответа

curl -k -sS -X DELETE "https://{IP_контроллера}/api/v1/vpn/{serial}" \
-H "Authorization: Bearer <token>" | jq .

Пример ответа

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