Verify Contact Emails Async
POST /contacts/verify-email/async
Queue verification for a whole list or filtered selection. SPENDS CREDITS.
Returns the number of contacts and addresses ACCEPTED, not verified - the
results land on the contacts as the job runs. all_matching resolves the
selection server-side, so the cost is not bounded by anything in the
request; send the filter you actually mean.
Authorizations
Parameters
Header Parameters
Request Body required
Queue verification for a LIST or a filtered selection.
SPENDS CREDITS, and unlike the synchronous route the size is not known
when the call returns - all_matching resolves the selection server-side.
object
Resolve the complete matching set server-side, not just a page.
Per-column filters, keyed by column name.
object
An AND/OR group of leaves and nested groups, at most three groups deep.
Mirrors SegmentFilterGroup in contacts.domain.value_objects.ag_grid_models.
op is closed because the app REFUSES an unrecognised connector rather
than defaulting to AND - defaulting would silently return a different
result set, and on a destructive route that is a different set of records
acted on.
FIXED DEPTH, NOT RECURSIVE. The app’s model is self-referencing; the
published one deliberately is not, because a schema that reaches itself
through $ref sends the docs renderer into unbounded recursion. Three
group levels (this one, SegmentFilterSubgroup, SegmentFilterInnerGroup)
cover every filter the app’s own builder produces; the app’s larger depth
and leaf budget still applies and surfaces as a 422.
object
Nested groups and/or leaf conditions.
The second group level: leaves and/or innermost groups.
object
Innermost groups and/or leaf conditions.
The third and deepest group level: leaf conditions only.
object
Leaf conditions.
One field-level condition inside an advanced-filter tree.
Mirrors contacts.domain.value_objects.ag_grid_models.SegmentFilterLeaf.
op is CLOSED here: the app compiles its UI vocabulary down to this
canonical set before sending, and an unrecognised operator reaching the
SQL builder is a 500 rather than a refusal naming the valid operators.
Connector for this group. Case-insensitive.
One field-level condition inside an advanced-filter tree.
Mirrors contacts.domain.value_objects.ag_grid_models.SegmentFilterLeaf.
op is CLOSED here: the app compiles its UI vocabulary down to this
canonical set before sending, and an unrecognised operator reaching the
SQL builder is a 500 rather than a refusal naming the valid operators.
Connector for this group. Case-insensitive.
One field-level condition inside an advanced-filter tree.
Mirrors contacts.domain.value_objects.ag_grid_models.SegmentFilterLeaf.
op is CLOSED here: the app compiles its UI vocabulary down to this
canonical set before sending, and an unrecognised operator reaching the
SQL builder is a 500 rather than a refusal naming the valid operators.
Connector for this group. Case-insensitive.
Responses
202
Successful Response
object
An open envelope for one record, one dashboard or one job receipt.
Open because most of these reads are COMPUTED shapes - an engagement summary, a next-best-step, an intelligence status - that grow with the product, and dropping a field from an advisory read makes it say “nothing to report” rather than “we did not tell you”.
object
object
Whether there are more pages
Items per page
Current page number (1-indexed)
Total number of items
422
Validation Error