Надёжный приём данных лида
Как очередь сохраняет данные формы, пока клик или аналитическое хранилище недоступны.
Эти функции доступны начиная с выпуска 20261101.1. Для использования обновите трекер.
С выпуска 20261101.1 очередь относится к /api/v1/lead. Хранение файлового журнала leads.php не возобновляется.
Запрос формы
Отправляйте POST на /api/v1/lead с click_id (также принимаются subid и aff_sub) и хотя бы одним из полей email, phone, first_name, last_name. Вместо first_name допустимы name и fname, вместо last_name — lname. GET совместим с изображением-пикселем, но POST предпочтителен, чтобы контакты не попадали в адресную строку.
Если задан секрет партнёрской сети оффера, передайте его в secret. Если отдельного сетевого секрета нет, используется секрет источника. Передавайте секрет только с сервера страницы, не вставляйте его в клиентский JavaScript.
POST /api/v1/lead
Content-Type: application/x-www-form-urlencoded
click_id=EXAMPLE_CLICK_ID&email=synthetic%40example.invalid&first_name=ExampleЗамените EXAMPLE_CLICK_ID реальным ID перехода; пример сам по себе не создаёт клик.
Что означает ответ 200
Ответ 200 означает, что данные уже сохранены в PostgreSQL, даже если аналитическая запись пока задерживается. GET возвращает пиксель, POST — ok. При сбое сохранения или заполнении очереди возвращается 503 с Retry-After: 5; повторите тот же запрос позже. Неверный секрет даёт 401.
До появления клика в аналитике трекер принимает данные только по отдельному подписанному подтверждению фактической записи перехода. Произвольный ID не принимается. При недоступном подтверждении сохраняется прежнее ожидание клика и ответ с ошибкой; трафик из-за недоступности этой дополнительной проверки не останавливается.
Ожидание и повторы
Неподтверждённый полный контекст клика и перехода на оффер ожидается до 24 часов. Если по окончании срока хранилище отвечает, но нужной записи всё ещё нет, задание помечается click_expired, контакты из очереди удаляются. Если контекст уже подтверждён, временная недоступность сохранения не ограничена этим сроком: данные остаются до успешной доставки.
Запросы одного клика обрабатываются в порядке приёма. Соседние одинаковые запросы объединяются. Без подтверждённого секрета новые данные только заполняют пустые поля; с секретом переданные поля заменяют прежние, отсутствующие не стираются. Корректировка A → B → A сохраняет последнее A. Повтор после сбоя между записью и подтверждением не пересылает форму или постбэк.
Подготовка CAPI учитывает уже принятые данные очереди, даже до их появления в аналитике. Исходящие события продолжают подчиняться лицензии и своим правилам отправки.
Ограничения и проверка
Пределы значений в байтах: email — 512, phone — 128, имя и фамилия — по 256. В очереди одновременно допускаются до 32 запросов одного клика и 100 000 запросов workspace. Содержимое очереди зашифровано ключом установки; сохраняйте его вместе с резервной копией. Секрет источника или сети в очередь не записывается.
Владелец или администратор может прочитать GET /api/v1/maintenance/lead-queue. Ответ содержит только счётчики: waiting_for_click, waiting_for_storage, click_expired или click_context_changed, без контактов. Неподтверждённый контекст другого workspace или кампании не применяется.