Enroll contacts in a campaign
enroll_contactsEnroll contacts by ids, tag, source/list, status, text or custom fields. Suppressed, replied, unsubscribed, bounced, address-less and blocked-domain contacts are skipped with a reason, and a contact in another running campaign is skipped (or moved with on_conflict=move). dry_run=true returns who would be enrolled and who skipped. Requires the manage_campaigns scope.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Text in name, email or title. | |
| tag | No | Every contact with this tag. | |
| list | No | Alias of source. | |
| fields | No | Exact-match filter on custom fields. | |
| source | No | Every contact from this source or list. | |
| status | No | Every contact with this status. | |
| dry_run | No | ||
| campaign_id | Yes | Campaign id. | |
| contact_ids | No | Contact ids (up to 1000). | |
| on_conflict | No | skip (default) or move. | |
| idempotency_key | No | Optional. Repeating a call with the same key and the same arguments returns the first result instead of writing again, so retries are safe. |