Skip to content
Посмотреть как Markdown

VPN ​

Памятка

Идентификация клиента (обязательно для всех VPN-методов) ​

Все операции выполняются для клиента реселлера, а не для владельца токена.

Клиент определяется парой:

  • telegram_id — Telegram ID конечного пользователя.
  • client_key — произвольная строка, которую задаёт реселлер (можно писать что угодно: внутренний id, username, email, user-42 и т.п.).

По паре telegram_id + client_key происходит управление. client_key можно использовать одинаковым для разных telegram_id — важна именно пара.


Периоды покупки и продления ​

period_months — период в месяцах. Поддерживаемые значения:

  • 1, 3, 6, 12

Статусы подписки ​

status может быть одним из:

  • ACTIVE — активна
  • DISABLED — отключена
  • LIMITED — ограничена (например, лимит устройств/трафика)
  • EXPIRED — истекла

UUID подписки (важно для продления) ​

У клиента может быть несколько подписок одновременно.

  • GET /vpn/info возвращает список подписок, каждая содержит uuid.
  • POST /vpn/renew продлевает конкретную подписку — нужно передать её uuid.
  • POST /vpn/buy позволяет купить дополнительную подписку даже если уже есть активные.

1) Посчитать стоимость ​

GET /vpn/quote

Параметры запроса (query) ​

NameTypeDescription
period_months*intПериод в месяцах.

Пример ​

bash
curl -s "https://proxy.killa.cc/api/v1/vpn/quote?period_months=1" \
  -H "Authorization: Bearer YOUR_TOKEN"

Ответ ​

json
{
  "ok": true,
  "data": {
    "period_months": 1,
    "price_rub": 99.0
  }
}

2) Купить ​

POST /vpn/buy

Тело запроса (Request Body) ​

NameTypeDescription
telegram_id*intTelegram ID конечного клиента.
client_key*stringКлюч клиента у реселлера
period_months*intПериод в месяцах

Пример ​

bash
curl -s https://proxy.killa.cc/api/v1/api/v1/vpn/buy \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "telegram_id": 123456789,
    "client_key": "client-001",
    "period_months": 1
  }'

Ответ ​

json
{
  "ok": true,
  "data": {
    "uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "subscriptionUrl": "https://vpn.killa.cc/qwerty12345678",
    "expireAt": "2027-01-01T00:00:00.000Z",
    "expireAt_date": "01.01.2027"
  }
}

3) Продлить ​

POST /vpn/renew

Тело запроса (Request Body) ​

NameTypeDescription
period_months*intПериод в месяцах
telegram_id*intTelegram ID конечного клиента.
client_key*stringКлюч клиента у реселлера
uuid*stringUUID подписки

Пример ​

bash
curl -s https://proxy.killa.cc/api/v1/vpn/renew \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "period_months":3,
    "telegram_id":123456789,
    "client_key":"client-001",
    "uuid":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
  }'

Ответ ​

json
{
  "ok": true,
  "data": {
    "uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "subscriptionUrl": "https://vpn.killa.cc/qwerty12345678",
    "expireAt": "2027-04-01T00:00:00.000Z",
    "expireAt_date": "01.04.2027"
  }
}

4) Удалить подписку ​

POST /vpn/delete

Тело запроса (Request Body) ​

NameTypeDescription
telegram_id*intTelegram ID конечного клиента.
client_key*stringКлюч клиента у реселлера
uuid*stringUUID подписки

Пример ​

bash
curl -s https://proxy.killa.cc/api/v1/vpn/delete \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "telegram_id":123456789,
    "client_key":"client-001",
    "uuid":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  }'

Ответ ​

json
{
  "ok": true,
  "data": {
    "uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "deleted": true
  }
}

5) Получить текущую информацию ​

GET /vpn/info

Параметры запроса (query) ​

NameTypeDescription
telegram_id*intTelegram ID конечного клиента.
client_key*stringКлюч клиента у реселлера

Пример ​

bash
curl -s "https://proxy.killa.cc/api/v1/vpn/info?telegram_id=123456789&client_key=client-001" \
  -H "Authorization: Bearer YOUR_TOKEN"

Ответ ​

json
{
  "ok": true,
  "data": {
    "exists": true,
    "count": 1,
    "items": [
      {
        "uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "status": "ACTIVE",
        "expireAt": "2027-01-01T00:00:00.000Z",
        "expireAt_date": "01.01.2027",
        "subscriptionUrl": "https://vpn.killa.cc/qwerty12345678",
        "trafficLimitBytes": 0
      }
    ]
  }
}