What was just said, as words
POST
/api/transcribe
const url = 'http://localhost:5173/api/transcribe';const form = new FormData();form.append('serverId', 'example');form.append('model', 'example');form.append('audio', 'file');form.append('language', 'example');
const options = { method: 'POST', headers: {cookie: 'authjs.session-token=<authjs.session-token>'}};
options.body = form;
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url http://localhost:5173/api/transcribe \ --header 'Content-Type: multipart/form-data' \ --cookie authjs.session-token=<authjs.session-token> \ --form serverId=example \ --form model=example \ --form audio=@file \ --form language=exampleMultipart in, one line of text out. Nothing is kept: the recording exists for the length of this request and the text goes into a composer the person reads before sending it. The connection is resolved and the key injected here, so the browser never learns either.
Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”Media typemultipart/form-data
object
serverId
required
string
model
required
string
audio
required
string format: binary
language
ISO 639-1, optional. Sent on to the provider only where its endpoint is known to take one. Absent means the model works it out, which it does well on a sentence and badly on three words.
string
Responses
Section titled “Responses”The transcript.
Media typeapplication/json
object
text
string
Examplegenerated
{ "text": "example"}Missing parameters
Over the credit ceiling
The recording is larger than the provider accepts.
An audio type this app does not send.
The provider took longer than this app is willing to wait.

