# Migrate alecs5am/ralphy from ElevenLabs to Audra

Get a free API key (25k chars): https://audratalks.com/dashboard?utm_source=github&utm_medium=snippet&utm_campaign=switch-alecs5am-ralphy

Audra v2 API: `POST /v2/speech` with model `audra-core` and slug voices.

Migration guide: https://audratalks.com/migrate?utm_source=github&utm_medium=snippet&utm_campaign=switch-alecs5am-ralphy

## Node.js (fetch)

```javascript
import fs from 'node:fs/promises';

const res = await fetch('https://audratalks.com/v2/speech', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.AUDRA_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    model: 'audra-core',
    voice: 'june',
    text: 'Hello from Audra',
    format: 'mp3',
  }),
});
const buf = Buffer.from(await res.arrayBuffer());
await fs.writeFile('out.mp3', buf);
```

## Python

```python
import os, requests

res = requests.post(
    "https://audratalks.com/v2/speech",
    headers={
        "Authorization": f"Bearer {os.environ['AUDRA_API_KEY']}",
        "Content-Type": "application/json",
    },
    json={
        "model": "audra-core",
        "voice": "june",
        "text": "Hello from Audra",
        "format": "mp3",
    },
)
res.raise_for_status()
open("out.mp3", "wb").write(res.content)
```

## curl

```bash
curl https://audratalks.com/v2/speech \
  -H "Authorization: Bearer $AUDRA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"audra-core","voice":"june","text":"Hello","format":"mp3"}' \
  --output out.mp3
```

Legacy OpenAI-shaped `/v1/*` remains during deprecation — see https://audratalks.com/migrate?utm_source=github&utm_medium=snippet&utm_campaign=switch-alecs5am-ralphy.
