Lists
Add Subscribers To List
Bulk add subscribers to a list
POST
/
api
/
v1
/
lists
/
{listId}
/
subscribers
Add Subscribers To List
curl --request POST \
--url https://api.sequenzy.com/api/v1/lists/{listId}/subscribers \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"emails": [
"<string>"
],
"duplicateStrategy": "<string>",
"enrollInSequences": true,
"optInMode": "<string>"
}
'import requests
url = "https://api.sequenzy.com/api/v1/lists/{listId}/subscribers"
payload = {
"emails": ["<string>"],
"duplicateStrategy": "<string>",
"enrollInSequences": True,
"optInMode": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
emails: ['<string>'],
duplicateStrategy: '<string>',
enrollInSequences: true,
optInMode: '<string>'
})
};
fetch('https://api.sequenzy.com/api/v1/lists/{listId}/subscribers', 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/lists/{listId}/subscribers",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'emails' => [
'<string>'
],
'duplicateStrategy' => '<string>',
'enrollInSequences' => true,
'optInMode' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.sequenzy.com/api/v1/lists/{listId}/subscribers"
payload := strings.NewReader("{\n \"emails\": [\n \"<string>\"\n ],\n \"duplicateStrategy\": \"<string>\",\n \"enrollInSequences\": true,\n \"optInMode\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.sequenzy.com/api/v1/lists/{listId}/subscribers")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"emails\": [\n \"<string>\"\n ],\n \"duplicateStrategy\": \"<string>\",\n \"enrollInSequences\": true,\n \"optInMode\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/lists/{listId}/subscribers")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"emails\": [\n \"<string>\"\n ],\n \"duplicateStrategy\": \"<string>\",\n \"enrollInSequences\": true,\n \"optInMode\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"listId": "list_abc123",
"total": 2,
"processed": 2,
"created": 1,
"updated": 1,
"skipped": 0,
"addedToList": 2,
"failed": 0,
"duplicateInputCount": 0,
"ignoredBlankCount": 0,
"results": [
{
"email": "one@example.com",
"success": true,
"created": false,
"updated": false,
"skipped": true,
"addedToList": true
}
]
}
{
"error": "Provide at least one non-empty email address."
}
{
"error": "Unauthorized"
}
{
"error": "List not found"
}
{
"error": "Failed to add subscribers to list"
}
Add existing or new subscribers to one list from an email array. Send up to 500
email addresses per request. This is useful for temporary batch lists, imports,
and support workflows.
Use exactly
POST /api/v1/lists/{listId}/subscribers. There is no /bulk
suffix for this endpoint.
Prefer this endpoint over looping one subscriber per request. Standard API rate
limits still apply: 100 requests per minute per API key and 20 requests per
second burst.
Request
Subscriber list ID.
Email addresses to add to the list. Maximum 500 per request.
Existing subscriber behavior:
skip, merge, or overwrite.Whether newly created subscribers should enter matching sequences.
Consent mode for newly created subscribers:
default, confirmed, or
double_opt_in.curl -X POST "https://api.sequenzy.com/api/v1/lists/list_abc123/subscribers" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"emails": ["one@example.com", "two@example.com"],
"duplicateStrategy": "skip",
"enrollInSequences": true
}'
Responses
{
"success": true,
"listId": "list_abc123",
"total": 2,
"processed": 2,
"created": 1,
"updated": 1,
"skipped": 0,
"addedToList": 2,
"failed": 0,
"duplicateInputCount": 0,
"ignoredBlankCount": 0,
"results": [
{
"email": "one@example.com",
"success": true,
"created": false,
"updated": false,
"skipped": true,
"addedToList": true
}
]
}
{
"error": "Provide at least one non-empty email address."
}
{
"error": "Unauthorized"
}
{
"error": "List not found"
}
{
"error": "Failed to add subscribers to list"
}
⌘I
Add Subscribers To List
curl --request POST \
--url https://api.sequenzy.com/api/v1/lists/{listId}/subscribers \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"emails": [
"<string>"
],
"duplicateStrategy": "<string>",
"enrollInSequences": true,
"optInMode": "<string>"
}
'import requests
url = "https://api.sequenzy.com/api/v1/lists/{listId}/subscribers"
payload = {
"emails": ["<string>"],
"duplicateStrategy": "<string>",
"enrollInSequences": True,
"optInMode": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
emails: ['<string>'],
duplicateStrategy: '<string>',
enrollInSequences: true,
optInMode: '<string>'
})
};
fetch('https://api.sequenzy.com/api/v1/lists/{listId}/subscribers', 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/lists/{listId}/subscribers",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'emails' => [
'<string>'
],
'duplicateStrategy' => '<string>',
'enrollInSequences' => true,
'optInMode' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.sequenzy.com/api/v1/lists/{listId}/subscribers"
payload := strings.NewReader("{\n \"emails\": [\n \"<string>\"\n ],\n \"duplicateStrategy\": \"<string>\",\n \"enrollInSequences\": true,\n \"optInMode\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.sequenzy.com/api/v1/lists/{listId}/subscribers")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"emails\": [\n \"<string>\"\n ],\n \"duplicateStrategy\": \"<string>\",\n \"enrollInSequences\": true,\n \"optInMode\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/lists/{listId}/subscribers")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"emails\": [\n \"<string>\"\n ],\n \"duplicateStrategy\": \"<string>\",\n \"enrollInSequences\": true,\n \"optInMode\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"listId": "list_abc123",
"total": 2,
"processed": 2,
"created": 1,
"updated": 1,
"skipped": 0,
"addedToList": 2,
"failed": 0,
"duplicateInputCount": 0,
"ignoredBlankCount": 0,
"results": [
{
"email": "one@example.com",
"success": true,
"created": false,
"updated": false,
"skipped": true,
"addedToList": true
}
]
}
{
"error": "Provide at least one non-empty email address."
}
{
"error": "Unauthorized"
}
{
"error": "List not found"
}
{
"error": "Failed to add subscribers to list"
}