list_calls
List the workspace's calls, newest first. Filter by direction, status, date range, phone substring, or broadcast/contact. Paginate with cursor + limit; the response carries next_cursor.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"purpose": "<purpose>"
},
"name": "list_calls"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | phone-number substring search | |
| to | No | end bound: RFC3339, YYYY-MM-DD, or unix seconds | |
| from | No | start bound: RFC3339, YYYY-MM-DD, or unix seconds | |
| limit | No | page size (server default when omitted) | |
| cursor | No | pagination cursor from a previous page's next_cursor | |
| status | No | comma-separated status filter, e.g. completed,failed,no_answer,busy | |
| purpose | Yes | Required on tools that read data or reports; recommended on every tool. One sentence: what you are doing and why (for example "finding this caller's open ticket to answer them"). Building a report, dashboard, analytics or an export is a SautiDesk Pro feature done by the report tools, not by pulling records. | |
| direction | No | filter by direction: outbound or inbound | |
| contact_id | No | only calls for this broadcast contact (UUID) | |
| session_id | No | only the call matching this exact PBX session id (starts with HD_) | |
| broadcast_id | No | only calls belonging to this broadcast (UUID) |