Справочник API

Аудио

Пока ни одна модель это не поддерживает

Сейчас ни одна модель из каталога моделей не поддерживает этот маршрут. Страница оставлена для справки.
POST/v1/audio/speech
POST/v1/audio/transcriptions
POST/v1/audio/translations

Речь в обе стороны: /v1/audio/speech синтезирует аудио из текста; /v1/audio/transcriptions превращает аудио в текст (совместимо с Whisper); /v1/audio/translations распознаёт речь сразу с переводом на английский.

#Параметры запроса

  • modelstringобязательно

    Модели класса tts-1 для синтеза речи; класса whisper-1 — для распознавания.

  • inputstringобязательно

    Только для speech: текст для озвучки.

  • voicestringобязательно

    Только для speech: имя голоса (alloy, nova, …); доступные голоса указаны в карточке модели.

  • filefile (multipart)обязательно

    Только для transcriptions: аудиофайл (mp3, wav, m4a, webm …).

  • languagestringнеобязательно

    Только для transcriptions: подсказка в формате ISO-639-1, повышающая точность.

  • response_formatstringнеобязательно

    speech: mp3 | wav | opus …; transcriptions: json | text | srt | verbose_json.

  • speednumberнеобязательно

    Только для speech: скорость воспроизведения 0.25–4.0.

Два разных типа содержимого

speech принимает JSON-тело и возвращает аудио в сыром виде; transcriptions/translations принимают multipart/form-data и возвращают JSON. Не путайте их.

#Связанные ошибки

  • 413 payload_too_largeТело запроса (промпт, изображение или аудиофайл) превышает допустимый размер.
  • 401Bearer-токен недействителен или отсутствует. На этом пути error.code нет — ориентируйтесь на статус.
  • 402 insufficient_user_quotaБаланса кошелька не хватает на предварительно резервируемую сумму.
  • 429Ограничение частоты для ключа. Тело пустое; дождитесь Retry-After. Если же в ответе 429 есть insufficient_user_quota, это дневной лимит расходов.
  • 503 model_not_foundНеизвестная модель, или сейчас её не обслуживает ни один исправный канал.

Полная таблица кодов ошибок →

#Пример запроса

# text → speech (bytes saved to file)
curl https://www.aisplice.store/v1/audio/speech \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "tts-1", "voice": "alloy", "input": "Hello from the gateway."}' \
  --output hello.mp3

# speech → text (multipart)
curl https://www.aisplice.store/v1/audio/transcriptions \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -F file=@meeting.mp3 -F model=whisper-1

#Ответ

response.json
// /v1/audio/speech → binary audio body (Content-Type: audio/mpeg)

// /v1/audio/transcriptions
{"text": "…transcript…"}

Проблема не решена?

Пришлите нам ID запроса или текст ошибки, и мы разберёмся.