List Email Send Queue
curl --request POST \
--url https://api.example.com/api/public/tools/list_email_send_queue \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"view": null,
"userIds": null,
"flowPlanIds": null,
"searchQuery": null,
"limit": null,
"cursor": null
}
'import requests
url = "https://api.example.com/api/public/tools/list_email_send_queue"
payload = {
"view": None,
"userIds": None,
"flowPlanIds": None,
"searchQuery": None,
"limit": None,
"cursor": None
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
view: null,
userIds: null,
flowPlanIds: null,
searchQuery: null,
limit: null,
cursor: null
})
};
fetch('https://api.example.com/api/public/tools/list_email_send_queue', 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.example.com/api/public/tools/list_email_send_queue",
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([
'view' => null,
'userIds' => null,
'flowPlanIds' => null,
'searchQuery' => null,
'limit' => null,
'cursor' => null
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/public/tools/list_email_send_queue"
payload := strings.NewReader("{\n \"view\": null,\n \"userIds\": null,\n \"flowPlanIds\": null,\n \"searchQuery\": null,\n \"limit\": null,\n \"cursor\": null\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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.example.com/api/public/tools/list_email_send_queue")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"view\": null,\n \"userIds\": null,\n \"flowPlanIds\": null,\n \"searchQuery\": null,\n \"limit\": null,\n \"cursor\": null\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/public/tools/list_email_send_queue")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"view\": null,\n \"userIds\": null,\n \"flowPlanIds\": null,\n \"searchQuery\": null,\n \"limit\": null,\n \"cursor\": null\n}"
response = http.request(request)
puts response.read_body{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}FirstTouch tools
List Email Send Queue
Lists FirstTouch email send queue rows that have already been submitted to the email sending service.
Detailed usage guidance
- Use this for queued or awaiting submitted email sends, sent email history, failed or canceled attempts, and as the first execution-state check when a customer asks why an email has not sent.
- View is one of in_queue, awaiting, done, canceled, or failed and defaults to in_queue.
- The response includes the selected keyset page plus all five view counts using the same sender, search, and Flow Plan filters.
- expected send times describe FirstTouch sending, not inbox delivery.
- Omitted userIds always scopes to the current caller, including admins and team owners; elevated callers must select other team members explicitly.
- If an expected email is absent, follow response.nextSteps because phase 1 excludes actions that have not reached mail-service submission.
POST
/
api
/
public
/
tools
/
list_email_send_queue
List Email Send Queue
curl --request POST \
--url https://api.example.com/api/public/tools/list_email_send_queue \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"view": null,
"userIds": null,
"flowPlanIds": null,
"searchQuery": null,
"limit": null,
"cursor": null
}
'import requests
url = "https://api.example.com/api/public/tools/list_email_send_queue"
payload = {
"view": None,
"userIds": None,
"flowPlanIds": None,
"searchQuery": None,
"limit": None,
"cursor": None
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
view: null,
userIds: null,
flowPlanIds: null,
searchQuery: null,
limit: null,
cursor: null
})
};
fetch('https://api.example.com/api/public/tools/list_email_send_queue', 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.example.com/api/public/tools/list_email_send_queue",
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([
'view' => null,
'userIds' => null,
'flowPlanIds' => null,
'searchQuery' => null,
'limit' => null,
'cursor' => null
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/public/tools/list_email_send_queue"
payload := strings.NewReader("{\n \"view\": null,\n \"userIds\": null,\n \"flowPlanIds\": null,\n \"searchQuery\": null,\n \"limit\": null,\n \"cursor\": null\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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.example.com/api/public/tools/list_email_send_queue")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"view\": null,\n \"userIds\": null,\n \"flowPlanIds\": null,\n \"searchQuery\": null,\n \"limit\": null,\n \"cursor\": null\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/public/tools/list_email_send_queue")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"view\": null,\n \"userIds\": null,\n \"flowPlanIds\": null,\n \"searchQuery\": null,\n \"limit\": null,\n \"cursor\": null\n}"
response = http.request(request)
puts response.read_body{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}Authorizations
Body
application/json
Queue view. One of in_queue, awaiting, done, canceled, or failed. Defaults to in_queue.
Available options:
in_queue, awaiting, done, canceled, failed, null FirstTouch team member user ids whose email sends should be included. Omit or pass an empty array for the current caller only. Admins and team owners may explicitly select valid members of the active team.
Flow Plan ids to include.
Recipient name/address or stable action/operation id search.
Maximum rows to return. Defaults to 20, max 100.
Opaque keyset cursor returned by the preceding list_email_send_queue response. Reuse the same view and filters.
Response
Tool result.

