> ## Documentation Index
> Fetch the complete documentation index at: https://zeply.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Get call log

> Retrieve comprehensive details, transcript, and qualitative summary for a specific call

Fetch a single call log entry by its unique identifier (`call_log_id`). The response includes caller numbers, agent metadata, duration in seconds, dialog transcript, summary, and recording reference.

***

### Authentication

This endpoint requires Bearer token authentication.

```http theme={null}
Authorization: Bearer <token>
```

| Header          | Type     | Required | Description                                     | Format           |
| :-------------- | :------- | :------- | :---------------------------------------------- | :--------------- |
| `Authorization` | `string` | **Yes**  | Scoped organization API key or Bearer JWT token | `Bearer <token>` |

***

### Path Parameters

<ParamField header="Authorization" type="string" required>
  Bearer token for authentication. Format: `Bearer <token>`.
</ParamField>

<ParamField path="call_log_id" type="string" required>
  Unique UUID identifier of the call log entry.
</ParamField>

***

### Response Fields

<ResponseField name="id" type="string">
  Unique UUID identifier for this call log entry.
</ResponseField>

<ResponseField name="organization_id" type="string">
  UUID of the owning organization.
</ResponseField>

<ResponseField name="call_id" type="string">
  Telephony provider call identifier (e.g. `call_61ef871b0a82`).
</ResponseField>

<ResponseField name="agent_id" type="string">
  UUID of the voice agent configured to handle this call, or `null`.
</ResponseField>

<ResponseField name="whatsapp_phone_number_id" type="string">
  UUID of the organization WhatsApp voice endpoint, or `null`.
</ResponseField>

<ResponseField name="phone_number_id" type="string">
  Telephony provider phone number identifier, or `null`.
</ResponseField>

<ResponseField name="from_number" type="string">
  Originating caller phone number in E.164 format.
</ResponseField>

<ResponseField name="to_number" type="string">
  Destination recipient phone number in E.164 format.
</ResponseField>

<ResponseField name="direction" type="string">
  Call direction (`inbound` or `outbound`).
</ResponseField>

<ResponseField name="status" type="string">
  Call execution status (`completed`, `in-progress`, `busy`, `failed`, `no-answer`).
</ResponseField>

<ResponseField name="duration_seconds" type="integer">
  Duration of the active audio connection in seconds.
</ResponseField>

<ResponseField name="started_at" type="string">
  ISO 8601 timestamp when call audio channel was connected.
</ResponseField>

<ResponseField name="ended_at" type="string">
  ISO 8601 timestamp when call was hung up.
</ResponseField>

<ResponseField name="recording_url" type="string">
  Storage path or identifier to retrieve audio recording via `/audio` proxy endpoint.
</ResponseField>

<ResponseField name="transcript" type="any">
  Structured speaker dialog transcript segments.
</ResponseField>

<ResponseField name="summary" type="string">
  AI-generated qualitative summary of the voice conversation.
</ResponseField>

<ResponseField name="cost" type="number">
  Calculated total carrier and AI inference cost in USD.
</ResponseField>

<ResponseField name="created_at" type="string">
  ISO 8601 creation timestamp.
</ResponseField>

<ResponseField name="updated_at" type="string">
  ISO 8601 last update timestamp.
</ResponseField>

***

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.sayvy.ai/api/v1/call-logs/7b8d8b9e-63f5-46b6-9bb2-15f18731b819" \
    -H "Authorization: Bearer <token>"
  ```

  ```python Python theme={null}
  import requests

  url = "https://api.sayvy.ai/api/v1/call-logs/7b8d8b9e-63f5-46b6-9bb2-15f18731b819"
  headers = {
      "Authorization": "Bearer <token>"
  }

  response = requests.get(url, headers=headers)
  print(response.status_code)
  print(response.json())
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch("https://api.sayvy.ai/api/v1/call-logs/7b8d8b9e-63f5-46b6-9bb2-15f18731b819", {
    method: "GET",
    headers: {
      "Authorization": "Bearer <token>"
    }
  });

  const data = await response.json();
  console.log(data);
  ```
</RequestExample>

<ResponseExample>
  ```json 200 OK theme={null}
  {
    "id": "7b8d8b9e-63f5-46b6-9bb2-15f18731b819",
    "organization_id": "e0b973dc-13a8-4c9f-861a-03e5b4b1a8d9",
    "call_id": "call_61ef871b0a82",
    "agent_id": "4a1c5d7e-9081-423b-a612-432109876543",
    "whatsapp_phone_number_id": "11a22b33-44c5-5d6e-7f8a-9b0c1d2e3f4a",
    "phone_number_id": "PN1234567890abcdef",
    "from_number": "+14155550199",
    "to_number": "+14155550188",
    "direction": "inbound",
    "status": "completed",
    "duration_seconds": 142,
    "started_at": "2026-09-07T14:30:00Z",
    "ended_at": "2026-09-07T14:32:22Z",
    "recording_url": "call-recordings/7b8d8b9e-63f5-46b6-9bb2-15f18731b819.ogg",
    "transcript": [
      {
        "speaker": "agent",
        "text": "Hello! Thank you for calling Sayvy AI support. How may I assist you?",
        "timestamp": 0.8
      },
      {
        "speaker": "caller",
        "text": "Hi, I would like to inquire about enterprise pricing for conversational agents.",
        "timestamp": 4.2
      }
    ],
    "summary": "Caller inquired about enterprise pricing models. Agent provided standard tier quotes and scheduled a demo callback.",
    "cost": 0.048,
    "created_at": "2026-09-07T14:29:55Z",
    "updated_at": "2026-09-07T14:32:30Z"
  }
  ```

  ```json 404 Not Found theme={null}
  {
    "detail": "Call log entry not found"
  }
  ```
</ResponseExample>
