VoiceStudioDocs
Local reference

Studio tools

POST
/preview/upload

Request Body

multipart/form-data

video*Video

Response Body

application/json

application/json

bash
curl -X POST "https://example.com/preview/upload" \
  -F video="string"
json
null
GET
/preview/{filename}

Path Parameters

filename*Filename

Response Body

application/json

application/json

bash
curl -X GET "https://example.com/preview/string"
json
null
POST
/tools/probe

Request Body

application/json

path*Path

Response Body

application/json

application/json

bash
curl -X POST "https://example.com/tools/probe" \
  -H "Content-Type: application/json" \
  -d '{
    "path": "string"
  }'
json
null
POST
/tools/incremental

Request Body

application/json

segments*array<>
stored_hashes?|null
lang?string|null
voice_match?string|null

Response Body

application/json

application/json

bash
curl -X POST "https://example.com/tools/incremental" \
  -H "Content-Type: application/json" \
  -d '{
    "segments": [
      {}
    ]
  }'
json
null
POST
/tools/direction

Request Body

application/json

text*Text

Natural-language direction, e.g. 'urgent and surprised'

Response Body

application/json

application/json

bash
curl -X POST "https://example.com/tools/direction" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "string"
  }'
json
null
POST
/tools/rate-fit

Request Body

application/json

text*Text
slot_seconds*Slot Seconds
target_lang*Target Lang
source_text?string|null

Response Body

application/json

application/json

bash
curl -X POST "https://example.com/tools/rate-fit" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "string",
    "slot_seconds": 0,
    "target_lang": "string"
  }'
json
null
GET
/tools/effects

Return available audio effect presets (Broadcast, Cinematic, etc.).

Response Body

application/json

bash
curl -X GET "https://example.com/tools/effects"
json
null
GET
/tools/plugins

Return all registered TTS engine plugins and their availability.

Response Body

application/json

bash
curl -X GET "https://example.com/tools/plugins"
json
null
POST
/design/describe

Parse a free-text description into design attrs + a validator-safe instruct.

Response shape::

text
{
  "attrs":     {"Gender": "female", "Age": "elderly", ... or "Auto"},
  "instruct":  "female, elderly, low pitch, british accent",
  "matched":   [{"category": "Age", "token": "elderly", "phrase": "elderly"}, ...],
  "unmatched": ["slightly raspy"]
}

Request Body

application/json

description?Description
Lengthlength <= 2000
Default""

Response Body

application/json

application/json

bash
curl -X POST "https://example.com/design/describe" \
  -H "Content-Type: application/json" \
  -d '{}'
json
{}
GET
/dictation/models

The seven sherpa-onnx dictation models + install state.

Each entry: id, repo_id, label, tag ("offline"|"streaming"), recommended, size_gb, languages, kind, and install state (installed/installing). The installed flag is computed from the same HF cache the model store reads, so it matches the model-store row state.

Response Body

application/json

bash
curl -X GET "https://example.com/dictation/models"
json
null
GET
/dictation/prefs

Response Body

application/json

bash
curl -X GET "https://example.com/dictation/prefs"
json
null
POST
/dictation/prefs

Persist any subset of the dictation prefs. Validates mode and model_id so a bad value can't wedge the capture engine.

Request Body

application/json

enabled?boolean|null
mode?string|null
model_id?string|null

Response Body

application/json

application/json

bash
curl -X POST "https://example.com/dictation/prefs" \
  -H "Content-Type: application/json" \
  -d '{}'
json
null