Create a campaign
Create a draft campaign. It does nothing until it has audiences, a template and senders, and is activated.
POST
https://app.trygtm.com/api/v1/campaigns- Scope
write- MCP tool
- create_campaign
Headers
Idempotency-Keystringoptional- A key unique to this write, up to 255 characters. A retry carrying the same key returns the first response instead of running again. Kept for 24 hours.
Body
namestringrequired- The name to give it. Names are how campaigns, templates and lists are referred to, so make it specific.
goalstringoptional- What the campaign or template is for. Decides the default step chain and how the copy agent writes.
start_conversationbook_meetingbook_demoevent_signupnurturereengage end_datestringoptional- The last day the campaign runs, YYYY-MM-DD. Omit for no end date.
Request
curl -X POST https://app.trygtm.com/api/v1/campaigns \
-H "Authorization: Bearer $TRYGTM_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"name": "Q4 logistics leaders"
}'Response
{
"data": {
"detail": "Created the draft campaign “Q4 logistics leaders”.",
"campaign": {
"id": "3b7f0c52-91aa-4e0d-8c11-5a2d6e4f7b90",
"name": "Q4 logistics leaders",
"status": "draft",
"goal": "book_meeting",
"template_id": null,
"template_name": null,
"audiences": [],
"daily_target": 40,
"min_intent": 1,
"wait_for_intent": false,
"auto_source": true,
"end_date": null,
"created_at": "2026-09-01T12:00:00.000Z"
}
}
}