# Calls

| Method | Path | What it does |
| --- | --- | --- |
| GET | `/v1/calls` | Calls with their journey, summaries, transcripts and recording links |
| GET | `/v1/reports/calls` | The old name for the same list. It still answers: move to `/v1/calls` |

| Parameter | Meaning |
| --- | --- |
| `start_date`, `end_date` | `YYYY-MM-DD`, both or neither. Neither means today. At most 366 days. |
| `timezone` | An IANA name. The default is `America/New_York`. |
| `page`, `limit` | Pages from 1. `limit` is 1 to 500, 500 by default. |
| `sort` | `day_desc` (default), `day_asc`, `duration_desc` or `duration_asc` |
| `direction` | `incoming`, `outgoing` or `voicemail` |
| `status` | A leg status, such as `answered` or `missed`. `missed` never returns an outgoing call. |
| `extension` | Calls with a leg on this extension |
| `type` | Calls with a leg of this type, such as `user`, `hunt_group`, `auto_attendant` or `call_center` |
| `search` | Part of the call id, the caller's name, an extension, the caller's number or your number |

`status`, `extension` and `type` filter legs: a call comes back when one of its legs matches, and its journey then shows the matching legs only.

Each call has `call_id`, `direction`, `status` (its first leg's), `extension` and `extension_name` (the person who took or placed it), `remote_name`, `remote_number`, `group_number` (your number on the call), `start_time`, `end_time`, `duration` in seconds, and `journey`. Each leg has `order`, `type`, `extension`, `extension_name`, its times and `duration`, `summary`, `transcription`, `recording_url` and `recordings`. A call an employee places through the dial-out portal reads `outgoing`.

**Recordings in parts.** A call parked and picked up again is recorded in parts: part 1 up to the park, part 2 after the pick-up, rarely a part 3. `recordings` lists them oldest first, each with `part`, `parts`, `recording_id`, `start_time`, `duration` and `url` (`GET /v1/media/rec_<n>?part=N`). `recording_url`, `summary` and `transcription` are the latest part's. Nearly every leg has one part, and a leg that was not recorded has an empty list.

[Calls in the API reference](https://vocatech.com/developers/reference/calls)
