Call reporting
Query call reports (v2 manager API). Available as mgr.calls.reporting (TypeScript) /
mgr.Calls.Reporting (Go) / mgr.calls.reporting (Rust). Three reports, all auto-paginated:
- Detailed —
list— rich per-call records (Call). - Simple —
simple— condensed records across all report types (ReportingCall). - Inbound simple —
inboundSimple— the inbound-only variant of the simple report.
Detailed report (auto-paginated)
- TypeScript
- Go
- Rust
for await (const call of mgr.calls.reporting.list({ "time.start": 1700000000, "time.end": 1700600000 })) {
console.log(call.id);
}
const all = await mgr.calls.reporting.listAll({ agentId: "…" });
for call, err := range mgr.Calls.Reporting.List(ctx, managerapi.ListReportingCallsParams{}) {
if err != nil { log.Fatal(err) }
fmt.Println(call.Id)
}
all, _ := mgr.Calls.Reporting.ListAll(ctx, managerapi.ListReportingCallsParams{})
for call in mgr.calls.reporting.list_all().await? {
println!("{}", call.id);
}
Simple report
- TypeScript
- Go
- Rust
// All report types:
const simple = await mgr.calls.reporting.simpleAll({ queueName: "support" });
simple, _ := mgr.Calls.Reporting.SimpleAll(ctx, managerapi.ListAllSimpleReportingCallsParams{})
let simple = mgr.calls.reporting.simple_all().await?;
Inbound-only simple report
A dedicated inbound variant of the simple report (auto-paginated).
- TypeScript
- Go
- Rust
const inbound = await mgr.calls.reporting.inboundSimpleAll();
inbound, _ := mgr.Calls.Reporting.InboundSimpleAll(ctx, managerapi.ListInboundSimpleReportingCallsParams{})
let inbound = mgr.calls.reporting.inbound_simple_all().await?;
Filtering
The reporting endpoints expose a large filter set (time ranges, numbers, agent, queue, state, duration buckets, …). Rather than re-declaring every field, the SDK accepts the generated filter surface directly:
- TypeScript — the query object is the generated query type (e.g.
time.start,agentId,filters.*variants) minus thepage/maxpaging controls; passpageSizefor the page size. The auto-paginator drivespage. - Go — pass the generated
managerapi.List*Paramsstruct (every filter is an optional pointer field). LeavePageunset — it is managed by the iterator. - Rust — the
*_all()collectors auto-paginate the full report; per-field filters land with the typed-query follow-up.