Skip to main content

Before uploading

  1. Get the current minute balance: GET /api/spaces/{space_id}/, field subscribe.available_usage_count.
  2. Make sure the balance covers the whole recording.
  3. In a team space, check write_access in my_rights/.

Unique titles

Add a marker to title that lets you find the recording: a date, a time, an ID from your system.
The file extension still goes at the very end.

Lost response to recording creation

If the response to POST …/audio/ (or by_url/, by_youtube/) did not arrive because of a timeout or a dropped connection, the recording may have been created. Do not blindly retry the request:
  1. Find the recording by title: GET /api/spaces/{space_id}/audio/?search=<tag>&ordering=-created_at. Search works as a case-insensitive regular expression, so search by a tag without special characters, for example crm-48213, not by the full title with dots and brackets.
  2. Found it with is_uploaded: false: create the recording again and delete the empty one you found.
  3. Did not find it: create the recording again.

Timeouts

Create the recording right before uploading. If more than 5 hours have passed between creation and upload, create the recording again and delete the old one.

Token

Get a new token with email and password when less than a day is left before access expires, or the API responds with 401. Learn more: Authentication.

Non-JSON responses

Occasionally the API responds with an HTML error page instead of JSON. Check Content-Type before parsing. For safe requests (GET, sign-in), retry the request after 1–2 seconds.

Waiting for the result

Poll result/ every 10–15 seconds, no more often. Treat processing as failed if 500 persists for more than 3 minutes in a row. Learn more: Status and polling.
Last modified on October 17, 2026