Subscribers
Get Subscriber
Get a subscriber by email address with notes, lists, sequence enrollments, and recent activity
GET
/
api
/
v1
/
subscribers
/
{email}
Get Subscriber
curl --request GET \
--url https://api.sequenzy.com/api/v1/subscribers/{email} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sequenzy.com/api/v1/subscribers/{email}"
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/subscribers/{email}', 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/subscribers/{email}",
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/subscribers/{email}"
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/subscribers/{email}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/subscribers/{email}")
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,
"subscriber": {
"id": "sub_abc123",
"email": "user@sequenzy.com",
"externalId": "user_123",
"firstName": "John",
"lastName": "Doe",
"status": "active",
"emailProvider": "gmail",
"tags": ["customer", "newsletter"],
"customAttributes": { "plan": "pro" },
"notes": [
{
"id": "note_123",
"subscriberId": "sub_abc123",
"authorId": "user_123",
"body": "Asked about enterprise pricing",
"createdAt": "2026-06-28T10:00:00.000Z",
"updatedAt": "2026-06-28T10:00:00.000Z",
"author": {
"id": "user_123",
"name": "Ana",
"email": "ana@example.com"
}
}
],
"lists": [
{
"id": "list_vip",
"name": "VIP Customers",
"description": null,
"isPrivate": false,
"subscribedAt": "2024-01-10T09:00:00Z",
"unsubscribedAt": null
}
],
"sequenceEnrollments": [
{
"tokenId": "token_123",
"sequenceId": "seq_welcome",
"sequenceName": "Welcome Flow",
"sequenceStatus": "active",
"enrollmentStatus": "active",
"currentNodeId": "node_abc",
"currentNodeType": "action_email",
"currentNodeLabel": "Send welcome email",
"scheduledFor": null,
"enteredAt": "2024-01-10T09:05:00Z",
"updatedAt": "2024-01-10T09:05:00Z"
}
],
"emailStats": {
"sent": 12,
"delivered": 12,
"opened": 9,
"clicked": 3,
"bounced": 0,
"unsubscribed": 0,
"complained": 0
},
"activity": [
{
"id": "evt_1",
"eventType": "custom",
"eventTime": "2024-01-15T10:25:00Z",
"emailSendId": null,
"campaignId": null,
"clickedUrl": null,
"machine": false,
"engagementQuality": "human",
"classificationReasons": [],
"bounceType": null,
"eventName": "saas.purchase",
"properties": { "plan": "pro" }
}
],
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
}
}
{
"success": false,
"error": "externalId is required"
}
{
"success": false,
"error": "Subscriber not found"
}
{
"success": false,
"error": "Unauthorized"
}
{
"success": false,
"error": "Internal server error"
}
Retrieve a subscriber by their email address. The response includes the base subscriber profile plus internal notes, list memberships, sequence enrollments, email engagement stats, and the most recent activity events. Open and click stats exclude detected email-security scanners and tracked brand assets by default.
You can also retrieve by external ID with
When machine engagement is included, open/click activity events include
GET /api/v1/subscribers/external?externalId={externalId}.
Path Parameters
Subscriber email (URL encoded)
Query Parameters
External ID to use with
/subscribers/external. Use this route for IDs that
contain /.Set to
true to include detected scanner, preview, and tracked asset
open/click events in emailStats and recent activity.machine, engagementQuality, and classificationReasons fields so clients
can distinguish human activity from scanners and tracked assets.
curl "https://api.sequenzy.com/api/v1/subscribers/user%40sequenzy.com" \
-H "Authorization: Bearer YOUR_API_KEY"
curl "https://api.sequenzy.com/api/v1/subscribers/external?externalId=user_123" \
-H "Authorization: Bearer YOUR_API_KEY"
Responses
{
"success": true,
"subscriber": {
"id": "sub_abc123",
"email": "user@sequenzy.com",
"externalId": "user_123",
"firstName": "John",
"lastName": "Doe",
"status": "active",
"emailProvider": "gmail",
"tags": ["customer", "newsletter"],
"customAttributes": { "plan": "pro" },
"notes": [
{
"id": "note_123",
"subscriberId": "sub_abc123",
"authorId": "user_123",
"body": "Asked about enterprise pricing",
"createdAt": "2026-06-28T10:00:00.000Z",
"updatedAt": "2026-06-28T10:00:00.000Z",
"author": {
"id": "user_123",
"name": "Ana",
"email": "ana@example.com"
}
}
],
"lists": [
{
"id": "list_vip",
"name": "VIP Customers",
"description": null,
"isPrivate": false,
"subscribedAt": "2024-01-10T09:00:00Z",
"unsubscribedAt": null
}
],
"sequenceEnrollments": [
{
"tokenId": "token_123",
"sequenceId": "seq_welcome",
"sequenceName": "Welcome Flow",
"sequenceStatus": "active",
"enrollmentStatus": "active",
"currentNodeId": "node_abc",
"currentNodeType": "action_email",
"currentNodeLabel": "Send welcome email",
"scheduledFor": null,
"enteredAt": "2024-01-10T09:05:00Z",
"updatedAt": "2024-01-10T09:05:00Z"
}
],
"emailStats": {
"sent": 12,
"delivered": 12,
"opened": 9,
"clicked": 3,
"bounced": 0,
"unsubscribed": 0,
"complained": 0
},
"activity": [
{
"id": "evt_1",
"eventType": "custom",
"eventTime": "2024-01-15T10:25:00Z",
"emailSendId": null,
"campaignId": null,
"clickedUrl": null,
"machine": false,
"engagementQuality": "human",
"classificationReasons": [],
"bounceType": null,
"eventName": "saas.purchase",
"properties": { "plan": "pro" }
}
],
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
}
}
{
"success": false,
"error": "externalId is required"
}
{
"success": false,
"error": "Subscriber not found"
}
{
"success": false,
"error": "Unauthorized"
}
{
"success": false,
"error": "Internal server error"
}
⌘I
Get Subscriber
curl --request GET \
--url https://api.sequenzy.com/api/v1/subscribers/{email} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sequenzy.com/api/v1/subscribers/{email}"
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/subscribers/{email}', 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/subscribers/{email}",
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/subscribers/{email}"
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/subscribers/{email}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/subscribers/{email}")
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,
"subscriber": {
"id": "sub_abc123",
"email": "user@sequenzy.com",
"externalId": "user_123",
"firstName": "John",
"lastName": "Doe",
"status": "active",
"emailProvider": "gmail",
"tags": ["customer", "newsletter"],
"customAttributes": { "plan": "pro" },
"notes": [
{
"id": "note_123",
"subscriberId": "sub_abc123",
"authorId": "user_123",
"body": "Asked about enterprise pricing",
"createdAt": "2026-06-28T10:00:00.000Z",
"updatedAt": "2026-06-28T10:00:00.000Z",
"author": {
"id": "user_123",
"name": "Ana",
"email": "ana@example.com"
}
}
],
"lists": [
{
"id": "list_vip",
"name": "VIP Customers",
"description": null,
"isPrivate": false,
"subscribedAt": "2024-01-10T09:00:00Z",
"unsubscribedAt": null
}
],
"sequenceEnrollments": [
{
"tokenId": "token_123",
"sequenceId": "seq_welcome",
"sequenceName": "Welcome Flow",
"sequenceStatus": "active",
"enrollmentStatus": "active",
"currentNodeId": "node_abc",
"currentNodeType": "action_email",
"currentNodeLabel": "Send welcome email",
"scheduledFor": null,
"enteredAt": "2024-01-10T09:05:00Z",
"updatedAt": "2024-01-10T09:05:00Z"
}
],
"emailStats": {
"sent": 12,
"delivered": 12,
"opened": 9,
"clicked": 3,
"bounced": 0,
"unsubscribed": 0,
"complained": 0
},
"activity": [
{
"id": "evt_1",
"eventType": "custom",
"eventTime": "2024-01-15T10:25:00Z",
"emailSendId": null,
"campaignId": null,
"clickedUrl": null,
"machine": false,
"engagementQuality": "human",
"classificationReasons": [],
"bounceType": null,
"eventName": "saas.purchase",
"properties": { "plan": "pro" }
}
],
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
}
}
{
"success": false,
"error": "externalId is required"
}
{
"success": false,
"error": "Subscriber not found"
}
{
"success": false,
"error": "Unauthorized"
}
{
"success": false,
"error": "Internal server error"
}