API Reference
Как отправлять визиты вручную и интегрировать сервер со сторонними системами.
Запускает браузерный визит для одного лида. Сервер создаёт мгновенный профиль Vision Browser, открывает URL, заполняет форму входа и закрывает профиль.
Замените {token} на значение server.token из вашего конфига. Если server.token пустой — аутентификация отключена.
Content-Type: application/json
{
"url": "https://broker.com/autologin?lead_id=123",
"ip": "1.2.3.4",
"ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
"geo": "ua",
"lang": "uk-UA,uk;q=0.9,en;q=0.8",
"referer": "https://landing.example.com/",
"proxy": "socks5://proxy.host:1080",
"pauth": "user:pass",
"name": "Иван",
"last": "Шевченко",
"email": "ivan@example.com",
"pass": "secret123"
}
| Поле | Тип | Обязательное | Описание |
|---|---|---|---|
| url | string | Да | Целевой URL для перехода (страница автологина). |
| ip | string | Нет | IP-адрес лида. Отправляется в заголовках X-Forwarded-For и X-Real-IP. |
| ua | string | Нет | User-agent строка. Передаётся в заголовке запроса к целевой странице. |
| geo | string | Нет | Код страны лида (например, ua, de). Информационное поле. |
| lang | string | Нет | Значение заголовка Accept-Language (например, uk-UA,uk;q=0.9). |
| referer | string | Нет | Заголовок Referer, отправляемый на целевую страницу. |
| proxy | string | Нет | URL прокси. Форматы: socks5://host:port, http://host:port или просто host:port (по умолчанию HTTP). |
| pauth | string | Нет | Авторизация прокси в формате user:pass. |
| name | string | Нет | Имя лида. Заполняется в input[name=name], input[name=first_name] или input[id*=name]. |
| last | string | Нет | Фамилия лида. Передаётся в запросе, заполняется в поля фамилии где применимо. |
| string | Нет | Email-адрес. Заполняется в input[type=email], input[name=email], input[name=login] или input[id*=email]. |
|
| pass | string | Нет | Пароль. Заполняется в input[type=password]. |
| Статус | Тело | Значение |
|---|---|---|
| 200 | {"success":true} |
Визит выполнен успешно. |
| 200 | {"success":false,"error":"..."} |
Визит был предпринят, но не удался (ошибка навигации, таймаут и т.д.). |
| 400 | plain text | Некорректный JSON в теле запроса. |
| 403 | plain text | Неверный токен в URL. |
| 503 | {"success":false,"error":"busy"} |
Все воркеры заняты. Повторите позже или увеличьте visit.workers в конфиге. |
Возвращает статус сервера. Аутентификация не требуется. Используйте для проверки работоспособности.
{"status":"ok"}
Эта команда позволяет отправить тестовый визит из командной строки. Замените localhost:8765 и change-me на реальный адрес сервера и токен.
curl -s -X POST http://localhost:8765/run/change-me \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/autologin",
"ip": "1.2.3.4",
"ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
"geo": "ua",
"lang": "uk-UA,uk;q=0.9",
"referer": "",
"proxy": "socks5://proxy.host:1080",
"pauth": "user:pass",
"name": "Иван",
"last": "Шевченко",
"email": "ivan@example.com",
"pass": "secret123"
}'
Хак-модуль Autologiner в AlterCPA отправляет лидов через один URL с разделителем |JSON|.
Всё, что идёт после |JSON|, сериализуется как JSON-объект и отправляется POST-запросом на адрес перед разделителем.
Сервер печатает готовый URL при запуске — просто скопируйте его из терминала.
http://IP-ВАШЕГО-СЕРВЕРА:8765/run/change-me|JSON|url={url}&ip={ip}&ua={ua}&geo={geo}&lang={lang}&referer={referer}&proxy={proxy}&pauth={pauth}&name={name}&last={last}&email={email}&pass={pass}
localhost или 127.0.0.1. Если на разных — используйте LAN-IP или внешний IP сервера, убедившись, что файервол пропускает входящий TCP на порт 8765.
Файл autologin-config.yaml создаётся автоматически при первом запуске. Отредактируйте его перед повторным запуском.
server:
port: 8765 # порт HTTP-сервера
token: "change-me" # токен безопасности в /run/{token}; пустая строка — без авторизации
browser:
type: vision # антидетект браузер — поддерживается только "vision"
api_token: "" # API-токен Vision Browser (Vision → Settings)
local_url: "" # необязательно: переопределить URL локального API Vision
visit:
timeout: 30 # таймаут загрузки страницы, секунды
headless: true # запускать браузер в скрытом режиме
wait_after: 3 # минимальная пауза после загрузки, секунды
wait_after_max: 8 # максимальная пауза (случайная между wait_after и этим значением)
workers: 5 # максимум одновременных визитов
log:
file: "" # путь к лог-файлу; пусто = вывод в консоль
level: info # debug | info | warn | error