POSThttps://api.audelyr.ai/v1/transcription-uploads
Create a short-lived signed POST policy for a browser or server audio file. POST every returned upload_fields entry plus a file field directly to upload_url, then use the returned id as upload_id.
Auth: Bearer aud_live_… (server only; return only the signed policy to a browser)
Headers: Idempotency-Key (16–255 chars) · Content-Type: application/json
NameTypeRequiredDescription
content_typesupported audio MIME typeyesExact multipart MIME type. M4A accepts audio/mp4, audio/x-m4a or audio/m4a.
size_bytesintegernoOptional exact byte length; maximum 500,000,000 bytes.
filenamestringnoOriginal filename; required with application/octet-stream and used to validate the audio extension.
Response: 201 upload grant: id (upl_), upload_url, upload_method POST, upload_fields, expires_at, max_bytes and content_type.
POSThttps://api.audelyr.ai/v1/transcriptions
Queue offline transcription for exactly one upload_id, HTTPS audio URL or file reference. Each upload_id is consumed once atomically and processed by a private worker.
Auth: Bearer aud_live_… (server only)
Headers: Idempotency-Key (16–255 chars) · Content-Type: application/json
NameTypeRequiredDescription
upload_idupl_ IDnoAudelyr upload returned by POST /v1/transcription-uploads.
audio_urlhttps:// URLnoExisting HTTPS audio URL.
file_idstringnoPreviously registered file reference.
audio_urihttps:// URLnoCompatibility alias for audio_url; gs:// is not accepted.
language_hintsstring[]noOptional BCP-47 hints, max 10.
translationobjectnoOptional one-way target or bidirectional language pair for speech translation; this is not text translation.
contextstringnoOptional job-scoped speech context, 1-2,000 characters.
custom_vocabularystring[]noOptional job-scoped recognition terms, max 100 unique terms; not a persistent project glossary.
Response: 202 JSON with id (ofq_) and status queued.
GEThttps://api.audelyr.ai/v1/transcriptions/{transcription_id}
Poll an offline job. Successful files are metered by processed audio duration at $0.005/min; failed jobs are not charged. Audelyr then cleans up hosted source objects.
Auth: Bearer aud_live_…
Response: 200 status, transcript, translated_text, detected_language, audio_ms, billing and error.