API — Порты и трафик

Открывайте, закрывайте, перечисляйте и настраивайте прокси-порты, а также тестируйте вышестоящий прокси (upstream) перед его использованием. Это эндпоинты, которые вы будете применять чаще всего при интеграции BlankTrail Proxy.

Открыть порт

POST /api/v1/ports/open Требуется авторизация

Открывает новый прокси-порт с заданной конфигурацией и возвращает идентичность, которую он будет предъявлять.

ПараметрТипОбязательныйОписание
portintДаЛокальный TCP-порт для открытия.
protocolstringНет"socks5" или "http" (по умолчанию "http").
modestringНетСпособ выбора идентичности: "random", "db", "auto" или "specific".
browserstringНетФильтр браузера, например "chrome", "firefox", "safari", "edge" (при желании с указанием версии).
osstringНетФильтр ОС: "windows", "macos", "linux" или "ios".
upstreamstringНетВышестоящий прокси (upstream), например "socks5://user:pass@host:1080". Пусто — прямое подключение.
upstream_gatewaystringНетИмя сохранённого шлюза (VPN), через который направляется трафик вместо сырого upstream.
spoof_headersboolНетНормализовать ли исходящие HTTP-заголовки под выбранную идентичность.
Тело запроса
{
  "port": 20134,
  "protocol": "socks5",
  "mode": "random",
  "browser": "chrome",
  "os": "windows"
}
Пример (curl)
curl -H "X-API-Key: YOUR_API_KEY" -H "Content-Type: application/json" \
  -d '{"port":20134,"protocol":"socks5","mode":"random","browser":"chrome"}' \
  http://127.0.0.1:8891/api/v1/ports/open
Ответ
{
  "port": 20134,
  "protocol": "socks5",
  "status": "opened",
  "current_profile": {
    "name": "Chrome_145_Windows_10",
    "browser": "chrome",
    "os": "windows",
    "user_agent": "Mozilla/5.0 ..."
  }
}

Закрыть порт

POST /api/v1/ports/close Требуется авторизация

Закрывает открытый порт и освобождает его.

ПараметрТипОбязательныйОписание
portintДаПорт, который нужно закрыть.
Тело запроса
{ "port": 20134 }
Пример (curl)
curl -H "X-API-Key: YOUR_API_KEY" -H "Content-Type: application/json" \
  -d '{"port":20134}' http://127.0.0.1:8891/api/v1/ports/close

Список открытых портов

GET /api/v1/ports Требуется авторизация

Возвращает все открытые порты с их статусом, а также ваши общее и максимальное количество портов.

Пример (curl)
curl -H "X-API-Key: YOUR_API_KEY" http://127.0.0.1:8891/api/v1/ports
Ответ
{
  "ports": [
    { "port": 20134, "protocol": "socks5", "status": "open" }
  ],
  "total_open": 1,
  "max_ports": 10000
}

Подобрать свободный порт

GET /api/v1/ports/suggest Требуется авторизация

Возвращает доступный номер порта, который вы можете открыть.

Пример (curl)
curl -H "X-API-Key: YOUR_API_KEY" http://127.0.0.1:8891/api/v1/ports/suggest
Ответ
{ "port": 20123 }

Тестировать вышестоящий прокси (upstream)

POST /api/v1/upstream/test Требуется авторизация

Выполняет предварительную проверку цепочки upstream: доступность, поддержку SOCKS5 UDP и утечки DNS/IPv6 — до того, как вы откроете порт.

ПараметрТипОбязательныйОписание
checksstring[]ДаЛюбые из "http", "udp", "leak".
protocolstringНет"socks5" или "http".
upstreamstringНетВышестоящий прокси (upstream) для проверки (пусто — прямое подключение).
chain_proxystringНетНеобязательный первый узел цепочки перед upstream.
Тело запроса
{
  "checks": ["http", "leak"],
  "protocol": "socks5",
  "upstream": "socks5://user:pass@host:1080"
}
Ответ
{
  "http": { "ok": true, "detail": "200 in 45ms" },
  "leak": { "ok": true, "detail": "no DNS/IPv6 leak — exit 203.0.113.45" }
}

Получить конфигурацию порта

GET /api/v1/port/{port}/status Требуется авторизация

Возвращает полный снимок конфигурации одного порта.

Пример (curl)
curl -H "X-API-Key: YOUR_API_KEY" http://127.0.0.1:8891/api/v1/port/20134/status

Изменить настройки отдельного порта

У каждой настройки порта есть соответствующая пара эндпоинтов GET/PUT в /api/v1/port/{port}/…. Передавайте значение в теле запроса. Например, задайте вышестоящий прокси (upstream) или переключите подмену заголовков:

PUT /api/v1/port/{port}/upstream Требуется авторизация

Задаёт вышестоящий прокси (upstream) для порта.

Тело запроса
{ "upstream": "socks5://user:pass@host:1080" }
Пример (curl)
curl -H "X-API-Key: YOUR_API_KEY" -H "Content-Type: application/json" -X PUT \
  -d '{"upstream":"socks5://user:pass@host:1080"}' \
  http://127.0.0.1:8891/api/v1/port/20134/upstream

Остальные настройки отдельного порта следуют той же схеме, включая: mode, browser, os, chain_proxy, spoof_user_agent, spoof_headers, h2_spoofing и idle.