campaigns

POST /v1/campaigns/segments/preview

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

Lahat ng campaigns endpoint

Pagpapatotoo

Magpadala ng API key bilang bearer token. Ang endpoint na ito ay hindi naglatag ng tiyak na pahintulot sa pagtutukoy, kaya ibigay sa iyong key ang pinakamababang kailangan nito at suriin ang tugon sa halip na umasa.

Kung saan mapupunta ang id ng iyong organisasyon

Tinatanggap ng endpoint na ito ang org_id bilang parameter ng query. Huwag itong isama at saklaw ng tawag ang buong subtree ng iyong tenancy; ipadala ito para paliitin ang tawag sa isang organisasyon.

Ang id ng iyong organisasyon ay nasa screen ng mga API key sa iyong dashboard, sa tabi mismo ng key. Ito ang parehong id sa bawat tawag na gagawin mo.

Subukan ito

Palitan ang anuman sa loob ng mga panaklong na may anggulo ng iyong sariling mga halaga, at ang placeholder ng key na may key mula sa iyong dashboard.

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

Nakalagda? Ang API console sa iyong dashboard ay awtomatikong naglalagay ng iyong tunay na ID ng organisasyon at sariling susi, at pinapatakbo ang kahilingan laban sa live na API upang makita mo ang aktwal na tugon. Buksan ang endpoint na ito sa console ng API

Mga Detalye

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.

Mga Parameter

PangalanUriKailanganAno ito
org_id (query)stringHindi

Katawan ng kahilingan

PangalanUriKailanganAno ito
definitionCampaignSegmentNodeHindiA 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_idstringHindi
channelstringHindi
purposestring<marketing, transactional>Hindi`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_standingbooleanHindi⚖️ 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…
limitintegerHindi
record_approvalbooleanHindiPersist 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…

Tugon

PangalanUriKailanganAno ito
snapshot_idstringHindiThe approval record's id when `record_approval` was set; `null` otherwise.
totalintegerOoThe TRUE recipient count — not the length of `sample`. Show this number, and show the skips beside it.
skipped_not_in_good_standingintegerOo
skipped_no_marketing_consentintegerOoPeople the soft opt-in does not cover — a trial that never converted, an imported contact — who hold no explicit opt-in.
skipped_unsubscribedintegerOo
skipped_channel_mutedintegerOo
skipped_no_destinationintegerOoAccounts with no member carrying an address on this channel.
skipped_totalintegerOo
truncatedbooleanOoTrue when `sample` is shorter than `total`.
evaluated_atstringOo
scopestring<platform, reseller>Oo
sampleobject[]Oo

Mga error na maibabalik ng endpoint na ito

401 · 403 · 422