Контракт ответа для заявки с ограниченной обработкой

Назначение

После подтверждённого privacy-запроса заявка может получить processing_restricted = true, retention_hold = true либо быть обезличена. Повторный POST с тем же request_id не должен запускать Telegram, менять заявку, показывать браузеру ложный статус pending или раскрывать внутренние CRM-поля.

Публичный ответ Edge Function

Публичная Edge Function использует ограниченный набор статусов доставки:

Для restricted, hold и anonymized заявки функция claim_broker_lead_notification возвращает:

{
  "claimed": false,
  "current_status": "disabled",
  "attempt_count": 0
}

Фактический attempt_count возвращается из строки заявки; пример выше показывает новую заявку без предыдущих попыток.

Edge Function завершает restricted duplicate до повторного Telegram claim и передаёт браузеру минимальный ответ:

{
  "ok": true,
  "success": true,
  "duplicate": true,
  "request_id": "исходный request ID",
  "notification_status": "disabled"
}

request_id уже создан браузером при первом заполнении и используется как номер обращения. Он не заменяется внутренним lead_id.

HTTP-ответ остаётся 200, поскольку исходная заявка существует и повторный request ID обработан идемпотентно. Статус disabled означает только отсутствие дальнейшей серверной доставки, а не новую заявку и не ошибку формы.

Минимизация данных

Restricted duplicate не возвращает:

Обычная новая или повторная заявка сохраняет прежний контракт до отдельной версии публичного API. Минимизация применяется только после подтверждённого ограничения, hold или обезличивания.

Внутренний административный статус

Закрытый ручной retry сохраняет более точный внутренний ответ restricted. Это позволяет оператору отличить privacy-ограничение от обычного выключенного Telegram-канала.

Публичный браузер не получает внутренний статус restricted или другие признаки причины блокировки.

Запрещённое поведение

Нельзя:

Граница каналов

Этот контракт относится только к будущему Supabase Edge Function. Он не удаляет и не отзывает уже доставленный Web3Forms email, SMS, MAX, ВКонтакте, Telegram или данные сторонней CRM.

ЗаявкаПозвонитьВК