Squad call logs stats
GET
https://app.sulus.ai/api/squad-call-logs/stats
Aggregate squad call statistics for the scoped account
Authentication
Send a bearer token created on your dashboard's Developer page:
Authorization: Bearer <YOUR_API_KEY>
Query parameters
start_date
string
Optional
Nullable
Inclusive lower bound on start_time (date portion).
Stored in
squad_call_logs.start_timeend_date
string
Optional
Nullable
Inclusive upper bound on start_time (date portion).
Stored in
squad_call_logs.start_timesquad_id
integer
Optional
Nullable
Limit aggregates to one local squad id.
Stored in
squad_call_logs.squad_idassistant_id
integer
Optional
Nullable
Limit aggregates to one member assistant id.
Stored in
squad_call_logs.assistant_idErrors
| Status | Meaning | Body |
|---|---|---|
401 |
Missing or invalid bearer token | |
403 |
Feature squad_call_logs not enabled for the account | {"message":"This feature is not enabled for your account. Please contact your administrator.","feature":"squad_call_logs"} |
Notes
- totalCost is always present; non–content-admins receive 0.
- squadPerformance rows include total_cost only for content admins. Unlike list rows, squadPerformance keeps the numeric squad_id grouping key.
- averageDuration is round() of AVG(duration); totalDuration is the integer SUM.
curl --request GET \
--url https://app.sulus.ai/api/squad-call-logs/stats \
--header 'Authorization: Bearer <YOUR_API_KEY>'
import requests
url = "https://app.sulus.ai/api/squad-call-logs/stats"
headers = {"Authorization": "Bearer <YOUR_API_KEY>"}
response = requests.get(url, headers=headers)
print(response.json())
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
url := "https://app.sulus.ai/api/squad-call-logs/stats"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <YOUR_API_KEY>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}
Response
200
{
"success": true,
"data": {
"totalCalls": 28,
"completedCalls": 22,
"totalDuration": 5040,
"inboundCalls": 24,
"outboundCalls": 4,
"totalCost": 0,
"averageDuration": 180,
"statusBreakdown": {
"completed": 22,
"no-answer": 4,
"failed": 2
},
"squadPerformance": [
{
"squad_id": 3,
"total_calls": 18,
"completed_calls": 15,
"avg_duration": 175.2
}
]
}
}
Response — GET
/squad-call-logs/stats
200
{
"success": true,
"data": {
"totalCalls": 28,
"completedCalls": 22,
"totalDuration": 5040,
"inboundCalls": 24,
"outboundCalls": 4,
"totalCost": 0,
"averageDuration": 180,
"statusBreakdown": {
"completed": 22,
"no-answer": 4,
"failed": 2
},
"squadPerformance": [
{
"squad_id": 3,
"total_calls": 18,
"completed_calls": 15,
"avg_duration": 175.2
}
]
}
}