---
title: "Read an assistant reply aloud"
method: POST
path: "/v3/backoffice/assistant/speech"
tags: ["AI Assistant"]
---

# Read an assistant reply aloud

`POST /v3/backoffice/assistant/speech`

## Request

- Base URL: `https://api.rhinoartisan.com`
- URL: `https://api.rhinoartisan.com/v3/backoffice/assistant/speech`
- Auth: API key in header `apikey`
- TypeScript: <https://skmtc.dev/rhinoartisan/apis/rhinoartisan-api/docs/v3/backoffice/assistant/speech/post.ts> (a function with typed inputs; its response is checked against the schema)

JSON {text}: the reply, cleaned for speech (no markdown, engine tokens in words) and capped at 1500 characters, converted with ElevenLabs (eleven_flash_v2_5) and the organization's voice and API key. Returns audio/mpeg.

## Response `200`

audio/mpeg

## Other responses

- `400`: EMPTY_TEXT, ELEVENLABS_API_KEY_MISSING, ELEVENLABS_API_KEY_INVALID, ELEVENLABS_QUOTA_EXCEEDED, ELEVENLABS_NO_VOICES, ELEVENLABS_ERROR

## Changes

- **2026-10-15** `598bac108453`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rhinoartisan/apis/rhinoartisan-api/changes/v3/backoffice/assistant/speech/post.md)

---

[API](https://skmtc.dev/rhinoartisan/apis/rhinoartisan-api.md) - [All operations](https://skmtc.dev/rhinoartisan/apis/rhinoartisan-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rhinoartisan/apis/rhinoartisan-api/revisions/f0e1d3d69cfb?raw)
