Create List Campaign
neuron_create_list_campaignCreate a paced campaign that messages the next N un-reached members of a contact list on a schedule. The cursor follows the LIVE list — as members are added or removed, only current members get reached, and nobody is messaged twice per cycle. Multiple campaigns can run on the same or different lists concurrently. On exhaust, either stop or loop (start over after a cooldown).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Campaign name (default: 'Campaign') | |
| botId | No | Bot to send through when sendMode='bot'; its channel is used | |
| listId | Yes | The contact list to run the campaign over | |
| schedule | Yes | When each batch fires. e.g. daily at 9am in Africa/Lagos, or every weekend. | |
| sendMode | No | 'message' sends a plain broadcast; 'bot' initiates the conversation through a bot (default: 'message') | |
| batchSize | No | How many contacts to message per run (default: 20) | |
| channelId | No | WhatsApp channel to send from; falls back to the org default / first connected channel | |
| onExhaust | No | When the whole list has been reached: 'stop' (default) completes the campaign; 'loop' starts a new cycle after loopCooldownMs | |
| messageSource | Yes | How the message is resolved live at each batch run: 'static' (fixed), 'rotation' (cycle through several), 'ai' (AI-written), 'webhook' (from your service), or 'content' (a saved Neuron Note). | |
| loopCooldownMs | No | Milliseconds to wait before looping (default: 24h) | |
| startImmediately | No | Fire the first batch right away (default: true). Set false to wait for the first scheduled slot |