Request
Mode A — File path (JSON body)
Send a JSON object with the absolute path to an audio file already on disk. FluidVoice reads the file directly — no file upload required.string
required
Absolute path to an audio file on disk. The file must be readable by FluidVoice. Supports any audio format that macOS AVFoundation can decode (WAV, M4A, AIFF, MP3, CAF, and others).
Mode B — Base64-encoded audio (JSON body)
Send a JSON object containing the audio data encoded as a base64 string. Includefilename so FluidVoice can detect the audio format from the file extension.
string
required
The raw audio file contents encoded as a standard base64 string. The decoded data must be a valid audio file in a format supported by macOS.
string
A filename (e.g.
"recording.m4a") used to detect the audio format from the file extension. Defaults to "audio.wav" if omitted. Does not need to be a real file path — only the extension matters.Mode C — Raw audio bytes (binary body)
Send the raw audio file bytes as the request body. SetContent-Type to the appropriate audio MIME type and use the X-Filename header to help FluidVoice identify the format.
string
The MIME type of the audio data, e.g.
audio/wav, audio/mp4, audio/aiff. FluidVoice uses this as a hint but primarily relies on the file extension from X-Filename.string
A filename whose extension indicates the audio format (e.g.
"recording.wav", "memo.m4a"). Defaults to "audio.wav" if not provided.Response
string
required
The transcribed text produced by the speech model.
number
required
A confidence score between
0.0 and 1.0 indicating how certain the model is about the transcript. Higher is more confident.integer
required
The number of audio samples processed. Divide by the sample rate (typically 16000 for most models) to get the audio duration in seconds.
string
required
The display name of the speech model that produced the transcript, matching the model selected in FluidVoice settings (e.g.
"Parakeet Flash", "Nemotron Speech 3.5", "Apple Speech").Error responses
The transcription model used is always the one currently active in FluidVoice. If you need to use a specific model, change it in Settings → Speech Model before calling the endpoint.
