Sequences define automated follow-up emails that trigger based on recipient behavior. Each follow-up step has its own email variants.
How Sequences Work
- Initial email is sent to lead
- ColdSend waits the configured number of days
- If the trigger condition is met, follow-up is sent
- Process repeats for subsequent steps
Configuring Sequences
Provided in the sequences array when updating a campaign:
response = requests.put(
f"{base_url}/api/public/v1/campaigns/{campaign_id}",
headers={"X-API-Key": api_key},
json={
"sequences": [
{
"step_number": 2,
"trigger_type": "NOT_OPENED",
"wait_days": 3,
"variants": [
{
"variant_name": "A",
"subject_template": "Following up on my previous email",
"email_content": "Hi {{first_name}},\n\nI wanted to follow up on my previous email...\n\nBest,\nJohn",
"distribution_percent": 100
}
]
},
{
"step_number": 3,
"trigger_type": "NOT_REPLIED",
"wait_days": 5,
"variants": [
{
"variant_name": "A",
"subject_template": "Last thought",
"email_content": "Hi {{first_name}},\n\nOne last thought I wanted to share...\n\nBest,\nJohn",
"distribution_percent": 100
}
]
}
]
}
)
Sequence Fields
| Field | Type | Required | Description |
|---|
step_number | int | Yes | Sequence position (2-4). Step 1 is the initial email. |
trigger_type | string | Yes | When to send: NOT_OPENED, NOT_REPLIED, or OPENED_BUT_NOT_REPLIED |
wait_days | int | Yes | Days to wait (1-30) |
enable_unsubscribe | bool | No | Override campaign setting. Inherits if not specified. |
variants | array | Yes | At least one email variant required per sequence |
Trigger Types
| Trigger | Fires When |
|---|
NOT_OPENED | Lead has not opened any previous email |
NOT_REPLIED | Lead has not replied to any email (includes those who opened but didn’t reply) |
OPENED_BUT_NOT_REPLIED | Lead opened at least one email but hasn’t replied |
NOT_REPLIED is the most commonly used trigger — it reaches both non-openers and openers who didn’t respond.
Sequence Limits
| Limit | Value |
|---|
| Maximum sequences | 3 per campaign |
| Step numbers | 2, 3, or 4 |
| Wait days per sequence | 1-30 days |
| Total sequence duration | 45 days maximum |
Best Practices
Recommended Timing
| Step | Recommended Wait | Purpose |
|---|
| 2 (first follow-up) | 2-4 days | Reference original email, add value |
| 3 (second follow-up) | 5-7 days | Offer a case study or specific resource |
| 4 (final follow-up) | 7-10 days | Create urgency or breakup email |
Subject Line Patterns
| Approach | Example |
|---|
| Reference previous | Re: Quick question about {{company}} |
| Fresh angle | One more thing about {{company}} |
| Curiosity | Did you see this? |
Next Steps
Email Variants
A/B testing and personalization for follow-ups.
Personalization
Use variables, spintax, and conditionals.