Source: https://ailoot.ai/docs/id/api/audio/
Canonical: https://ailoot.ai/docs/id/api/audio/
Language: id

[API](https://ailoot.ai/docs/id/) 

# Audio

[Markdown](https://ailoot.ai/docs/id/api/audio/index.md)

Sintesis suara dari teks (TTS) dan pengenalan ucapan (STT) dalam format OpenAI Audio.

POST`https://api.ailoot.ai/v1/audio/speech`

Audio

```bash
# sintesis ucapan
curl https://api.ailoot.ai/v1/audio/speech \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "qwen-audio-3.0-tts-plus", "input": "Selamat siang! Ini contoh sintesis ucapan.", "voice": "longanlingxin"}' \
  --output speech.mp3

# pengenalan
curl https://api.ailoot.ai/v1/audio/transcriptions \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -F model=qwen-asr \
  -F file=@meeting.wav
```

```python
# pengenalan ucapan
with open("meeting.wav", "rb") as f:
    tr = client.audio.transcriptions.create(model="qwen-asr", file=f)
print(tr.text)
```

200 OK · pengenalan ucapan

```json
{
  "text": "Selamat siang, rekan-rekan. Mari mulai dengan hasil minggu ini…"
}
```

## Autentikasi

| Parameter | Tipe | Wajib | Deskripsi |
| --- | --- | --- | --- |
| `Authorization` | header | wajib | Kunci dalam format `Bearer sk-…`. Header yang juga dapat digunakan: `x-api-key` atau `x-goog-api-key`. |

## Sintesis suara: isi permintaan

| Parameter | Tipe | Wajib | Deskripsi |
| --- | --- | --- | --- |
| `model` | string | wajib | Model sintesis suara: `gemini-3.8-flash-tts`, `qwen-audio-3.0-tts-plus`, `speech-2.8-turbo`, `gemini-3.8-flash-lite-tts`, `speech-2.8-hd`, `gemini-3.1-flash-tts-preview`, `speech-2.6-turbo`, `speech-2.6-hd`, `speech-02-turbo`, `speech-02-hd`. |
| `input` | string | wajib | Teks yang akan dibacakan. Untuk model MiniMax — kurang dari 10 000 karakter; untuk `qwen-audio-3.0-tts-plus` — hingga 600. |
| `voice` | string |  | Suara. **Wajib untuk model MiniMax** (`speech-2.8-hd` dan model lain dalam seri `speech-…`): ID suara MiniMax (huruf Latin, angka, `_` dan `-`, hingga 128 karakter). Untuk `qwen-audio-3.0-tts-plus` nilai defaultnya `longanlingxin`, untuk model Gemini TTS — `Kore`. |
| `response_format` | string | opsional | MiniMax — hanya `mp3`; `qwen-audio-3.0-tts-plus` — `mp3`, `wav` atau `pcm`; Gemini TTS — `wav` atau `json` (tautan file). |

Respons berupa file audio (untuk MiniMax — `audio/mpeg`). Biaya dihitung per karakter teks atau per token, sesuai keterangan dalam katalog.

## Pengenalan ucapan

POST`https://api.ailoot.ai/v1/audio/transcriptions`

| Parameter | Tipe | Wajib | Deskripsi |
| --- | --- | --- | --- |
| `file` | file | wajib | File audio WAV dalam `multipart/form-data`. `qwen-asr`, `qwen-asr-latest` dan `qwen-audio-3.0-asr-flash`: PCM WAV utuh tanpa kompresi hingga 5 menit, ukuran file sekitar maksimal 7,5 MB (dalam base64 — hingga 10 MB). `asr-1.0`: PCM WAV hingga 500 detik dan 50 MB. `gemini-3.5-transcribe`: WAV hingga 64 MB. |
| `model` | string | wajib | Model pengenalan ucapan: `gemini-3.5-transcribe`, `qwen-audio-3.0-asr-flash`, `asr-1.0`. |
| `response_format` | string | opsional | Hanya `json` (atau tidak perlu diisi). |

Kolom `language` tidak digunakan oleh model-model ini. Respons: `{"text": "…"}`. Biaya dihitung berdasarkan durasi rekaman (detik, menit, atau jam — setiap model memiliki satuannya sendiri).

## Suara waktu nyata

Untuk `qwen-audio-3.0-realtime-plus` buka WebSocket `wss://api.ailoot.ai/v1/realtime?model=qwen-audio-3.0-realtime-plus` dengan header `Authorization: Bearer <API_KEY>`. Kirim kunci dari sisi server: kunci dalam query string tidak diterima. Tunggu `session.created` dengan model yang dipilih, lalu kirim pengaturan, pesan, dan `response.create`. Berikut tiga frame teks JSON berurutan untuk respons teks dalam sesi audio:

```json
{"type":"session.update","session":{"modalities":["text"],"turn_detection":null,"max_history_turns":20,"instructions":"Jawab dengan singkat."}}
```

```json
{"type":"conversation.item.create","item":{"type":"message","role":"user","content":[{"type":"input_text","text":"Katakan ya."}]}}
```

```json
{"type":"response.create"}
```

Baca peristiwa respons hingga `response.done` beserta usage akhirnya; kesalahan dikirim melalui peristiwa `error`. Biaya dihitung berdasarkan token teks dan audio untuk setiap respons yang dikonfirmasi. Input audio: peristiwa `input_audio_buffer.append` dengan `audio` — base64 PCM16 mono 16 kHz; lalu `input_audio_buffer.commit` dan `response.create`. Output audio — PCM16 mono 24 kHz. Frame biner tidak diterima dalam sesi ini.

Peristiwa klien yang didukung: `session.update`, `input_audio_buffer.append/commit/clear`, `response.create/cancel`, `conversation.item.create/retrieve/delete`. conversation items hanya mendukung pesan/teks; function tools, web search, dan voiceprint tidak didukung. Batas sesi: 600 detik, 20 respons, 20 history turns, 2000 byte instructions, dan 8000 byte teks klien. Idle timeout bergantung pada konfigurasi (default 60 detik).

Di sini dijelaskan mode suara `qwen-audio-3.0-realtime-plus`; model waktu nyata lainnya memiliki aturan tersendiri. Jalur `/v1/realtime/sessions` dan token sementara (ephemeral tokens) tidak didukung.

Masih ada pertanyaan? Kirim Request ID dan penjelasannya — kami akan membantu.[Hubungi dukungan](mailto:support@ailoot.ai)

## Ailoot · Perusahaan dan portofolio proyeknya





Ailoot bertumpu pada pengalaman operasional yang teruji, basis pelanggan yang besar, layanan yang stabil, dan pemantauan KPI berkelanjutan.





Perusahaan dan portofolio proyeknya: jutaan pelanggan; penjualan miliaran setiap bulan.





Ailoot memanfaatkan pengalaman operasional ini untuk akses API ke fitur AI dalam produk pelanggan, agen, aplikasi, dan otomatisasi.
