Returns newly signed recording URLs for a call. Use it when the URLs on a stored call object have expired, or to choose how long a link stays valid. Beyond Retell
Request#
Path parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
call_id |
string | Yes | The call. |
Query parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
expires_in |
integer | No | Link lifetime in seconds, clamped to 60 through 604800 (7 days). Default: the call's recording URL lifetime. |
Example request#
curl "https://api.tried.com.au/get-call-recording-url/call_8d1e0f2a3b4c5d6e7f8a9b0c?expires_in=3600" \
-H "Authorization: Bearer $TRIED_API_KEY"const res = await fetch("https://api.tried.com.au/get-call-recording-url/call_8d1e0f2a3b4c5d6e7f8a9b0c?expires_in=3600", {
headers: { Authorization: `Bearer ${process.env.TRIED_API_KEY}` },
});
const data = await res.json();import os, requests
res = requests.get(
"https://api.tried.com.au/get-call-recording-url/call_8d1e0f2a3b4c5d6e7f8a9b0c?expires_in=3600",
headers={"Authorization": f"Bearer {os.environ['TRIED_API_KEY']}"},
)
data = res.json()Response#
200 OK
{
"call_id": "call_8d1e0f2a3b4c5d6e7f8a9b0c",
"recording_url": "https://api.tried.com.au/recordings/call_8d1e0f2a3b4c5d6e7f8a9b0c.wav?exp=1792314065000&sig=...",
"recording_multi_channel_url": null
}Either URL is null when that recording does not exist.
Errors#
| Status | When |
|---|---|
401 |
Missing or invalid API key. |
403 |
The key's IP allowlist or scopes reject the request. This route needs the calls scope. |
404 |
No call with this ID in the workspace. |
429 |
Rate limit exceeded. See Rate limits. |
See Errors for the body format.