Campaigns
A campaign pairs an email template with a customer group (and an optional event) and sends that template to the group. It mirrors the admin Marketing → Communications → Campaigns screen.
How a campaign works
A campaign brings together four pieces and then sends them as one email blast.
- Template —
marketing_template_idpoints at the email template whose HTML body is sent. Thesubjectis the email subject line. - Audience —
customer_group_idselects which customer group receives the email. Only subscribed members of that group are mailed. When the group is the guest group, the guest newsletter subscribers are mailed instead. - Channel —
channel_idis the storefront channel the campaign sends from. - Event —
marketing_event_idis an optional event the campaign can be timed against; it may benull.
Status. status (0/1) toggles the campaign on. The send action refuses an inactive (status = 0) campaign.
Resolved objects. The detail endpoint resolves the channel, customerGroup, marketingTemplate, and marketingEvent objects (marketingEvent is an object or null when no event is linked). These objects are null on list rows.
Sending. Send queues the email to every subscribed member of the customer group right away, skipping any event-date gate. There is no mass-delete for campaigns — the admin UI exposes per-row delete only.
Relations. Campaigns draw their body from Email Templates, can be timed against Events, and reach the subscribed members tracked under Newsletter Subscribers.
Operations in this menu
| Action | Endpoint |
|---|---|
| List | GET /api/admin/marketing/campaigns |
| Detail | GET /api/admin/marketing/campaigns/{id} |
| Create | POST /api/admin/marketing/campaigns |
| Update | PUT /api/admin/marketing/campaigns/{id} |
| Delete | DELETE /api/admin/marketing/campaigns/{id} |
| Send | POST /api/admin/marketing/campaigns/{id}/send |
All Campaigns endpoints require an admin Bearer token — see Authentication.

