List the campaigns a customer is enrolled in (paginated)
curl --request GET \
--url https://api.pocketflows.com/customers/{id}/campaigns \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://api.pocketflows.com/customers/{id}/campaigns"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://api.pocketflows.com/customers/{id}/campaigns', 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.pocketflows.com/customers/{id}/campaigns",
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: Basic <encoded-value>"
],
]);
$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.pocketflows.com/customers/{id}/campaigns"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.pocketflows.com/customers/{id}/campaigns")
.header("Authorization", "Basic <encoded-value>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pocketflows.com/customers/{id}/campaigns")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body{
"page_info": {
"has_next_page": true,
"end_cursor": "<string>"
},
"data": [
{
"id": "<string>",
"created_at": "<string>",
"updated_at": "<string>",
"business": "<string>",
"name": "<string>",
"segment": "<string>",
"steps": [
{
"type": "email",
"email_template_id": "<string>",
"custom_step_id": "<string>"
}
],
"email_address": "<string>",
"phone_number": "<string>",
"scheduled_at": "<string>",
"scheduled_end_at": "<string>",
"statistics": {
"emails": {
"sent": 123,
"delivered": 123,
"opened": 123,
"soft_bounced": 123,
"hard_bounced": 123,
"spam_reported": 123,
"clicked": 123
},
"custom_steps": [
{
"custom_step": "<string>",
"sent": 123
}
],
"executions": {
"total": 123,
"pending": 123,
"started": 123,
"finished": 123,
"errored": 123
},
"sms": {
"sms_sent_count": 123,
"sms_sent_segments_count": 123,
"mms_sent_count": 123,
"mms_sent_segments_count": 123
},
"total_customers_enrolled": 123,
"total_customers_started": 123,
"total_customers_finished": 123
},
"consumed_message_segments": {
"sms": 123,
"mms": 123,
"email": 123
},
"attributed_revenue": "<string>",
"metadata": {},
"enrolled_customers": [
"<string>"
],
"enrolled_customer_ids": [
"<string>"
],
"estimated_message_segments": {
"sms": 123,
"mms": 123,
"email": 123
}
}
],
"total_count": 123
}Customers
List the campaigns a customer is enrolled in (paginated)
GET
/
customers
/
{id}
/
campaigns
List the campaigns a customer is enrolled in (paginated)
curl --request GET \
--url https://api.pocketflows.com/customers/{id}/campaigns \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://api.pocketflows.com/customers/{id}/campaigns"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://api.pocketflows.com/customers/{id}/campaigns', 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.pocketflows.com/customers/{id}/campaigns",
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: Basic <encoded-value>"
],
]);
$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.pocketflows.com/customers/{id}/campaigns"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.pocketflows.com/customers/{id}/campaigns")
.header("Authorization", "Basic <encoded-value>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pocketflows.com/customers/{id}/campaigns")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body{
"page_info": {
"has_next_page": true,
"end_cursor": "<string>"
},
"data": [
{
"id": "<string>",
"created_at": "<string>",
"updated_at": "<string>",
"business": "<string>",
"name": "<string>",
"segment": "<string>",
"steps": [
{
"type": "email",
"email_template_id": "<string>",
"custom_step_id": "<string>"
}
],
"email_address": "<string>",
"phone_number": "<string>",
"scheduled_at": "<string>",
"scheduled_end_at": "<string>",
"statistics": {
"emails": {
"sent": 123,
"delivered": 123,
"opened": 123,
"soft_bounced": 123,
"hard_bounced": 123,
"spam_reported": 123,
"clicked": 123
},
"custom_steps": [
{
"custom_step": "<string>",
"sent": 123
}
],
"executions": {
"total": 123,
"pending": 123,
"started": 123,
"finished": 123,
"errored": 123
},
"sms": {
"sms_sent_count": 123,
"sms_sent_segments_count": 123,
"mms_sent_count": 123,
"mms_sent_segments_count": 123
},
"total_customers_enrolled": 123,
"total_customers_started": 123,
"total_customers_finished": 123
},
"consumed_message_segments": {
"sms": 123,
"mms": 123,
"email": 123
},
"attributed_revenue": "<string>",
"metadata": {},
"enrolled_customers": [
"<string>"
],
"enrolled_customer_ids": [
"<string>"
],
"estimated_message_segments": {
"sms": 123,
"mms": 123,
"email": 123
}
}
],
"total_count": 123
}Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Path Parameters
The ID of the customer
Query Parameters
Cursor returned from the previous page's page_info.end_cursor. The row it points to is excluded from the result.
Response
200 - application/json
A paginated list of campaigns the customer is enrolled in, newest campaign first
Pagination metadata
Show child attributes
Show child attributes
The campaigns the customer is enrolled in on this page, newest campaign first
Show child attributes
Show child attributes
Total number of records matching the filters (across all pages). Only present when expand[]=total_count is requested; opt-in because COUNT(*) is O(N) on large filtered sets.
⌘I