Skip to main content
GET
/
v1
/
calls
/
{call_id}
Get call details
curl --request GET \
  --url https://api.topcalls.ai/v1/calls/{call_id} \
  --header 'Authorization: Bearer <token>'
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "account_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "phone_number": "+14155551234",
  "from_phone_number": "+18005551234",
  "status": "pending",
  "call_status": "<string>",
  "external_call_id": "<string>",
  "duration": 2.5,
  "transcript": [
    {
      "id": 1,
      "user": "assistant",
      "text": "Hi, this is Sarah from TopView Dental...",
      "created_at": "2025-12-22T10:30:05Z"
    },
    {
      "id": 2,
      "user": "user",
      "text": "Yes, hi...",
      "created_at": "2025-12-22T10:30:08Z"
    }
  ],
  "recording_url": "https://api.example.com/recordings/2025/12/22/mp3",
  "call_summary": "<string>",
  "error_message": "<string>",
  "answered_by": "human",
  "campaign_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "lead_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "completed": true,
  "created_at": "2023-11-07T05:31:56Z",
  "started_at": "2023-11-07T05:31:56Z",
  "end_at": "2023-11-07T05:31:56Z",
  "metadata": {}
}

Authorizations

Authorization
string
header
required

Use Authorization: Bearer tc_live_xxxxx

Path Parameters

call_id
string<uuid>
required

Call UUID

Response

Call details

id
string<uuid>

Call UUID

account_id
string<uuid>

Account UUID

phone_number
string | null

Destination phone number (E.164 format)

Example:

"+14155551234"

from_phone_number
string | null

Caller ID used (E.164 format)

Example:

"+18005551234"

status
enum<string>

Gateway execution status

Available options:
pending,
queued,
in_progress,
completed,
failed,
cancelled
call_status
string | null

Telephony outcome

  • in-progress: Call connected and active
  • completed: Call finished successfully
  • failed: Technical failure
  • no-answer: No one answered
  • busy: Line was busy
  • rejected: Call was rejected
  • cancelled: Call was cancelled
external_call_id
string | null

Provider call ID

duration
number | null

Call duration in minutes

Example:

2.5

transcript
object[] | null

Call transcript (JSONB array)

Example:
[
{
"id": 1,
"user": "assistant",
"text": "Hi, this is Sarah from TopView Dental...",
"created_at": "2025-12-22T10:30:05Z"
},
{
"id": 2,
"user": "user",
"text": "Yes, hi...",
"created_at": "2025-12-22T10:30:08Z"
}
]
recording_url
string<uri> | null

Recording URL (available ~15 seconds after call ends)

Example:

"https://api.example.com/recordings/2025/12/22/mp3"

call_summary
string | null

AI-generated call summary

error_message
string | null

Error message if call failed

answered_by
enum<string> | null

Who answered the call

Available options:
human,
voicemail,
ivr,
unknown
campaign_id
string<uuid> | null

Campaign UUID (if campaign call)

lead_id
string<uuid> | null

Lead UUID (if campaign call)

completed
boolean | null

Whether worker has finished processing this call

created_at
string<date-time>

When call was created

started_at
string<date-time> | null

When call started

end_at
string<date-time> | null

When call ended

metadata
object

Call metadata (includes call config + user metadata)