Developer
⌘K
Dashboard
Call Logs GET

Get Call Logs

Retrieve call logs with filtering and pagination.

Endpoint
https://www.tabbly.io/dashboard/agents/endpoints/call-logs-v2

Get Call Logs

Retrieve paginated call logs for your organization. Returns processed call records with transcripts, summaries, and recording URLs. In-progress calls and incomplete answered calls are excluded.

Endpoint

http
GET https://www.tabbly.io/dashboard/agents/endpoints/call-logs-v2

Authentication

See Introduction. This is a GET endpoint — send your API key in the Authorization: Bearer header. Pass organization_id as a query parameter — it must match the organization linked to your API key.

http
Authorization: Bearer YOUR_API_KEY

Query parameters

Parameter Type Required Description
organization_id string Yes Your organization ID
date_from string No Start date filter (YYYY-MM-DD)
date_to string No End date filter (YYYY-MM-DD)
call_status string No Exact match on stored status (e.g. Call Answered, Not Answered, Voicemail)
campaign_id string No Filter by campaign ID
use_agent_id string No Filter by agent ID
custom_identifiers string No Filter by custom identifier string
limit integer No Page size (default: 100)
offset integer No Records to skip (default: 0)

Example request

bash
curl -G "https://www.tabbly.io/dashboard/agents/endpoints/call-logs-v2" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  --data-urlencode "organization_id=3282" \
  --data-urlencode "limit=50" \
  --data-urlencode "offset=0"

Response

Success (200)

json
{
  "status": "success",
  "message": "Call logs retrieved successfully",
  "total_records": 150,
  "filtered_records": 50,
  "page_size": 50,
  "page_offset": 0,
  "data": [
    {
      "participant_identity": "user-abc123",
      "use_agent_id": "6355",
      "called_to": "+917219552473",
      "called_time": "2026-06-23 14:30:00",
      "custom_identifiers": "user_id=12345",
      "campaign_id": "2744",
      "call_status": "Call Answered",
      "call_duration": 245,
      "start_time": "2026-06-23 14:30:00",
      "end_time": "2026-06-23 14:34:05",
      "call_transcript": "Transcript of the call...",
      "call_summary": "Summary of the call...",
      "call_sentiment": "positive",
      "call_json_output": "{\"key\":\"value\"}",
      "call_recording_url": "https://tabblydatastorage.sfo3.cdn.digitaloceanspaces.com/merged-user-abc123.mp3",
      "total_call_cost": "0.98",
      "telco_pricing": "0.015",
      "agent_cost": 0.326,
      "organization_id": "3282",
      "call_direction": "outbound"
    }
  ]
}

Error responses

HTTP status When
400 Missing API key or organization_id, invalid date format
401 Invalid API key
500 Database connection failed

Notes

  • Results are sorted by ID descending (newest first).
  • Only calls with a completed summary are returned (details_added_cron = yes and non-empty call_summary).
  • call_recording_url is built from participant_identity using the Tabbly CDN path shown above.
  • call_direction is inbound or outbound.