Skip to main content

Get Call Transcript

GET 

/api/phone/logs/:call_id/transcript

Get full transcript for a call.

Accepts either:

  • Provider call session ID (UUID format)
  • Internal call_log_id (SCL_xxx format)

Query Parameters: include: Optional. Set to 'nodes' to get organized timeline with stage grouping.

Default response: { "messages": [{"role": "user", "content": "...", "start_sec": 0, "end_sec": 1.5}, ...], "tool_calls": [...], "metadata": {"call_start_epoch": ..., "total_duration_sec": ..., "format_version": 1}, "transcription_status": "available" | "generating" | "unavailable" }

With include=nodes: { "nodes": [...], // Events organized by workflow stage (includes messages) "duration": 62.5, // Total call duration "tool_summary": {...}, // Tool execution statistics "transcription_status": "available" | "generating" | "unavailable", ... } Note: When include=nodes, messages are not returned separately since they're inside nodes' events.

Lazy Loading (webphone calls without transcript):

  • If webphone call has no transcript, queues background generation
  • Returns transcription_status: "generating"
  • Frontend should poll every 5 seconds until status is "available"

Request

Responses

Successful Response