Conversations
List Conversations
List inbox conversations
GET
/
api
/
v1
/
conversations
List Conversations
curl --request GET \
--url https://api.sequenzy.com/api/v1/conversations \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sequenzy.com/api/v1/conversations"
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/conversations', 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/conversations",
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/conversations"
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/conversations")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/conversations")
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,
"conversations": [
{
"id": "conv_abc123",
"subscriberId": "sub_abc123",
"subscriberEmail": "user@example.com",
"subscriberName": "John Doe",
"subject": "Re: A quick update",
"status": "open",
"messageCount": 3,
"lastMessageAt": "2026-06-11T09:30:00.000Z",
"lastMessageBy": "subscriber",
"hasUnread": true,
"createdAt": "2026-06-10T15:00:00.000Z",
"lastMessagePreview": {
"type": "inbound",
"text": "Thanks, Thursday works for me."
},
"context": {
"type": "campaign",
"label": "April Launch"
}
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 1,
"totalPages": 1
}
}
{
"error": "Invalid status filter"
}
{
"success": false,
"error": "Unauthorized"
}
List inbox conversations: replies to your campaigns, sequences and transactional email, plus email sent to your inbox address. Results are sorted by most recent message and can be filtered by status, unread flag, or a search term.
context.type is campaign, sequence or transactional for replies, inbox (label Inbox) for email sent to the inbox address, and unknown otherwise.
Request
string
Filter by status:
all, open, or closed. Defaults to all.string
Search in subject, subscriber email, or subscriber name.
number
Page number. Defaults to 1.
number
Results per page, from 1 to 100. Defaults to 20.
string
Pass
true to only return conversations with unread messages.curl "https://api.sequenzy.com/api/v1/conversations?status=open&unread=true" \
-H "Authorization: Bearer YOUR_API_KEY"
Response fields
object | null
A plain-text preview of the latest subscriber or team reply, up to 200 characters. Quoted history, signatures and markup are removed, and internal notes are skipped.
null when no reply has readable text.Responses
{
"success": true,
"conversations": [
{
"id": "conv_abc123",
"subscriberId": "sub_abc123",
"subscriberEmail": "user@example.com",
"subscriberName": "John Doe",
"subject": "Re: A quick update",
"status": "open",
"messageCount": 3,
"lastMessageAt": "2026-06-11T09:30:00.000Z",
"lastMessageBy": "subscriber",
"hasUnread": true,
"createdAt": "2026-06-10T15:00:00.000Z",
"lastMessagePreview": {
"type": "inbound",
"text": "Thanks, Thursday works for me."
},
"context": {
"type": "campaign",
"label": "April Launch"
}
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 1,
"totalPages": 1
}
}
{
"error": "Invalid status filter"
}
{
"success": false,
"error": "Unauthorized"
}
⌘I
List Conversations
curl --request GET \
--url https://api.sequenzy.com/api/v1/conversations \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sequenzy.com/api/v1/conversations"
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/conversations', 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/conversations",
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/conversations"
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/conversations")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sequenzy.com/api/v1/conversations")
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,
"conversations": [
{
"id": "conv_abc123",
"subscriberId": "sub_abc123",
"subscriberEmail": "user@example.com",
"subscriberName": "John Doe",
"subject": "Re: A quick update",
"status": "open",
"messageCount": 3,
"lastMessageAt": "2026-06-11T09:30:00.000Z",
"lastMessageBy": "subscriber",
"hasUnread": true,
"createdAt": "2026-06-10T15:00:00.000Z",
"lastMessagePreview": {
"type": "inbound",
"text": "Thanks, Thursday works for me."
},
"context": {
"type": "campaign",
"label": "April Launch"
}
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 1,
"totalPages": 1
}
}
{
"error": "Invalid status filter"
}
{
"success": false,
"error": "Unauthorized"
}