List Voice SDK call reports
Returns paginated raw call report stats JSON payloads stored for the authenticated user. The user is derived from Telnyx authentication, not from request parameters.
GET
/
voice_sdk_call_reports
JavaScript
import Telnyx from 'telnyx';
const client = new Telnyx({
apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted
});
// Automatically fetches more pages as needed.
for await (const voiceSDKCallReportListResponse of client.voiceSDKCallReports.list()) {
console.log(voiceSDKCallReportListResponse.call_id);
}import os
from telnyx import Telnyx
client = Telnyx(
api_key=os.environ.get("TELNYX_API_KEY"), # This is the default and can be omitted
)
page = client.voice_sdk_call_reports.list()
page = page.data[0]
print(page.call_id)package main
import (
"context"
"fmt"
"github.com/team-telnyx/telnyx-go"
"github.com/team-telnyx/telnyx-go/option"
)
func main() {
client := telnyx.NewClient(
option.WithAPIKey("My API Key"),
)
page, err := client.VoiceSDKCallReports.List(context.TODO(), telnyx.VoiceSDKCallReportListParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
}package com.telnyx.sdk.example;
import com.telnyx.sdk.client.TelnyxClient;
import com.telnyx.sdk.client.okhttp.TelnyxOkHttpClient;
import com.telnyx.sdk.models.voicesdkcallreports.VoiceSdkCallReportListPage;
import com.telnyx.sdk.models.voicesdkcallreports.VoiceSdkCallReportListParams;
public final class Main {
private Main() {}
public static void main(String[] args) {
TelnyxClient client = TelnyxOkHttpClient.fromEnv();
VoiceSdkCallReportListPage page = client.voiceSdkCallReports().list();
}
}require "telnyx"
telnyx = Telnyx::Client.new(api_key: "My API Key")
page = telnyx.voice_sdk_call_reports.list
puts(page)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Telnyx\Client;
use Telnyx\Core\Exceptions\APIException;
$client = new Client(apiKey: getenv('TELNYX_API_KEY') ?: 'My API Key');
try {
$page = $client->voiceSDKCallReports->list(
pageNumber: 0, pageSize: 0, sort: '-created_at'
);
var_dump($page);
} catch (APIException $e) {
echo $e->getMessage();
}telnyx voice-sdk-call-reports list \
--api-key 'My API Key'curl --request GET \
--url https://api.telnyx.com/v2/voice_sdk_call_reports \
--header 'Authorization: Bearer <token>'{
"data": [
{
"call_id": "6d6fb6f1-2b82-4d75-9eb5-3c8e995f1ed1",
"voice_sdk_id": "VSDK1Cu-AUDpaCkbs5LKcSUK9jLZFcgqLdg",
"voice_sdk_session_id": "0a52a677-9784-4841-ad31-9596c6e5b970",
"voice_sdk_id_decoded": {
"region": "us-central-1"
},
"user_agent": "TelnyxRTC/2.24.0 (iOS 17.5)",
"version": "2.24.0",
"telnyx_session_id": "9a0f6b0e-fb1f-44c9-9b53-7f81442b4c5f",
"telnyx_leg_id": "2d0dd8f1-7d90-4f1f-b8e8-67f9fbdfe2bd",
"stored_at": "2026-05-06T20:00:05Z",
"summary": {
"callId": "6d6fb6f1-2b82-4d75-9eb5-3c8e995f1ed1"
},
"stats": [
{
"intervalStartUtc": "2026-05-06T20:00:00Z",
"intervalEndUtc": "2026-05-06T20:00:05Z",
"audio": {
"inbound": {
"packetsReceived": 1840,
"packetsLost": 0,
"jitterAvg": 0.003
},
"outbound": {
"packetsSent": 1837,
"bytesSent": 293920
}
},
"connection": {
"roundTripTimeAvg": 0.041,
"bytesSent": 293920,
"bytesReceived": 312880
},
"ice": {
"state": "succeeded",
"nominated": true,
"local": {
"candidateType": "host",
"protocol": "udp"
},
"remote": {
"candidateType": "srflx",
"protocol": "udp"
}
},
"transport": {
"iceState": "connected",
"dtlsState": "connected",
"srtpCipher": "AES_CM_128_HMAC_SHA1_80"
}
}
],
"logs": [
{
"timestamp": "2026-05-06T20:00:00Z",
"level": "debug",
"message": "rtcpeer candidate selected",
"context": {
"candidateType": "host",
"protocol": "udp"
}
}
],
"flushReason": {
"type": "call-end"
},
"segment": 0,
"user_id": "3307ca65-df56-4f15-8ba7-589d584d215b",
"organization_id": "06a3dfbd-4988-4fb1-8d28-9b5d85ca624b"
}
],
"meta": {
"total_pages": 1,
"total_results": 1,
"page_number": 1,
"page_size": 20
}
}{
"errors": [
{
"code": "10015",
"title": "Bad Request",
"detail": "Missing required query parameter: call_id.",
"source": {
"parameter": "call_id",
"pointer": "<string>"
},
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10015"
}
}
]
}{
"errors": [
{
"code": "10015",
"title": "Bad Request",
"detail": "Missing required query parameter: call_id.",
"source": {
"parameter": "call_id",
"pointer": "<string>"
},
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10015"
}
}
]
}{
"errors": [
{
"code": "10015",
"title": "Bad Request",
"detail": "Missing required query parameter: call_id.",
"source": {
"parameter": "call_id",
"pointer": "<string>"
},
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10015"
}
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Consolidated page parameter (deepObject style).
Show child attributes
Show child attributes
Set the order of the results by creation date. asc and created_at sort oldest reports first; desc and -created_at sort newest reports first. If not given, results are sorted by creation date in descending order.
Available options:
asc, desc, created_at, -created_at Example:
"-created_at"
Was this page helpful?
⌘I
JavaScript
import Telnyx from 'telnyx';
const client = new Telnyx({
apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted
});
// Automatically fetches more pages as needed.
for await (const voiceSDKCallReportListResponse of client.voiceSDKCallReports.list()) {
console.log(voiceSDKCallReportListResponse.call_id);
}import os
from telnyx import Telnyx
client = Telnyx(
api_key=os.environ.get("TELNYX_API_KEY"), # This is the default and can be omitted
)
page = client.voice_sdk_call_reports.list()
page = page.data[0]
print(page.call_id)package main
import (
"context"
"fmt"
"github.com/team-telnyx/telnyx-go"
"github.com/team-telnyx/telnyx-go/option"
)
func main() {
client := telnyx.NewClient(
option.WithAPIKey("My API Key"),
)
page, err := client.VoiceSDKCallReports.List(context.TODO(), telnyx.VoiceSDKCallReportListParams{})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", page)
}package com.telnyx.sdk.example;
import com.telnyx.sdk.client.TelnyxClient;
import com.telnyx.sdk.client.okhttp.TelnyxOkHttpClient;
import com.telnyx.sdk.models.voicesdkcallreports.VoiceSdkCallReportListPage;
import com.telnyx.sdk.models.voicesdkcallreports.VoiceSdkCallReportListParams;
public final class Main {
private Main() {}
public static void main(String[] args) {
TelnyxClient client = TelnyxOkHttpClient.fromEnv();
VoiceSdkCallReportListPage page = client.voiceSdkCallReports().list();
}
}require "telnyx"
telnyx = Telnyx::Client.new(api_key: "My API Key")
page = telnyx.voice_sdk_call_reports.list
puts(page)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Telnyx\Client;
use Telnyx\Core\Exceptions\APIException;
$client = new Client(apiKey: getenv('TELNYX_API_KEY') ?: 'My API Key');
try {
$page = $client->voiceSDKCallReports->list(
pageNumber: 0, pageSize: 0, sort: '-created_at'
);
var_dump($page);
} catch (APIException $e) {
echo $e->getMessage();
}telnyx voice-sdk-call-reports list \
--api-key 'My API Key'curl --request GET \
--url https://api.telnyx.com/v2/voice_sdk_call_reports \
--header 'Authorization: Bearer <token>'{
"data": [
{
"call_id": "6d6fb6f1-2b82-4d75-9eb5-3c8e995f1ed1",
"voice_sdk_id": "VSDK1Cu-AUDpaCkbs5LKcSUK9jLZFcgqLdg",
"voice_sdk_session_id": "0a52a677-9784-4841-ad31-9596c6e5b970",
"voice_sdk_id_decoded": {
"region": "us-central-1"
},
"user_agent": "TelnyxRTC/2.24.0 (iOS 17.5)",
"version": "2.24.0",
"telnyx_session_id": "9a0f6b0e-fb1f-44c9-9b53-7f81442b4c5f",
"telnyx_leg_id": "2d0dd8f1-7d90-4f1f-b8e8-67f9fbdfe2bd",
"stored_at": "2026-05-06T20:00:05Z",
"summary": {
"callId": "6d6fb6f1-2b82-4d75-9eb5-3c8e995f1ed1"
},
"stats": [
{
"intervalStartUtc": "2026-05-06T20:00:00Z",
"intervalEndUtc": "2026-05-06T20:00:05Z",
"audio": {
"inbound": {
"packetsReceived": 1840,
"packetsLost": 0,
"jitterAvg": 0.003
},
"outbound": {
"packetsSent": 1837,
"bytesSent": 293920
}
},
"connection": {
"roundTripTimeAvg": 0.041,
"bytesSent": 293920,
"bytesReceived": 312880
},
"ice": {
"state": "succeeded",
"nominated": true,
"local": {
"candidateType": "host",
"protocol": "udp"
},
"remote": {
"candidateType": "srflx",
"protocol": "udp"
}
},
"transport": {
"iceState": "connected",
"dtlsState": "connected",
"srtpCipher": "AES_CM_128_HMAC_SHA1_80"
}
}
],
"logs": [
{
"timestamp": "2026-05-06T20:00:00Z",
"level": "debug",
"message": "rtcpeer candidate selected",
"context": {
"candidateType": "host",
"protocol": "udp"
}
}
],
"flushReason": {
"type": "call-end"
},
"segment": 0,
"user_id": "3307ca65-df56-4f15-8ba7-589d584d215b",
"organization_id": "06a3dfbd-4988-4fb1-8d28-9b5d85ca624b"
}
],
"meta": {
"total_pages": 1,
"total_results": 1,
"page_number": 1,
"page_size": 20
}
}{
"errors": [
{
"code": "10015",
"title": "Bad Request",
"detail": "Missing required query parameter: call_id.",
"source": {
"parameter": "call_id",
"pointer": "<string>"
},
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10015"
}
}
]
}{
"errors": [
{
"code": "10015",
"title": "Bad Request",
"detail": "Missing required query parameter: call_id.",
"source": {
"parameter": "call_id",
"pointer": "<string>"
},
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10015"
}
}
]
}{
"errors": [
{
"code": "10015",
"title": "Bad Request",
"detail": "Missing required query parameter: call_id.",
"source": {
"parameter": "call_id",
"pointer": "<string>"
},
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10015"
}
}
]
}