Get Sequences API
Returns outreach sequence templates: an ordered list of steps with message types and wait times between steps.
Use this to get a recommended sequence, or to display options to users. Users can state their campaign objective, preferred sequence length and cadence, in order to receive a recommended sequence or set of sequences.
List all sequences (no query params) or filter by sequence length, campaign objective, cadence profile, and whether the sequence is for saturated markets (includes a connection request) or not.
Endpoint
| Method | Path |
|---|---|
| GET | /sequences/get_sequences |
Query parameters (all optional)
| Parameter | Type | Description |
|---|---|---|
| sequence_length | string | short (1-2 steps), medium (3 steps), or long (4-5 steps). |
| campaign_objective | string | brand_awareness, event_attendance, or meeting. |
| cadence_profile | string | rapid (1-2 weeks), normal (2-4 weeks), or long_term (2-3 months). |
| saturated_markets | string | true or false. When true, sequences include a connection request step; when false, they do not. |
Behavior
- No filter params sent — Response includes all sequences (no filtering).
- One or more filter params sent — Response is filtered by all four dimensions. For any param you omit or set to the literal value
default, the server uses the default below.
Default values
Used when a param is omitted or set to default:
| Parameter | Default value |
|---|---|
| sequence_length | medium |
| campaign_objective | meeting |
| cadence_profile | normal |
| saturated_markets | false |
Allowed values
| Parameter | Allowed values |
|---|---|
| sequence_length | short (1-2 steps), medium (3 steps), long (4-5 steps) |
| campaign_objective | brand_awareness, event_attendance, meeting |
| cadence_profile | rapid (1-2 weeks), normal (2-4 weeks), long_term (2-3 months) |
| saturated_markets | true (includes connection request step), false (no connection request) |
Example requests
Six example requests: all sequences, all defaults, short only, saturated medium/meeting/normal, long/brand_awareness/long_term/unsaturated, and a mix of explicit and default.
No query params
curl -X GET "https://app.upscaleoutreach.com/sequences/get_sequences" \
-H "Api-Key: YOUR_API_KEY"Response
Success: 200 OK
Each sequence in the response contains only id and steps. The id is built from the four parameters so it always encodes sequence length, campaign objective, cadence profile, and saturated markets.
Error response examples
Unauthorized (401), Internal Server Error (500):
Example response (200 OK)
{
"sequences": [
{
"id": "medium_meeting_normal_false",
"steps": [
{
"step": 1,
"message_type": "stage_ambition",
"wait_time_after": "4d 0h"
},
{
"step": 2,
"message_type": "first_follow_up",
"wait_time_after": "0d 0h"
}
]
}
]
}The id in each sequence can be parsed to recover the four dimensions: order is sequence_length, campaign_objective, cadence_profile, saturated_markets (last segment is true or false).
Response fields
| Field | Description |
|---|---|
| sequences | Array of sequence objects. Empty if no sequences match the filters. |
| sequences[].id | Identifier built from the four parameters: sequence_length_campaign_objective_cadence_profile_saturated_markets (e.g. short_brand_awareness_rapid_true). |
| sequences[].steps | Ordered list of steps. |
| sequences[].steps[].step | 1-based step number. |
| sequences[].steps[].message_type | One of: connection_request, share_material, stage_ambition, hiring_activity, first_follow_up. |
| sequences[].steps[].wait_time_after | Delay before the next step as "Xd Yh" (e.g. "0d 6h", "1d 0h"). Last step is typically "0d 0h". |