curl --request GET \
--url https://client-api.salesfinity.co/v2/sequencer/email-accounts \
--header 'x-api-key: <api-key>'import requests
url = "https://client-api.salesfinity.co/v2/sequencer/email-accounts"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://client-api.salesfinity.co/v2/sequencer/email-accounts', 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://client-api.salesfinity.co/v2/sequencer/email-accounts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$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://client-api.salesfinity.co/v2/sequencer/email-accounts"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://client-api.salesfinity.co/v2/sequencer/email-accounts")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://client-api.salesfinity.co/v2/sequencer/email-accounts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": 123,
"from_name": "<string>",
"from_email": "<string>",
"is_paused": true,
"is_connected": true,
"can_send": true,
"warmup_status": "<string>",
"daily_sent_count": 123,
"message_per_day": 123,
"assigned_to": {}
}
],
"pagination": {
"total": 123,
"page": 123,
"limit": 123,
"pages": 123
},
"provisioned": true,
"summary": {}
}{
"message": [
"limit must not be greater than 100"
],
"error": "Bad Request",
"statusCode": 400
}{
"message": "Forbidden resource",
"error": "Forbidden",
"statusCode": 403
}{
"message": "Too many requests",
"error": "Too Many Requests",
"statusCode": 429
}{
"message": "Internal server error",
"error": "Internal Server Error",
"statusCode": 500
}List sending mailboxes
The team’s sending mailboxes with their health, warmup state and daily capacity. A sequence containing an email step cannot be enabled unless at least one mailbox is connected, unpaused and able to send.
Credentials are never returned. The documented fields are an allowlist applied independently of the sending provider, so a field added upstream cannot appear here without being named first.
Paged like every other list on this API.
curl --request GET \
--url https://client-api.salesfinity.co/v2/sequencer/email-accounts \
--header 'x-api-key: <api-key>'import requests
url = "https://client-api.salesfinity.co/v2/sequencer/email-accounts"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://client-api.salesfinity.co/v2/sequencer/email-accounts', 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://client-api.salesfinity.co/v2/sequencer/email-accounts",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$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://client-api.salesfinity.co/v2/sequencer/email-accounts"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://client-api.salesfinity.co/v2/sequencer/email-accounts")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://client-api.salesfinity.co/v2/sequencer/email-accounts")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": 123,
"from_name": "<string>",
"from_email": "<string>",
"is_paused": true,
"is_connected": true,
"can_send": true,
"warmup_status": "<string>",
"daily_sent_count": 123,
"message_per_day": 123,
"assigned_to": {}
}
],
"pagination": {
"total": 123,
"page": 123,
"limit": 123,
"pages": 123
},
"provisioned": true,
"summary": {}
}{
"message": [
"limit must not be greater than 100"
],
"error": "Bad Request",
"statusCode": 400
}{
"message": "Forbidden resource",
"error": "Forbidden",
"statusCode": 403
}{
"message": "Too many requests",
"error": "Too Many Requests",
"statusCode": 429
}{
"message": "Internal server error",
"error": "Internal Server Error",
"statusCode": 500
}Authorizations
Team-scoped API key generated in the Salesfinity dashboard under Settings -> Connections & API. A missing or invalid key returns HTTP 403.
Query Parameters
Match on the mailbox address or sender name.
ready can send now; not_connecting has failed SMTP or IMAP; out_of_pool is connected but not assigned to anyone or to the shared pool.
ready, not_connecting, paused, out_of_pool Whether warmup is running on the mailbox.
on, off Email service provider.
Provider-side tag id.
Only mailboxes in the shared team pool.
Team member the mailbox is assigned to.
Page number, 1-based.
Results per page.
x <= 200Response
Success.
Mailboxes in the standard list envelope, plus whether the team has a sending sub-account at all.
Show child attributes
Show child attributes
Pagination for every list under /v2/sequencer. One shape across the whole namespace.
Show child attributes
Show child attributes
False means the team has no sending sub-account yet, which is a different state from a provisioned team with no mailboxes connected. Both return an empty data.
Counts across the whole fleet rather than the current filter, so they stay usable as the way out of a filter. Absent on an unprovisioned team.