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
}