Skip to main content
GET
/
calls
List calls
curl --request GET \
  --url https://api.dialnexa.com/v1/calls \
  --header 'Authorization: Bearer <token>'
{
  "data": [
    {
      "id": "call_abc123",
      "agent_id": "agt_abc123",
      "agent_version_number": 1,
      "to_phone_number": "+919876543210",
      "from_phone_number": "+912234567890",
      "status": "completed",
      "duration_seconds": 145,
      "recording_url": "https://recordings.dialnexa.com/call_abc123.mp3",
      "metadata": {
        "customer_name": "Priya Sharma",
        "account_id": "ACC-9912"
      },
      "created_at": "2024-03-01T10:00:00.000Z",
      "ended_at": "2024-03-01T10:02:25.000Z"
    }
  ],
  "meta": {
    "page": 1,
    "limit": 20,
    "total": 150,
    "totalPages": 8
  }
}
Returns every call placed in your workspace, paginated and sorted by start time (newest first). Each entry includes the call’s id, current status, agent_id, destination phone number, duration, and creation timestamp. Use this for lightweight call browsing, status polling against a known set of recent calls, and quick filtering by agent or outcome. For richer per-call data, full transcripts, recording URLs, sentiment, and the structured post-call analysis fields configured on the agent, use List Call Logs instead. Call logs carry the analytics payload while /calls is the lightweight scheduling-layer view.

When to use this

  • Operational dashboards: render a recent-calls table without paying the cost of full transcripts.
  • Live monitoring: quickly filter to initiated and in-progress calls to see active conversations.
  • Per-agent health checks: filter by agent_id to spot agents producing unusually high failure rates.

Query parameters

ParameterDescription
agent_idReturn only calls placed by a specific agent.
statusFilter by status (initiated, in-progress, completed, failed, busy, no-answer).
from / toISO 8601 timestamps to bound the result by created_at.
pagePage number, starting from 1.
limitResults per page (max 100, default 20).

Errors

  • 403 Forbidden is returned when the API key cannot read calls on this workspace.

Request

curl "https://api.dialnexa.com/v1/calls?agent_id=agt_k7m2nq9xw4p8&status=completed" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

{
  "data": [
    {
      "id": "call_x9y3zp4mq7r1",
      "status": "completed",
      "agent_id": "agt_k7m2nq9xw4p8",
      "to_phone_number": "+919876543210",
      "duration_sec": 142,
      "created_at": "2024-05-01T14:22:00.000Z"
    },
    {
      "id": "call_a2b4cd6ef8gh",
      "status": "no-answer",
      "agent_id": "agt_k7m2nq9xw4p8",
      "to_phone_number": "+919123456789",
      "duration_sec": 0,
      "created_at": "2024-05-01T14:18:00.000Z"
    }
  ],
  "meta": { "page": 1, "limit": 20, "total": 47 }
}

Authorizations

Authorization
string
header
required

Pass your API key as a Bearer token in the Authorization header.

Query Parameters

page
integer
default:1
limit
integer
default:20
agent_id
string
status
enum<string>

Canonical call status filter.

Available options:
created,
initiated,
sent,
received,
completed,
did_not_pick,
busy,
no_answer,
failed,
cancelled,
retry_expired

Response

200 - application/json

Success.

data
object[]
meta
object