List completed calls
get /v1/calls
Calls are the records captured from a VoIP integration, addressed by their own call_ identifiers. They answer the same five routes as meetings and carry the same fields except bot_history: a VoIP capture has no recording bot, so the field is absent, not empty.
Devolve uma lista de objetos ligação.
Autorização
Seção intitulada “Autorização”Exige o escopo calls.read.
Parâmetros de query
Seção intitulada “Parâmetros de query”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
limit | integer | Não | Records per page, 1 to 100. A page may return fewer than this while has_more is still true; drive the loop by has_more, not by the size of data. |
cursor | string | Não | Signed cursor returned by the previous page. |
created_after | string date-time | Não | Return records created after this instant. |
created_before | string date-time | Não | Return records created before this instant. |
meeting_after | string date-time | Não | Return records whose event instant is after this value. |
meeting_before | string date-time | Não | Return records whose event instant is before this value. |
owner_email | string email | Não | Exact case-insensitive owner email match. |
type | video · audio | Não | Media the record was captured as. Independent of the resource kind: a call can be video and a meeting can be audio. |
audience | internal · external | Não | Whether the record had participants from outside the company (external) or only internal ones. |
has_transcript | boolean | Não | Filter by existence of a transcript resource. |
Exemplo de requisição
Seção intitulada “Exemplo de requisição”curl "https://api.salesbud.com.br/v1/calls?limit=...&cursor=..." \ -H "Authorization: Bearer $SALESBUD_ACCESS_TOKEN"Exemplo de resposta
Seção intitulada “Exemplo de resposta”{ "data": [ { "id": "call_ExampleCall01", "object": "call", "title": "Call to +55 11 99999-0000", "status": "completed", "type": "audio", "audience": "external", "meeting_at": "2026-01-15T18:28:01.000Z", "duration_seconds": 714, "no_show": false, "participants": [ { "phone": "+5511999990000", "kind": "external" } ], "owner": { "id": "usr_ExampleOwner01", "name": "Example Rep", "email": "rep@example.com", "team": { "id": "team_ExampleTeam01", "name": "Inside Sales", "role": "participant", "is_default": true } }, "template": { "id": "tpl_ExampleTemplate01", "name": "Discovery script", "answers": [ { "field": "qst_ExampleQuestion01", "question": "What pains did the customer describe?", "answer": "Wants a demo before renewing the current contract." } ] }, "tags": [], "customer_questions": [], "competitors": [], "enablement": { "next_steps": "Online meeting booked for Thursday at 13:30; send the invite today.", "meeting_type": null, "speaking_duration": { "users": [], "others_seconds": 677 } }, "accounts": [], "overall_evaluation": { "status": "not_started", "justification": null }, "skill_scores": [], "transcript": { "available": false, "status": "not_started" }, "created_at": "2026-01-15T19:22:08.000Z", "updated_at": "2026-01-15T19:22:53.000Z" } ], "pagination": { "limit": 50, "has_more": true, "next_cursor": "cur_ExampleCursor02" }, "request_id": "req_ExampleRequestId01"}Respostas
Seção intitulada “Respostas”| Status | Descrição |
|---|---|
200 | Company-scoped call page. |
400 | Invalid request. |
401 | Missing or invalid credentials. |
403 | The token does not contain the required scope. |
429 | Client rate limit exceeded. |
503 | A required audit or rate-limit dependency is unavailable. |