campaigns

POST /v1/campaigns/segments/preview

How many people this reaches, who they are, and who it leaves out.

Усі кінцеві точки campaigns

Автентифікація

Надішліть ключ API як маркер носія (bearer token). Ця кінцева точка не вказує конкретного дозволу в специфікації, тому надайте своєму ключу мінімально необхідні права та перевірте відповідь, замість того щоб припускати.

Де вказується ідентифікатор вашої організації

Цей ендпоїнт приймає org_id як параметр запиту. Залиште його порожнім, і виклик охопить увесь ваше дерево орендарів; надішліть його, щоб звузити виклик до однієї організації.

Ідентифікатор вашої організації знаходиться на екрані API-ключів у вашій панелі керування, поруч із самим ключем. Це той самий ідентифікатор у кожному вашому запиті.

Спробувати

Замініть усе в кутових дужках власними значеннями, а заповнювач ключа — ключем із вашої панелі керування.

curl -X POST https://api.zinndigital.com/v1/campaigns/segments/preview \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{  }'

Увійшли в систему? Консоль API у вашій панелі керування автоматично підставляє ваш реальний ідентифікатор організації та ваш власний ключ, а також виконує запит до робочого API, щоб ви могли побачити справжню відповідь. Відкрийте цю кінцеву точку в консолі API

Деталі

Pass either a `definition` (to preview an unsaved segment as you build it) or a `segment_id` — exactly one. ⛔ `total` is the TRUE recipient count and `sample` is a bounded illustration of it. They are different numbers and `truncated` says when: an operator who reads the sample size as the audience size sends thousands of emails believing they sent twenty. Every response carries all five skip counters whether or not any is non-zero, because a counter that disappears when it is zero is indistinguishable from a fence that never ran. `skipped_no_marketing_consent` will be large today: marketing is soft opt-in for people who are or were customers, and anyone else needs an explicit opt-in.

Параметри

НазваТипОбов'язковеЩо це таке
org_id (query)stringНі

Тіло запиту

НазваТипОбов'язковеЩо це таке
definitionCampaignSegmentNodeНіA filter tree. Two node shapes and no third: a GROUP (`op` with `children`) or a CONDITION (`field`/`operator`/`value`). `not` takes exactly one child — an n-ary `not` reads as…
segment_idstringНі
channelstringНі
purposestring<marketing, transactional>Ні`marketing` applies the consent fence and the suppression list; `transactional` applies neither — a service notice is not silenced by "stop sending me offers".
include_not_in_good_standingbooleanНі⚖️ Owner ruling 2026-08-26. Suspended and unpaid accounts are excluded by DEFAULT, because a send costs money (CLAUDE.md §2.46). Set this to reach them anyway — which is what a…
limitintegerНі
record_approvalbooleanНіPersist this resolution as an immutable **approval record** — what the operator saw and agreed to, stamped at the moment they agreed. Returns its id as `snapshot_id`. ⛔ Requires…

Відповідь

НазваТипОбов'язковеЩо це таке
snapshot_idstringНіThe approval record's id when `record_approval` was set; `null` otherwise.
totalintegerТакThe TRUE recipient count — not the length of `sample`. Show this number, and show the skips beside it.
skipped_not_in_good_standingintegerТак
skipped_no_marketing_consentintegerТакPeople the soft opt-in does not cover — a trial that never converted, an imported contact — who hold no explicit opt-in.
skipped_unsubscribedintegerТак
skipped_channel_mutedintegerТак
skipped_no_destinationintegerТакAccounts with no member carrying an address on this channel.
skipped_totalintegerТак
truncatedbooleanТакTrue when `sample` is shorter than `total`.
evaluated_atstringТак
scopestring<platform, reseller>Так
sampleobject[]Так

Помилки, які може повертати ця кінцева точка

401 · 403 · 422