El recurso Calls es de solo lectura. Los
registros provienen de Speech Analytics.
Requiere permisos calls:read y el header
X-Workspace-Id. Puedes autenticar con X-API-Key
(recomendado para integraciones) o con token Bearer si tu entorno lo soporta.
Listar llamadas
Lista paginada con filtros opcionales.
import { createClient } from '@getsupervisor/agents-studio-sdk';
const client = createClient({
baseUrl: process.env.API_BASE_URL!,
workspaceId: process.env.WORKSPACE_ID!,
apiKey: process.env.API_KEY!,
});
const page1 = await client.calls.list({
page: 1,
limit: 20,
sort: '-startedAt',
agentId: '00000000-0000-4000-8000-000000000301',
recordedAfter: '2025-01-01T00:00:00.000Z',
recordedBefore: '2025-02-01T00:00:00.000Z',
durationBucket: 'short',
goalStatus: 'achieved',
query: 'texto',
});
console.log(page1.data.length, page1.meta.total);
if (page1.meta.hasNext) {
const page2 = await page1.next();
console.log('Siguiente página:', page2?.meta.page);
}
curl -sS "$API_BASE_URL/v1/calls?limit=20&sort=-startedAt&agentId=00000000-0000-4000-8000-000000000301&durationBucket=short&goalStatus=achieved&query=texto" \
-H "X-API-Key: $API_KEY" \
-H "X-Workspace-Id: $WORKSPACE_ID"
Stream incremental
Obtiene llamadas en orden ascendente por startedAt a partir de un
cursor temporal (after). La respuesta incluye
meta.nextAfter para continuar la sincronización.
import { createClient } from '@getsupervisor/agents-studio-sdk';
const client = createClient({
baseUrl: process.env.API_BASE_URL!,
workspaceId: process.env.WORKSPACE_ID!,
apiKey: process.env.API_KEY!,
});
let after: string | null = '2025-01-01T00:00:00.000Z';
while (after) {
const page = await client.calls.stream({
after,
limit: 50,
durationBucket: 'short',
goalStatus: 'achieved',
});
for (const call of page.data) {
console.log(call.id, call.startedAt);
}
after = page.meta.nextAfter;
}
curl -sS "$API_BASE_URL/v1/calls/stream?after=2025-01-01T00:00:00.000Z&limit=50&durationBucket=short&goalStatus=achieved" \
-H "X-API-Key: $API_KEY" \
-H "X-Workspace-Id: $WORKSPACE_ID"
Obtener llamada por id
import client from '../client';
const call = await client.calls.get('00000000-0000-4000-8000-000000000001');
console.log(call.title, call.startedAt);
curl -sS "$API_BASE_URL/v1/calls/00000000-0000-4000-8000-000000000001" \
-H "X-API-Key: $API_KEY" \
-H "X-Workspace-Id: $WORKSPACE_ID"