curl --request GET \
--url https://api.reply.io/v3/sequences \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.reply.io/v3/sequences"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.reply.io/v3/sequences', 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.reply.io/v3/sequences",
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.reply.io/v3/sequences"
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.reply.io/v3/sequences")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.reply.io/v3/sequences")
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{
"items": [
{
"id": 12345,
"ownerUserId": 42,
"name": "Sales Outreach",
"status": "active",
"created": "2024-03-08T10:00:00+00:00",
"isArchived": false,
"health": "healthy"
},
{
"id": 12346,
"ownerUserId": 42,
"name": "Follow-up Campaign",
"status": "paused",
"created": "2024-03-07T14:30:00+00:00",
"isArchived": false,
"health": "degraded"
}
],
"hasMore": true
}List all sequences
sequences:read scope (or a broader one that includes it).
Browse the sequences you can work with. Paged with top and skip, and filterable by status, owner, folder, and name.
curl --request GET \
--url https://api.reply.io/v3/sequences \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.reply.io/v3/sequences"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.reply.io/v3/sequences', 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.reply.io/v3/sequences",
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.reply.io/v3/sequences"
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.reply.io/v3/sequences")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.reply.io/v3/sequences")
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{
"items": [
{
"id": 12345,
"ownerUserId": 42,
"name": "Sales Outreach",
"status": "active",
"created": "2024-03-08T10:00:00+00:00",
"isArchived": false,
"health": "healthy"
},
{
"id": 12346,
"ownerUserId": 42,
"name": "Follow-up Campaign",
"status": "paused",
"created": "2024-03-07T14:30:00+00:00",
"isArchived": false,
"health": "degraded"
}
],
"hasMore": true
}Authorizations
Authenticate every request with a Bearer token. Pass your Reply API key in the
Authorization header:
Authorization: Bearer <your-api-key>
Get your API key from the Reply dashboard: Settings → API Key.
Query Parameters
Maximum number of items to return (default 25, max 1000)
Number of items to skip
Filter sequences by status
active, paused, new Filter sequences by owner user ID
Filter sequences by folder ID
Filter sequences by archive status. When true, returns only archived sequences. When false, returns only non-archived sequences. When omitted, returns all sequences regardless of archive status.
Search sequences by name (case-insensitive, partial match)
Return only sequences created after this timestamp (ISO-8601).
Field to sort results by. When omitted, results are ordered by creation date.
created, name, status Sort direction. Requires sortBy to be set; supplying sortDirection alone is rejected with 400. When omitted, created sorts descending (newest first) while name and status sort ascending.
asc, desc