---
title: "Get recording download link"
method: GET
path: "/v2/api/conversations/items/{id}/recording"
tags: ["Conversations"]
---

# Get recording download link

`GET /v2/api/conversations/items/{id}/recording`

## Request

- Base URL: `https://api.withallo.com`
- URL: `https://api.withallo.com/v2/api/conversations/items/{id}/recording`
- Auth: API key in header `Authorization`

Returns a fresh signed link to download a call's recording, valid for 60 minutes. The link works without an Allo login: do not share it beyond the people who may hear the call. Only a user who can play the recording in Allo gets one, and never for a call on a HIPAA-enabled team.

## Path parameters

- `id` string, required

## Response `200`

Download link

- object
  - `data` object
    - `url` string: Signed link that downloads the recording, with no login.
    - `expires_at` string, date-time: When the link stops working, 60 minutes after the request.

## Other responses

- `400`: The ID has an unrecognized prefix (INVALID_ITEM_ID).
- `401`: Invalid or missing API key
- `403`: The API key lacks the CONVERSATIONS_READ scope, the key's user cannot play this recording (RECORDING_ACCESS_DENIED), or the line belongs to a HIPAA-enabled team (RECORDING_DOWNLOAD_RESTRICTED).
- `404`: No call with this ID (CONVERSATION_ITEM_NOT_FOUND), or the item has no recording (RECORDING_NOT_FOUND). An SMS (`msg-*`) has no recording.
- `429`: Rate limit exceeded
- `500`: The download link could not be created (RECORDING_DOWNLOAD_UNAVAILABLE). Retry in a few seconds.

## Changes

- **2026-11-03** `46c77103dd14`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/withallo/apis/allo-api/changes/v2/api/conversations/items/:id/recording/get.md)

---

[API](https://skmtc.dev/withallo/apis/allo-api.md) - [All operations](https://skmtc.dev/withallo/apis/allo-api/llms.txt) - [OpenAPI document](https://skmtc.dev/withallo/apis/allo-api/revisions/46c77103dd14?raw)
