Skip to main content
POST
/
audio
/
transcriptions
Speech-to-Text API
curl --request POST \
  --url https://geekai.dev/api/v1/audio/transcriptions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: multipart/form-data' \
  --form model=whisper-1 \
  --form 'prompt=<string>' \
  --form 'language=<string>' \
  --form response_format=text \
  --form temperature=0 \
  --form retries=0 \
  --form file=@example-file
"<string>"
Note: For speech model name settings, refer to the System Supported Transcription Speech Model List. The request/response parameter structure is fully compatible with OpenAI. When switching models, you only need to modify the corresponding model name. If the model request/response parameters are inconsistent with OpenAI, GeekAI will automatically convert and align them at the backend.
The response data format is fully compatible with the OpenAI speech transcription text interface.

cURL Request Example

curl --location 'https://geekai.dev/api/v1/audio/transcriptions' \
    --header 'Authorization: {YOUR_GEEKAI_API_KEY}' \
    --form 'file=@"/C:/User/GeekAI/Downloads/2cd359fe642c33deaa943f7306d73f30.mp3"' \
    --form 'model="whisper-1"' \
    --form 'response_format="text"'

Authorizations

Authorization
string
header
required

token

Body

multipart/form-data
model
string
default:whisper-1
required

transcription model

Example:

"whisper-1"

file
file
required

audio file

prompt
string

transcription prompt

language
string

language code

response_format
enum<string>
default:text

response format

Available options:
text,
srt,
vtt,
json
Example:

"text"

temperature
number
default:0

sampling temperature

Example:

0

retries
integer
default:0

auto retry times, default 0, means no retry

Example:

0

Response

successful response

text format transcription result

I