Get campaign progress
curl --request GET \
--url https://api.pineyard.ai/campaigns/{id}/stats \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.pineyard.ai/campaigns/{id}/stats', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.pineyard.ai/campaigns/{id}/stats"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"status": "<string>",
"total": 123,
"PENDING": 123,
"IN_FLIGHT": 123,
"COMPLETED": 123,
"FAILED": 123,
"SKIPPED": 123,
"MESSAGED": 123,
"receivedCalls": 123,
"active": 123,
"completed": 123,
"failed": 123,
"noAnswerBusy": 123,
"queued": 123,
"retrying": 123,
"creditsUsed": 123,
"avgDurationMs": 123,
"concurrency": {
"max": 123
},
"journey": {
"workflowId": "<string>",
"outcomes": [
{
"endLabel": "<string>",
"count": 123
}
],
"needsAttention": 123
}
}Results & insights
Get campaign progress
Contact counts by status (PENDING, IN_FLIGHT, MESSAGED, COMPLETED, FAILED, SKIPPED). Inbound campaigns return call counts instead.
GET
/
campaigns
/
{id}
/
stats
Get campaign progress
curl --request GET \
--url https://api.pineyard.ai/campaigns/{id}/stats \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.pineyard.ai/campaigns/{id}/stats', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.pineyard.ai/campaigns/{id}/stats"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"status": "<string>",
"total": 123,
"PENDING": 123,
"IN_FLIGHT": 123,
"COMPLETED": 123,
"FAILED": 123,
"SKIPPED": 123,
"MESSAGED": 123,
"receivedCalls": 123,
"active": 123,
"completed": 123,
"failed": 123,
"noAnswerBusy": 123,
"queued": 123,
"retrying": 123,
"creditsUsed": 123,
"avgDurationMs": 123,
"concurrency": {
"max": 123
},
"journey": {
"workflowId": "<string>",
"outcomes": [
{
"endLabel": "<string>",
"count": 123
}
],
"needsAttention": 123
}
}Required scope:
campaigns.viewAuthorizations
Your API key, e.g. pk_live_xxxxxxxxxxxxxxxxxxxxxxxx.
Path Parameters
Response
OK
Show child attributes
Show child attributes
Show child attributes
Show child attributes

