Skip to content
Skip to page content

Audio links

Return temporary download URLs for one readable call. Generate them only when needed.

View as Markdown OpenAPI file

GET https://api.trellus.ai/get-audio-links

The response is { session, audio, audio_links }: one session object and two arrays aligned by index. URLs expire after one hour. Beyond recording retention, audio arrays may be empty. Within retention, a non-call session returns 400.

Authentication: send api_key: $TRELLUS_API_KEY. The key inherits the user’s existing permissions. See Authentication.

Request
curl https://api.trellus.ai/get-audio-links \
  -H "api_key: $TRELLUS_API_KEY" \
  -H "session_id: SESSION_ID"
const response = await fetch("https://api.trellus.ai/get-audio-links", {
  method: "GET",
  headers: {
    "api_key": process.env.TRELLUS_API_KEY,
    "session_id": "SESSION_ID",
  },
});
console.log(await response.text());
import os
import requests

response = requests.get(
    "https://api.trellus.ai/get-audio-links",
    headers={
        "api_key": os.environ["TRELLUS_API_KEY"],
        "session_id": "SESSION_ID",
    },
)
print(response.text)
Response 200. Object containing session, audio metadata, and audio_links; audio arrays align by index and may be empty.

Headers

HeaderDescription
api_key Required $TRELLUS_API_KEY
The API key belonging to your Trellus user.
session_id Required, string The exact session_id of one readable call, from a list row.

Response

StatusWhat you receive
200 Object containing session, audio metadata, and audio_links; audio arrays align by index and may be empty.
Any other status text/plain Read the HTTP status and response text; on 429 honor Retry-After seconds.
  • /get-audio-links returns one session object plus aligned audio and audio_links arrays. The URLs expire after one hour. Retention can leave both arrays empty.

More on rows, units and transcripts: Responses and transcripts.

Errors

Error bodies can be plain text. Read the status and the response text.

429 Too Many Requests

Wait the Retry-After number of seconds, then retry with a bounded retry policy. Coordinate workers using the same user key. Default backend limits are per user, not per IP. If only your shared cloud host is blocked despite pacing, give support the UTC time, endpoint and response headers so upstream limits can be investigated.

Every documented case is on Errors and troubleshooting.