Skip to main content
Base URL: https://api.orbitrage.ai/v1 · Auth: Authorization: Bearer orb_…
Orbitrage exposes the OpenAI Audio API and routes it to a managed Deepgram model (included with your account — no BYOK required). Speech-to-text is billed per minute of audio; text-to-speech per 1,000 input characters; both at the provider rate plus the 2.5% infra markup.

Transcriptions

POST /v1/audio/transcriptions
POST /v1/audio/translations
Accepts OpenAI multipart (file + model), a raw audio body with an audio Content-Type, or a JSON {"url": "..."}. model defaults to nova-3.
curl https://api.orbitrage.ai/v1/audio/transcriptions?model=nova-3 \
  -H "Authorization: Bearer $ORBITRAGE_API_KEY" \
  -H "Content-Type: audio/wav" \
  --data-binary @call.wav
Response (OpenAI-compatible; verbose_json returns Deepgram’s full payload):
{ "text": "…transcript…", "duration": 25.93, "model": "nova-3", "provider": "deepgram" }

Speech

POST /v1/audio/speech
Body: { "model": "aura-2-thalia-en", "input": "…", "response_format": "mp3" }. response_format maps to a Deepgram container/encoding (mp3 default, wav, opus, flac, aac). The audio streams back for low time-to-first-byte.
curl https://api.orbitrage.ai/v1/audio/speech?model=aura-2-thalia-en \
  -H "Authorization: Bearer $ORBITRAGE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input":"Hello from Orbitrage."}' \
  --output hello.mp3

Response headers

Every audio call returns the standard Orbitrage observability headers so you can read cost and routing inline:
HeaderMeaning
X-ScaleASAP-Tieraudio
X-ScaleASAP-Modelresolved model, e.g. nova-3
X-ScaleASAP-Providerdeepgram
X-ScaleASAP-Total-Costbilled cost in USD (markup applied)
X-ScaleASAP-Audio-Secondsaudio duration (transcription)
X-ScaleASAP-Step-Idthe routing_steps row id
See Audio examples for Python/Node SDK snippets and the full model list.