Получатели рассылки через API
Предпросмотр показывает, какие лиды подходят под условия рассылки сейчас, без отправки сообщений. Для настройки в кабинете используйте «Получатели»; для интеграции выполните запрос ниже.
Проверьте сохранённую аудиторию
Для чтения нужно право can_view_deliveries в проекте рассылки. Используйте серверный API-ключ или OAuth-токен. DELIVERY_ID — UUID рассылки Senler.io:
curl --fail-with-body \
"https://api.senler.io/api/deliveries/$DELIVERY_ID/audience-preview?filter_source=saved" \
--header "Authorization: Bearer $ACCESS_TOKEN"
filter_source=saved использует сохранённые условия рассылки. Переданные вместе с ним фильтры аудитории не применяются.
Проверьте другие фильтры без сохранения
Передайте filter_source=query и нужные условия. Например, проверка одного сегмента:
curl --fail-with-body --get \
"https://api.senler.io/api/deliveries/$DELIVERY_ID/audience-preview" \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--data-urlencode "filter_source=query" \
--data-urlencode "segment_id=$SEGMENT_ID"
SEGMENT_ID — ID сегмента Senler.io, не название группы Senler.ru. Для нескольких сегментов повторяйте параметр segment_id. Также доступны lead_ids, channel_ids и channel_type.
При filter_source=query без условий проверяется вся доступная база проекта, а не сохранённый сегмент. Обязательные исключения подписок, блокировок и участников проекта действуют всегда, как и правила уникальности получателей.
Если filter_source не указан, API использует переданные непустые фильтры, а при их отсутствии — сохранённые. Указывайте источник явно, особенно когда пользователь очищает фильтры.
Прочитайте результат
Ответ содержит:
filters— условия этого предпросмотра;saved_filters— сохранённые условия, с которыми рассылка будет запускаться;filter_source— фактически использованный источник;total_unique_recipients— число уникальных получателей после всех обязательных исключений;items— текущую страницу получателей;next_cursor— курсор следующей страницы илиnull.
Для следующей страницы передайте cursor=next_cursor, сохранив источник и условия. Предпросмотр не фиксирует аудиторию: состав лидов может измениться до запуска.
Поле audience_scope помогает проверить охват:
all_project— вся доступная база проекта;all_selected_channels— вся доступная база выбранных каналов или типа канала;filtered— отбор по лидам или сегментам.
Наличие фильтра по каналу само по себе не означает узкую аудиторию. Для отправки по всей базе подтвердите именно охват и количество получателей, а не только текст сообщения.
Сохраните условия перед запуском
Предпросмотр не изменяет рассылку. Чтобы использовать проверенные условия, сохраните их в поле filters через PATCH /api/deliveries/DELIVERY_ID с правом can_manage_deliveries, затем снова запросите предпросмотр с filter_source=saved.
Число получателей и доступный объём отправки — разные показатели. GET /api/deliveries/DELIVERY_ID/start-preview проверяет объём запуска с учётом суточного лимита. Дальнейшие действия описаны в запуске рассылки.
При работе через MCP сначала найдите метод и прочитайте его схему, затем вызывайте его с теми же условиями. Не заменяйте неизвестный ID сегмента пустым фильтром.