Запрос профиля и задачи
API для выдачи профиля и задачи софту
📘 Общая информация
Ваш серверный скрипт (API-эндпоинт) должен принимать запросы от софта и возвращать профиль с задачей, которую софт должен выполнить.
Софт обращается к вашему API методом POST и ожидает ответ в формате JSON.
⚙️ Как это работает
Софт отправляет POST-запрос с параметрами окружения (группа профилей, IP-адрес, поток и т.д.).
Ваш API выбирает подходящий профиль из вашей базы данных.
Ваш API сам формирует задачу (
task) и возвращает её вместе с параметрами профиля.Софт выполняет задачу, используя полученные данные.
📡 Метод и формат запроса
Метод: POST
Формат данных: application/json
🚀 1. Как софт обращается к вашему API
Пример запроса:
group
string
Название группы профилей.
copy_name
string
Название копии (панели управления).
thread
int
Номер потока.
comment
string
Комментарий пользователя.
server_ip
string
IP-адрес сервера, где запущен софт.
🧠 2. Что должен вернуть ваш API
Ответ от вашего API всегда должен содержать два объекта:
🔧 3. Варианты задач (task)
Ваш API должен случайным образом (или по вашей логике) возвращать один из двух типов задач:
🟢 Вариант 1: Нагул профилей
Нагул профилейПример ответа:
Структура параметров для Нагула профилей
task.type
string
✅
Тип задачи. Для этого варианта всегда "Нагул профилей".
task.params
object
✅
Основной объект параметров задачи.
task.params.methods
array
✅
Список методов, используемых при нагреве профиля. Каждый элемент массива описывает отдельный метод.
task.params.methods[].method
string
✅
Название метода. Возможные значения:
• "Посещение сайтов"
• "Ключевые запросы"
task.params.methods[].sites
int
❌
Количество сайтов для посещения (актуально для метода "Посещение сайтов").
task.params.methods[].time_per_site
int
❌
Время нахождения на каждом сайте в секундах.
task.params.methods[].keywords
int
❌
Сколько ключевых запросов использовать (актуально для метода "Ключевые запросы").
task.params.methods[].yandex_domain
string
❌
Домен поисковой системы Яндекс, например "yandex.ru/search"(актуально для метода "Ключевые запросы").
task.params.methods[].input_type
string
❌
Тип ввода ключевых запросов. Например:"Ручной ввод ключевого запроса"
task.params.methods[].search_depth
int
❌
Глубина поиска (количество страниц выдачи Яндекса).
task.params.methods[].ya_serp_idle_time
int
❌
Время бездействия на странице поиска (в секундах).
task.params.methods[].sites_per_keyword
int
❌
Количество сайтов, посещаемых на один поисковый запрос.
🔵 Вариант 2: Поисковая оптимизация
Поисковая оптимизацияПример ответа:
Структура параметров для Поисковая оптимизация
task.type
string
✅
Всегда "Поисковая оптимизация".
task.params.yandex_domain
string
❌
Домен поисковой выдачи (например, "yandex.ru/search").
task.params.input_type
string
❌
Тип ввода ключевого запроса. Например:"Ручной ввод ключевого запроса"
task.params.search_depth
int
❌
Количество страниц поиска.
task.params.ya_serp_idle_time
int
❌
Задержка на странице поиска (в секундах).
task.params.visit_site
string
❌
Действие при переходе по сайту (например, "Нажать на сайт и сорвать загрузку").
task.params.time_per_site
int
❌
Среднее время нахождения на сайте.
🧱 4. Параметры профиля (profile)
Независимо от типа задачи, объект profile всегда должен содержать информацию о профиле.
profile.profile_id
string/int
✅
Уникальный идентификатор профиля.
profile.cookies_data
string
✅
Куки профиля в формате JSON.
profile.fingerprint
string
❌
Отпечаток профиля (BAS-формат).
profile.local_storage
string
❌
LocalStorage в формате JSON.
profile.proxy
string
❌
Прокси, привязанный к профилю (ip:port:login:pass).
profile.tags
string
❌
Теги профиля, разделённые запятыми.
profile.useragent
string
❌
User-Agent браузера.
profile.ya_serp_visits
int
❌
Количество посещений выдачи Яндекса.
profile.device_type
string
⚙️
Рекомендуется: "desktop" или "mobile".
profile.geolocation
string
❌
Геолокация профиля.
⚙️ 5. Поведение при отсутствии params
paramsЕсли поле params не передано:
Софт использует настройки из интерфейса, выбранные пользователем.
Ошибки не будет.
Это допустимо и корректно.
Пример минимального корректного ответа:
📡 6. Требования к ответу
Ваш скрипт обязательно должен возвращать:
HTTP-код 200 — при успешной обработке запроса;
JSON-объект с параметрами профиля.
🧰 7. Чек-лист перед запуском
✅ Возвращаете JSON с task и profile
✅ В task.type одно из: "Нагул профилей" или "Поисковая оптимизация"
✅ В profile минимум есть profile_id и cookies_data
✅ Если params нет — всё работает, софт подставит настройки из интерфейса
✅ Ответ отдаёт HTTP 200
Last updated