Прокси и агенты
Создание пула
POST /api/v1/proxy-pools
{"code":"catalog-proxies","name":"Прокси каталога","rotation":"round_robin"}
Ротация: round_robin, random, fastest, least_used или sticky. Поле code необязательно: система создаст его автоматически. Для sticky параметр sticky_seconds задаёт срок от 60 до 86400 секунд, по умолчанию 600. Код уникален в пространстве и после создания не меняется. Для изменения прокси требуется право управления настройками; для просмотра: чтение подключений.
Добавление адреса
POST /api/v1/proxies
{"pool_id":1,"scheme":"http","host":"proxy.example.invalid","port":8080,"username":"account","password":"REPLACE_ME"}
Схемы: http и socks5. HTTPS-сайты доступны через HTTP CONNECT; HTTPS-прокси не поддерживаются. Порт 1–65535. Имя и пароль необязательны. Пароль хранится зашифрованным и обратно не возвращается. Пул должен принадлежать пространству ключа.
Для массового импорта отправьте pool_id и строку text в POST /proxies/import. Ответ содержит количество добавленных адресов и пропуски с причинами. Не считайте частичный успех полной загрузкой списка.
Привязка к сайту: PATCH /sites/{id} с {"proxy_pool_id":1}. Проверка одного адреса: POST /proxies/{id}/check; всего пула: /proxy-pools/{id}/check. Это реальные сетевые проверки. Снятие временного запрета: /unban.
Проверка группы в интерфейсе выполняется в фоне небольшими пакетами. Синхронный
внешний метод /proxy-pools/{id}/check ограничен пятью адресами. Для более крупной
группы он возвращает 422 с кодом use_background_check: откройте группу в интерфейсе
и запустите фоновую проверку.
Агенты
GET /api/v1/agents: список доступных агентов, GET /api/v1/agents/{id}: карточка и состояние. Требуется право чтения агентов.
Через внешний API нельзя создавать и удалять агента, разворачивать его по SSH, получать агентский токен или отправлять служебные результаты от имени агента. Эти операции принадлежат внутреннему протоколу.
Чтобы использовать уже настроенного агента, укажите у сайта execution_target: "agent" и agent_id. Затем запускайте обычный прогон. Его статус и результаты читайте через /runs и /sites/{id}/records. Адрес агента и внутренние секреты для этого не нужны.