> For the complete documentation index, see [llms.txt](https://anunzi-ai.gitbook.io/anunzi-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://anunzi-ai.gitbook.io/anunzi-docs/api-calls/obtener-llamada.md).

# Obtener llamada

**GET** `/v2/get-call/{call_id}`

Recupera el detalle completo de una llamada, incluyendo transcripción, grabación, análisis post-llamada y métricas de latencia.

***

## Parámetros de ruta

| Campo     | Tipo   | Requerido | Descripción                                                               |
| --------- | ------ | --------- | ------------------------------------------------------------------------- |
| `call_id` | string | Sí        | ID de la llamada a consultar. Ejemplo: `119c3f8e47135a29e65947eeb34cf12d` |

***

## Respuesta — 200 OK

Devuelve el objeto completo de la llamada. Para llamadas telefónicas incluye `call_type: "phone_call"`, `from_number`, `to_number` y `direction`. Para llamadas web incluye `call_type: "web_call"` y `access_token`.

### Campos principales

| Campo                        | Tipo    | Descripción                                                             |
| ---------------------------- | ------- | ----------------------------------------------------------------------- |
| `call_id`                    | string  | Identificador único de la llamada.                                      |
| `call_type`                  | string  | `phone_call` o `web_call`                                               |
| `agent_id`                   | string  | ID del agente utilizado.                                                |
| `agent_version`              | integer | Versión del agente utilizado.                                           |
| `call_status`                | string  | `registered` \| `not_connected` \| `ongoing` \| `ended` \| `error`      |
| `direction`                  | string  | `inbound` o `outbound` (solo para llamadas telefónicas)                 |
| `from_number`                | string  | Número de origen (solo para llamadas telefónicas).                      |
| `to_number`                  | string  | Número de destino (solo para llamadas telefónicas).                     |
| `start_timestamp`            | integer | Inicio de la llamada en milisegundos (epoch).                           |
| `end_timestamp`              | integer | Fin de la llamada en milisegundos (epoch).                              |
| `duration_ms`                | integer | Duración total en milisegundos.                                         |
| `transcript`                 | string  | Transcripción completa en texto plano.                                  |
| `transcript_object`          | array   | Transcripción con marca de tiempo por utterance (ver estructura abajo). |
| `transcript_with_tool_calls` | array   | Transcripción entrelazada con llamadas a herramientas.                  |
| `recording_url`              | string  | URL del audio WAV de la llamada.                                        |
| `disconnection_reason`       | string  | Razón de desconexión.                                                   |
| `call_analysis`              | object  | Análisis post-llamada (ver estructura abajo).                           |
| `call_cost`                  | object  | Costo de la llamada (ver estructura abajo).                             |
| `latency`                    | object  | Métricas de latencia (ver estructura abajo).                            |
| `metadata`                   | object  | Metadatos almacenados en la llamada.                                    |

***

### Estructura: `transcript_object`

Array de objetos `Utterance`:

| Campo     | Tipo   | Descripción                                                                     |
| --------- | ------ | ------------------------------------------------------------------------------- |
| `role`    | string | `agent` \| `user` \| `transfer_target`                                          |
| `content` | string | Texto del turno de conversación.                                                |
| `words`   | array  | Detalle palabra a palabra: `{ "word": string, "start": number, "end": number }` |

Tipos especiales de utterance:

| Tipo                      | Rol                    | Campos adicionales                                                                      |
| ------------------------- | ---------------------- | --------------------------------------------------------------------------------------- |
| Invocación de herramienta | `tool_call_invocation` | `tool_call_id`, `name`, `arguments` (JSON string)                                       |
| Resultado de herramienta  | `tool_call_result`     | `tool_call_id`, `content`, `successful` (boolean)                                       |
| Transición de nodo        | `node_transition`      | `former_node_id`, `former_node_name`, `new_node_id`, `new_node_name`, `transition_type` |
| DTMF                      | `dtmf`                 | `digit` (carácter: `"1"`, `"2"`, `"*"`, `"#"`, etc.)                                    |

***

### Estructura: `call_analysis`

| Campo                  | Tipo    | Descripción                                        |
| ---------------------- | ------- | -------------------------------------------------- |
| `call_summary`         | string  | Resumen narrativo de la llamada.                   |
| `call_successful`      | boolean | Si la llamada alcanzó su objetivo.                 |
| `user_sentiment`       | string  | `Positive` \| `Neutral` \| `Negative` \| `Unknown` |
| `in_voicemail`         | boolean | Si la llamada llegó a buzón de voz.                |
| `custom_analysis_data` | object  | Campos personalizados definidos en el agente.      |

***

### Estructura: `latency`

Cada métrica (`e2e`, `asr`, `llm`, `tts`, etc.) contiene:

| Campo | Descripción          |
| ----- | -------------------- |
| `p50` | Percentil 50 en ms   |
| `p90` | Percentil 90 en ms   |
| `p95` | Percentil 95 en ms   |
| `p99` | Percentil 99 en ms   |
| `max` | Máximo en ms         |
| `min` | Mínimo en ms         |
| `num` | Número de mediciones |

***

### Estructura: `call_cost`

| Campo                    | Descripción                                                     |
| ------------------------ | --------------------------------------------------------------- |
| `total_duration_seconds` | Duración total facturable en segundos.                          |
| `combined_cost`          | Costo total en centavos de dólar.                               |
| `product_costs`          | Array de costos por componente (transcripción, LLM, voz, etc.). |

***

## Ejemplo de solicitud

```bash
curl --request GET \
     --url https://calls.anunzi.net/v2/get-call/119c3f8e47135a29e65947eeb34cf12d \
     --header 'Authorization: Bearer TU_API_KEY'
```

***

## Ejemplo de respuesta (parcial)

```json
{
  "call_id": "119c3f8e47135a29e65947eeb34cf12d",
  "call_type": "phone_call",
  "agent_id": "oBeDLoLOeuAbiuaMFXRtDOLriTJ5tSxD",
  "call_status": "ended",
  "direction": "outbound",
  "from_number": "+14157774444",
  "to_number": "+12137774445",
  "start_timestamp": 1714500000000,
  "end_timestamp": 1714500180000,
  "duration_ms": 180000,
  "disconnection_reason": "user_hangup",
  "transcript": "Agente: Hola, ¿cómo estás?\nUsuario: Bien, gracias.",
  "call_analysis": {
    "call_summary": "El usuario confirmó interés en el producto.",
    "call_successful": true,
    "user_sentiment": "Positive"
  }
}
```

***

## Códigos de estado

| Código | Descripción                                  |
| ------ | -------------------------------------------- |
| `200`  | Llamada encontrada y devuelta correctamente. |
| `400`  | Formato de solicitud inválido.               |
| `401`  | API Key ausente o inválida.                  |
| `422`  | La llamada no existe bajo tu API Key.        |
| `500`  | Error interno del servidor.                  |
