Speech Recognition (MiMo‑V2.5-ASR) - OpenAI API Compatibility
Request Address
https://api.xiaomimimo.com/v1/chat/completions
Request Headers
The API supports the following two authentication methods. Please choose one and add it to the request headers:
api-key: $MIMO_API_KEY
Content-Type: application/json
Request body
- messagesarrayRequiredThe message list.Hide child attributesMessages sent by an end user.Hide child attributesmessages.contentarrayRequiredThe contents of the user message.
For detailed usage, please refer to Speech Recognition.
Hide child attributesAn array of content parts with a defined type. For speech recognition, only single audio input is supported.Hide child attributesHide child attributesmessages.content.input_audioobjectRequiredWhen audio is passed via data URL, the
formatfield is optional. If only Base64-encoded audio data is provided, theformatfield is required. If bothMIME_TYPEandformatare included, their values must match.Hide child attributesmessages.content.input_audio.datastringRequiredBase64 encoded audio in a data URL. Input audio only supportsmp3andwavformats:mp3: validMIME_TYPEvalues:audio/mpeg,audio/mp3wav: validMIME_TYPEvalue:audio/wav
messages.content.input_audio.formatstringThe format for encoding audio data.
Available options:mp3,wavmessages.content.typestringRequiredThe type of the content part.
Available options:input_audiomessages.rolestringRequiredRole of the message author.
Available options:user - modelstringRequiredModel ID is used to generate the response.
Available options:mimo-v2.5-asr - asr_optionsobjectCustom configuration parameters for automatic speech recognition (ASR).Hide child attributesasr_options.languagestringDefault: autoSpecify a single language for audio recognition.
auto: Auto‑detect audio languagezh: Chineseen: English
auto,zh,en - streambooleanDefault: falseIf set to
true, the model response data will be streamed to the client as it is generated using server-sent events.
Chat response object (non-streaming output)
- choicesarrayA list of chat completion choices.Hide child attributeschoices.finish_reasonstringThe reason the model stopped generating tokens:
stop: The model reached a natural stop point or a user‑provided stop sequencelength: Terminated due to exceeding the model's maximum generation lengthcontent_filter: Content was omitted due to a content filter flag
choices.indexintegerThe index of the choice in the list of choices.choices.messageobjectA chat completion message generated by the model.Hide child attributeschoices.message.contentstringThe contents of the message.choices.message.rolestringThe role of the author of this message. - createdintegerThe Unix timestamp (in seconds) of when the chat completion was created.
- idstringA unique identifier for the chat completion.
- modelstringThe model to generate the completion.
- objectstringThe object type, which is always
chat.completion. - usageobject | nullUsage statistics for the completion request.Hide child attributesusage.completion_tokensintegerNumber of tokens in the generated completion.usage.prompt_tokensintegerNumber of tokens in the prompt.usage.total_tokensintegerTotal number of tokens used in the request (prompt + completion).usage.completion_tokens_detailsobjectBreakdown of tokens used in a completion.Hide child attributesusage.completion_tokens_details.reasoning_tokensintegerTokens generated by the model for reasoning. Always
0.usage.prompt_tokens_detailsobjectBreakdown of tokens used in the prompt.Hide child attributesusage.prompt_tokens_details.cached_tokensintegerNumber of tokens served from cache.usage.prompt_tokens_details.audio_tokensintegerAudio input tokens present in the prompt.usage.secondsintegerAudio duration (seconds).
Chat response chunk object (streaming output)
- choicesarrayA list of chat completion choices.Hide child attributeschoices.deltaobjectA chat completion delta generated by streamed model responses.Hide child attributeschoices.delta.contentstringThe contents of the chunk message.choices.delta.rolestringThe role of the author of this message.choices.finish_reasonstring | nullThe reason the model stopped generating tokens:
stop: The model reached a natural stop point or a user‑provided stop sequencelength: Terminated due to exceeding the model's maximum generation lengthcontent_filter: Content was omitted due to a content filter flag
choices.indexintegerThe index of the choice in the list of choices. - createdintegerThe Unix timestamp (in seconds) of when the chat completion was created. Each chunk has the same timestamp.
- idstringA unique identifier for the chat completion. Each chunk has the same ID.
- modelstringThe model to generate the completion.
- objectstringThe object type, which is always
chat.completion.chunk. - usageobject | nullUsage statistics for the completion request.Hide child attributesusage.completion_tokensintegerNumber of tokens in the generated completion.usage.prompt_tokensintegerNumber of tokens in the prompt.usage.total_tokensintegerTotal number of tokens used in the request (prompt + completion).usage.completion_tokens_detailsobjectBreakdown of tokens used in a completion.Hide child attributesusage.completion_tokens_details.reasoning_tokensintegerTokens generated by the model for reasoning. Always
0.usage.prompt_tokens_detailsobjectBreakdown of tokens used in the prompt.Hide child attributesusage.prompt_tokens_details.cached_tokensintegerNumber of tokens served from cache.usage.prompt_tokens_details.audio_tokensintegerAudio input tokens present in the prompt.usage.secondsintegerAudio duration (seconds).
curl --location --request POST 'https://api.xiaomimimo.com/v1/chat/completions' \
--header "api-key: $MIMO_API_KEY" \
--header 'Content-Type: application/json' \
--data-raw '{
"model": "mimo-v2.5-asr",
"messages": [
{
"role": "user",
"content": [
{
"type": "input_audio",
"input_audio": {
"data": "data:{MIME_TYPE};base64,$BASE64_AUDIO"
}
}
]
}
],
"asr_options": {
"language": "auto"
}
}'response
{
"id": "9f51eba459dd4dfdabb31cabba0cb7dc",
"choices": [
{
"finish_reason": "stop",
"index": 0,
"message": {
"content": "Good morning. Could you tell me what the weather will be like today?",
"role": "assistant",
"audio": null,
"tool_calls": null,
"audio_tokens": []
}
}
],
"created": 1780398283,
"model": "mimo-v2.5-asr",
"object": "chat.completion",
"usage": {
"completion_tokens": 20,
"prompt_tokens": 46,
"total_tokens": 66,
"completion_tokens_details": {
"reasoning_tokens": 0
},
"prompt_tokens_details": {
"audio_tokens": 25,
"cached_tokens": 45
},
"seconds": 4
}
}Update Time July 17, 2026