POST Schedule Messaging Campaign​
Start a draft campaign. Without scheduled_at the campaign starts immediately (status pending-scheduled, sending_type = instant) and message generation is queued at once. With scheduled_at it is stored in site-local time and generation is queued five minutes before it (or now, if that is already past). Accepts a Unix timestamp, a Y-m-d H:i:s string, or any strtotime-parseable string such as ISO-8601. A one-time-audience campaign must have a confirmed consent, and a one-time WhatsApp campaign must have settings.template_id. recipients_count is reset to 0 and recalculated as messages are generated. Fires fluent_crm/{channel}_campaign_status_active and, when scheduled, fluent_crm/{channel}_campaign_scheduled.
Channel: this route does not take a channel; the channel is the one stored on the campaign (sms or whatsapp) and the matching channel hooks are fired. PRO — requires the FluentCampaign Pro Messaging module with at least one channel (SMS or WhatsApp) active.
Required capability: fcrm_read_emails or fcrm_manage_emails — which one applies depends on the action being performed.
Enforced by MessagePolicy::verifyRequest(), the policy default for this route group.
Requires: FluentCampaign Pro with the Messaging module enabled. While no messaging channel (SMS or WhatsApp) is switched on the route is not registered at all and returns a 404.
Authorizations​
WordPress Application Passwords — use Basic auth with your WordPress username and an application password in the format: username:application_password
Parameters​
Path Parameters
Campaign id.
Request Body​
Responses​
Campaign scheduled.