Sequences
Get Sequence
Get sequence metadata, graph topology, and editable email steps
GET
/
api
/
v1
/
sequences
/
{sequenceId}
Get Sequence
curl --request GET \
--url https://api.sequenzy.com/api/v1/sequences/{sequenceId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sequenzy.com/api/v1/sequences/{sequenceId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sequenzy.com/api/v1/sequences/{sequenceId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.sequenzy.com/api/v1/sequences/{sequenceId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.sequenzy.com/api/v1/sequences/{sequenceId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.sequenzy.com/api/v1/sequences/{sequenceId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/sequences/{sequenceId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"sequence": {
"id": "seq_abc123",
"name": "Welcome Sequence",
"status": "active",
"enrollmentPaused": false,
"effectiveStatus": "live",
"acceptsNewEnrollments": true,
"processesExistingEnrollments": true,
"effectiveStatusSummary": "Live. New subscribers enroll and existing recipients keep receiving steps.",
"trigger": "trigger_list",
"senderProfileId": "sender_abc123",
"fromName": "Acme",
"fromEmail": "hello@example.com",
"replyProfileId": "reply_abc123",
"replyToName": "Support",
"replyToEmail": "support@example.com",
"sendingWindow": {
"enabled": true,
"timezone": "Europe/Kiev",
"startTime": "08:00",
"endTime": "20:00",
"days": ["monday", "tuesday", "wednesday", "thursday", "friday"]
},
"graphRevision": "48ab6d78a2d4f2b7d2d36d8e1dba9ea3f411bb65059b627a2b8268b4e81d8f7a",
"nodes": [
{
"id": "node_trigger",
"nodeType": "trigger_list",
"config": { "triggerType": "contact_added" }
},
{
"id": "node_abc123",
"nodeType": "action_email",
"config": {
"emailId": "email_abc123",
"stepNumber": 1,
"emailPreset": "minimal"
}
},
{
"id": "node_end",
"nodeType": "action_webhook",
"config": { "isEndNode": true }
}
],
"edges": [
{
"sourceNodeId": "node_trigger",
"targetNodeId": "node_abc123"
},
{
"sourceNodeId": "node_abc123",
"targetNodeId": "node_end"
}
],
"emails": [
{
"nodeId": "node_abc123",
"emailId": "email_abc123",
"stepNumber": 1,
"name": "Welcome Sequence - Email 1",
"subject": "Welcome to Acme",
"previewText": null,
"emailPreset": "minimal",
"delayNodeId": null,
"delayMode": null,
"delayMs": null,
"waitUntil": null,
"waitUntilWeekday": null,
"delayDisplay": null,
"delayDescription": null,
"blocks": []
}
],
"createdAt": "2026-04-20T10:00:00.000Z",
"enrichmentStatus": "complete",
"emailCount": 1,
"enrichedCount": 1
}
}
{
"error": "Invalid API key"
}
{
"error": "No companies found. Create a company first using the create_company tool."
}
{
"error": "Sequence not found"
}
Get Sequence
Returns one sequence with its automation nodes, edges, graph revision, and editable email steps. PassgraphRevision back with graphEdit when updating
the topology so a stale client cannot overwrite a newer graph change. Each
linked email includes its effective emailPreset (branded or minimal), the
same value shown under Style > Format in the dashboard. Native block emails
can include supported custom HTML blocks and still return their format. An email
stored entirely as one standalone raw HTML block returns null.
Read effectiveStatus (draft, live, enrollment_paused, paused, or
archived) to know whether the sequence is running. status alone still reads
active while new enrollments are paused. See
List Sequences for the full mapping, and note
that triggerConfig.active is a legacy field the runtime ignores - it mirrors
acceptsNewEnrollments.
Request
string
required
Sequence ID.
curl "https://api.sequenzy.com/api/v1/sequences/seq_abc123" \
-H "Authorization: Bearer seq_live_xxx"
Responses
{
"success": true,
"sequence": {
"id": "seq_abc123",
"name": "Welcome Sequence",
"status": "active",
"enrollmentPaused": false,
"effectiveStatus": "live",
"acceptsNewEnrollments": true,
"processesExistingEnrollments": true,
"effectiveStatusSummary": "Live. New subscribers enroll and existing recipients keep receiving steps.",
"trigger": "trigger_list",
"senderProfileId": "sender_abc123",
"fromName": "Acme",
"fromEmail": "hello@example.com",
"replyProfileId": "reply_abc123",
"replyToName": "Support",
"replyToEmail": "support@example.com",
"sendingWindow": {
"enabled": true,
"timezone": "Europe/Kiev",
"startTime": "08:00",
"endTime": "20:00",
"days": ["monday", "tuesday", "wednesday", "thursday", "friday"]
},
"graphRevision": "48ab6d78a2d4f2b7d2d36d8e1dba9ea3f411bb65059b627a2b8268b4e81d8f7a",
"nodes": [
{
"id": "node_trigger",
"nodeType": "trigger_list",
"config": { "triggerType": "contact_added" }
},
{
"id": "node_abc123",
"nodeType": "action_email",
"config": {
"emailId": "email_abc123",
"stepNumber": 1,
"emailPreset": "minimal"
}
},
{
"id": "node_end",
"nodeType": "action_webhook",
"config": { "isEndNode": true }
}
],
"edges": [
{
"sourceNodeId": "node_trigger",
"targetNodeId": "node_abc123"
},
{
"sourceNodeId": "node_abc123",
"targetNodeId": "node_end"
}
],
"emails": [
{
"nodeId": "node_abc123",
"emailId": "email_abc123",
"stepNumber": 1,
"name": "Welcome Sequence - Email 1",
"subject": "Welcome to Acme",
"previewText": null,
"emailPreset": "minimal",
"delayNodeId": null,
"delayMode": null,
"delayMs": null,
"waitUntil": null,
"waitUntilWeekday": null,
"delayDisplay": null,
"delayDescription": null,
"blocks": []
}
],
"createdAt": "2026-04-20T10:00:00.000Z",
"enrichmentStatus": "complete",
"emailCount": 1,
"enrichedCount": 1
}
}
{
"error": "Invalid API key"
}
{
"error": "No companies found. Create a company first using the create_company tool."
}
{
"error": "Sequence not found"
}
⌘I
Get Sequence
curl --request GET \
--url https://api.sequenzy.com/api/v1/sequences/{sequenceId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sequenzy.com/api/v1/sequences/{sequenceId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sequenzy.com/api/v1/sequences/{sequenceId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.sequenzy.com/api/v1/sequences/{sequenceId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.sequenzy.com/api/v1/sequences/{sequenceId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.sequenzy.com/api/v1/sequences/{sequenceId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/sequences/{sequenceId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"sequence": {
"id": "seq_abc123",
"name": "Welcome Sequence",
"status": "active",
"enrollmentPaused": false,
"effectiveStatus": "live",
"acceptsNewEnrollments": true,
"processesExistingEnrollments": true,
"effectiveStatusSummary": "Live. New subscribers enroll and existing recipients keep receiving steps.",
"trigger": "trigger_list",
"senderProfileId": "sender_abc123",
"fromName": "Acme",
"fromEmail": "hello@example.com",
"replyProfileId": "reply_abc123",
"replyToName": "Support",
"replyToEmail": "support@example.com",
"sendingWindow": {
"enabled": true,
"timezone": "Europe/Kiev",
"startTime": "08:00",
"endTime": "20:00",
"days": ["monday", "tuesday", "wednesday", "thursday", "friday"]
},
"graphRevision": "48ab6d78a2d4f2b7d2d36d8e1dba9ea3f411bb65059b627a2b8268b4e81d8f7a",
"nodes": [
{
"id": "node_trigger",
"nodeType": "trigger_list",
"config": { "triggerType": "contact_added" }
},
{
"id": "node_abc123",
"nodeType": "action_email",
"config": {
"emailId": "email_abc123",
"stepNumber": 1,
"emailPreset": "minimal"
}
},
{
"id": "node_end",
"nodeType": "action_webhook",
"config": { "isEndNode": true }
}
],
"edges": [
{
"sourceNodeId": "node_trigger",
"targetNodeId": "node_abc123"
},
{
"sourceNodeId": "node_abc123",
"targetNodeId": "node_end"
}
],
"emails": [
{
"nodeId": "node_abc123",
"emailId": "email_abc123",
"stepNumber": 1,
"name": "Welcome Sequence - Email 1",
"subject": "Welcome to Acme",
"previewText": null,
"emailPreset": "minimal",
"delayNodeId": null,
"delayMode": null,
"delayMs": null,
"waitUntil": null,
"waitUntilWeekday": null,
"delayDisplay": null,
"delayDescription": null,
"blocks": []
}
],
"createdAt": "2026-04-20T10:00:00.000Z",
"enrichmentStatus": "complete",
"emailCount": 1,
"enrichedCount": 1
}
}
{
"error": "Invalid API key"
}
{
"error": "No companies found. Create a company first using the create_company tool."
}
{
"error": "Sequence not found"
}