List enrolment runs
curl --request GET \
--url https://client-api.salesfinity.co/v2/sequencer/enrollment-runs \
--header 'x-api-key: <api-key>'import requests
url = "https://client-api.salesfinity.co/v2/sequencer/enrollment-runs"
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/enrollment-runs', 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/enrollment-runs",
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/enrollment-runs"
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/enrollment-runs")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://client-api.salesfinity.co/v2/sequencer/enrollment-runs")
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[
{
"run_id": "enroll_1a2b3c4d",
"status": "queued",
"sequence": "507f1f77bcf86cd799439011",
"total": 123,
"processed": 123,
"enrolled": 123,
"skipped_count": 123,
"held_count": 123,
"truncated": true,
"sample_skipped": [
{}
],
"error": "<string>",
"finished_at": "2023-11-07T05:31:56Z"
}
]{
"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
}Sequencer Enrolment Runs
List enrolment runs
Recent runs for one sequence, newest first.
Returns a plain array, not the paginated envelope the other lists use — this is the one list under /v2/sequencer that is not paged. Use limit to say how far back to look. There is no page cursor, so runs older than limit are not reachable from this endpoint.
GET
/
v2
/
sequencer
/
enrollment-runs
List enrolment runs
curl --request GET \
--url https://client-api.salesfinity.co/v2/sequencer/enrollment-runs \
--header 'x-api-key: <api-key>'import requests
url = "https://client-api.salesfinity.co/v2/sequencer/enrollment-runs"
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/enrollment-runs', 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/enrollment-runs",
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/enrollment-runs"
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/enrollment-runs")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://client-api.salesfinity.co/v2/sequencer/enrollment-runs")
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[
{
"run_id": "enroll_1a2b3c4d",
"status": "queued",
"sequence": "507f1f77bcf86cd799439011",
"total": 123,
"processed": 123,
"enrolled": 123,
"skipped_count": 123,
"held_count": 123,
"truncated": true,
"sample_skipped": [
{}
],
"error": "<string>",
"finished_at": "2023-11-07T05:31:56Z"
}
]{
"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
}Recent runs for one sequence, newest first.
Authorizations
Team-scoped API key generated in the Salesfinity dashboard under Settings -> Connections & API. A missing or invalid key returns HTTP 403.
Query Parameters
Required. Runs are always scoped to one sequence.
How many runs to return.
Required range:
x <= 25Response
Success.
Example:
"enroll_1a2b3c4d"
Available options:
queued, fetching, running, completed, failed, cancelled 24-character hexadecimal id.
Example:
"507f1f77bcf86cd799439011"
A sample of refusals with reasons.