Create campaign
gambot_create_campaignCreate WhatsApp broadcast campaigns manually or on a schedule. Target Excel uploads, CRM segments, or contacts, with template or free-text messages.
Instructions
Create a WhatsApp broadcast campaign. Manual (run on demand) or scheduled (one-time / recurring). For a template broadcast set messageType='Template' + wabaTemplateId; for free text set messageType='regular' + message. Audience: recipientSource='Excel' + ExcelData, or ContactFilters (CRM segment), or legacy ContactsQuery. Scheduling: campaignTrigger='Scheduled' + scheduleType ('once' with runAt+timezone, or 'repeated' with interval/intervalNumber/endCondition).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| runAt | No | First/only run datetime, e.g. 2026-07-01T09:00:00 (with timezone). | |
| message | No | Message text (required for messageType='regular'). | |
| interval | No | ||
| timezone | No | IANA timezone, e.g. Asia/Jerusalem. | |
| ExcelData | No | { recipients: [{ phone, variables:{var1:..}, rowData:{} }] } | |
| messageType | Yes | Template = template broadcast; regular = free text. | |
| campaignName | Yes | ||
| endCondition | No | { type: 'none'|'until'|'count', value: '...' } | |
| fromNumberId | No | Sender Meta phone_number_id (multi-number orgs). | |
| scheduleType | No | ||
| ContactsQuery | No | Legacy keys/tags filter. | |
| ContactFilters | No | { filters:[...], logic:'AND'|'OR' } CRM segment. | |
| intervalNumber | No | Every N intervals (recurring). | |
| wabaTemplateId | No | Template id (required for messageType='Template'). | |
| campaignTrigger | No | Manually (default) or Scheduled. | |
| recipientSource | No | e.g. 'Excel'. | |
| templateVariableQuery | No | Maps template variables to columns/fields. |