Update campaign configuration
Modify campaign settings, leads, inboxes, email content, or sequences. All validations are handled automatically - no need to track internal steps.
Set launch: true when the campaign is ready to activate. The response includes
is_launch_ready and missing_requirements to help you understand what’s needed.
import requests
campaign_id = "550e8400-e29b-41d4-a716-446655440000"
# Update campaign with email content
response = requests.put(
f"https://api.coldsend.pro/api/public/v1/campaigns/{campaign_id}",
headers={"X-API-Key": "your-api-key"},
json={
"variants": [{
"variant_name": "A",
"subject_template": "Quick question, {{first_name}}",
"email_content": "Hi {{first_name}},...",
"distribution_percent": 100
}]
}
)
# Response shows what's still needed
# {"is_launch_ready": false, "missing_requirements": ["leads", "inboxes"]}
# Launch when ready
response = requests.put(
f"https://api.coldsend.pro/api/public/v1/campaigns/{campaign_id}",
headers={"X-API-Key": "your-api-key"},
json={"launch": true}
)
# {"status": "ACTIVE", "is_launch_ready": true, "missing_requirements": []}
API key with format cs_live_xxx
Request schema for updating a campaign via public API.
This schema does NOT expose internal step mechanics. Simply provide the fields you want to update, and the system will handle validation automatically. Set 'launch=true' when you're ready to activate the campaign.
Campaign name (minimum 8 characters)
8 - 255Maximum emails per inbox per day (1-100)
1 <= x <= 100Campaign start date (ISO 8601 format)
Timezone for scheduling (IANA format)
100Days to send (1=Monday, 7=Sunday)
1 - 7 elementsSending window start hour (0-23)
0 <= x <= 23Sending window end hour (1-24)
1 <= x <= 24Enable open tracking
Enable unsubscribe link
Column mapping from CSV to lead fields
Inbox IDs to use for sending
1Email variants for A/B testing. All variants must sum to 100% distribution.
Follow-up email sequences (max 3)
Set to true when ready to activate the campaign. Campaign must have leads, inboxes, and email content.
Campaign updated successfully
Response for public campaign update.
Campaign ID
Campaign name
Campaign status: DRAFT, ACTIVE, PAUSED, COMPLETED, or FAILED
Whether the campaign has all required components to launch
Last update timestamp
List of missing requirements before launch (empty if launch-ready)