Documentation menu
voice
POST/v1/voice/clips
API key required, sent as Authorization: Bearer snk_… or ?api_key=snk_….
Call it
bash
curl -fsS -X POST "https://api.mapmap.ai/v1/voice/clips" \
-H "Authorization: Bearer $MAPMAP_KEY" \
-H "Content-Type: application/json" \
-d @request.jsonRequest body
application/json · VoiceClipsRequest
| Field | Type | Required | Description |
|---|---|---|---|
| format | string | yes | Container: opus (Ogg Opus 48 kHz, for Android) or m4a
(MPEG-4 AAC 44.1 kHz, for iOS, which cannot play Ogg Opus). |
| utterances | UtteranceRequest[] | yes | The sentences to speak, at most [MAX_UTTERANCES]. |
| voice | string | no | Voice id. Only amelia exists today; sent explicitly so the day a
second voice is added, an old client does not silently get it. |
Responses
200Clip URLs, cache flags and durations;
pending for clips still being synthesised| Field | Type | Required | Description |
|---|---|---|---|
| clips | ClipAnswer[] | yes | One entry per requested utterance, in request order. |
| voice | VoiceDescriptor | yes | The voice, provider and model behind every clip here. |
400Invalid request
401Missing or invalid API key
429Quota or rate limit exceeded
501Voice clips are not enabled (SN_VOICE_DIR or SN_ELEVENLABS_API_KEY unset)
Error bodies follow the shared problem model documented on API conventions.
Also under voice
Generated from https://api.mapmap.ai/openapi.json on 2026-09-18 · operationId post_clips