Introducing Naad v1

Developers

Developer hubDocumentationQuickstartModelsAudio & Voice APISpeech-to-SpeechAuthenticationError referenceSolutions

Resources

BlogSystem statusDesktop appsPricingSign inSign up

Quickstart

Five minutes from zero to spoken Hindi. Everything is plain HTTPS — use any language; official SDKs are on the way.

1. Create an API key

Sign up (free), open Dashboard → API keys, and create a key. It is shown once and looks like sk-setu-…. Export it:

bash
export OOGAM_API_KEY="sk-setu-..."

New workspaces start with wallet credit, so the calls below work before you add money. Every request is metered in rupees — Dashboard → Billing shows exactly where each paisa went.

2. Say something — Text to Speech

bash
curl https://platform.oogam.ai/v1/audio/speech \
  -H "Authorization: Bearer $OOGAM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "input": "नमस्ते! ऊगम में आपका स्वागत है।",
    "voice": "aditi",
    "language": "HIN"
  }' \
  --output namaste.wav

# Play it:
#   macOS:  afplay namaste.wav
#   Linux:  aplay namaste.wav

Change language and voice freely — 28 languages, every voice listed by GET /voices:

bash
curl https://platform.oogam.ai/v1/voices -H "Authorization: Bearer $OOGAM_API_KEY"

3. Hear something — Speech to Text

Feed the file you just generated straight back:

bash
curl https://platform.oogam.ai/v1/audio/transcriptions \
  -H "Authorization: Bearer $OOGAM_API_KEY" \
  -F "language=HIN" \
  -F "file=@namaste.wav"

# → नमस्ते! ऊगम में आपका स्वागत है।

Long recordings switch to an async job automatically — your client just checks for a 202 and polls. Details in the STT reference.

4. The same in Python

python
# pip install requests
import requests, os

KEY = os.environ["OOGAM_API_KEY"]
BASE = "https://platform.oogam.ai/v1"

# Speak
audio = requests.post(f"{BASE}/audio/speech",
    headers={"Authorization": f"Bearer {KEY}"},
    json={"input": "કેમ છો?", "voice": "kabir", "language": "GUJ"})
open("hello.wav", "wb").write(audio.content)

# Listen
text = requests.post(f"{BASE}/audio/transcriptions",
    headers={"Authorization": f"Bearer {KEY}"},
    data={"language": "GUJ"},
    files={"file": open("hello.wav", "rb")})
print(text.text)

5. Go realtime

Live conversation — caller's mic in, agent's voice out, with your own system prompt grounding the agent — runs over one WebSocket at wss://platform.oogam.ai/v1/realtime. The full protocol, with a runnable Node example, is in Realtime Speech to Speech.

Where next