Create campaign
create_campaignCreate a campaign as a draft: its audience, schedule and emails, sent in the order given with delay_days before each (the first counts from when a contact enters). Nothing sends while it is a draft. Show the user the result and the audience (preview_audience) before set_campaign_status live. Add branches afterwards with update_campaign_step. For activation emails, exclude the tag the user's app adds at finished setup, so people leave once they are set up.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"project_id": "<project_id>",
"name": "<name>",
"timezone": "<timezone>",
"send_window": "<send_window>",
"is_stopped_on_reply": "<is_stopped_on_reply>",
"filter_groups": "<filter_groups>",
"steps": "<steps>"
},
"name": "create_campaign"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| steps | Yes | ||
| timezone | Yes | IANA time zone the send window is read in, unless the contact has its own. | |
| project_id | Yes | ||
| send_window | Yes | When emails may go out, in the contact's time zone (else the campaign's). Null sends at any hour. | |
| filter_groups | Yes | A contact matches when it passes every filter of at least one group. An empty list means every contact in the project. | |
| is_stopped_on_reply | Yes | True ends a contact's campaign when they reply to any of its emails. |