Create Campaign
Create scheduled campaigns with templates
Create a campaign with multiple posts scheduled according to a template.
Create Campaign
POST /v1/workspaces/{id}/campaigns/Request Body
{
"name": "Product Launch 2025",
"template": "2_week_blast",
"platforms": ["twitter", "linkedin", "facebook"],
"posts": [
{ "text": "🚀 Launching our new product next week! #ProductLaunch" },
{ "text": "📅 Only 3 days until launch! Get ready..." },
{ "text": "🎉 We're live! Check out our new product" },
{ "text": "💡 Did you know our product can help you..." }
],
"link": "https://example.com/product",
"start_date": "2025-01-20"
}Parameters
- name (required): Campaign name for your reference
- template (required): Template ID (see templates endpoint)
- platforms (required): Array of platform IDs to post to
- posts (required): Array of post objects with text
- link (optional): URL to include in all posts
- start_date (optional): When to start (defaults to today)
Example
curl -X POST "https://api.missinglettr.com/v1/workspaces/1/campaigns/" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Blog Post Promotion",
"template": "12_month_evergreen",
"platforms": ["twitter", "linkedin"],
"posts": [
{ "text": "Check out our latest blog post! 📝" },
{ "text": "In case you missed it: our guide to..." },
{ "text": "Still relevant: our post about..." }
],
"link": "https://example.com/blog/post"
}'Response
{
"id": 42,
"name": "Blog Post Promotion",
"template": "12_month_evergreen",
"status": "active",
"platforms": ["twitter", "linkedin"],
"total_posts": 3,
"scheduled_posts": 3,
"published_posts": 0,
"start_date": "2025-01-15",
"created_at": "2025-01-15T10:00:00Z"
}Tip: The number of posts you provide should match the template's expected post count. The system will distribute them according to the template's schedule.
Get Campaign Details
View a campaign with all its posts and their statuses:
GET /v1/workspaces/{id}/campaigns/{campaign_id}/Response
{
"id": 42,
"name": "Blog Post Promotion",
"template": "12_month_evergreen",
"status": "active",
"platforms": ["twitter", "linkedin"],
"posts": [
{
"id": 501,
"text": "Check out our latest blog post! 📝",
"scheduled_at": "2025-01-20T14:00:00Z",
"status": "scheduled"
},
{
"id": 502,
"text": "In case you missed it: our guide to...",
"scheduled_at": "2025-02-15T14:00:00Z",
"status": "scheduled"
}
],
"created_at": "2025-01-15T10:00:00Z"
}