Skip to content

OpenAI Chat API

POST
/v1/chat/completions
curl --request POST \
--url https://api.mirapi.ai/v1/chat/completions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "model": "gpt-4", "messages": [ { "role": "system", "content": [ { "type": "text", "text": "example", "image_url": { "url": "example", "detail": "low" }, "input_audio": { "data": "example", "format": "wav" }, "file": { "filename": "example", "file_data": "example", "file_id": "example" }, "video_url": { "url": "example" } } ], "name": "example", "tool_calls": [ { "id": "example", "type": "function", "function": { "name": "example", "arguments": "example" } } ], "tool_call_id": "example", "reasoning_content": "example" } ], "temperature": 1, "top_p": 1, "n": 1, "stream": false, "stream_options": { "include_usage": true }, "stop": [ "example" ], "max_tokens": 1, "max_completion_tokens": 1, "presence_penalty": 0, "frequency_penalty": 0, "logit_bias": { "additionalProperty": 1 }, "user": "example", "tools": [ { "type": "function", "function": { "name": "example", "description": "example", "parameters": {} } } ], "tool_choice": "none", "response_format": { "type": "text", "json_schema": {} }, "seed": 1, "reasoning_effort": "low", "modalities": [ "text" ], "audio": { "voice": "example", "format": "example" } }'

Creates a model response from the conversation history. Streaming and non-streaming responses are both supported.

Compatible with the OpenAI Chat Completions API.

Media typeapplication/json
object
model
required

Model ID

string
Example
gpt-4
messages
required

Conversation messages

Array<object>
object
role
required

Message role

string
Allowed values: system user assistant tool developer
content
required
One of:
string
name

Sender name

string
tool_calls
Array<object>
object
id
string
type
string
Example
function
function
object
name
string
arguments
string
tool_call_id

Tool call ID (for messages with the tool role)

string
reasoning_content

Reasoning content

string
temperature

Sampling temperature

number
default: 1 <= 2
top_p

Nucleus sampling (top_p)

number
default: 1 <= 1
n

Number of completions to generate

integer
default: 1 >= 1
stream

Whether to stream the response

boolean
stream_options
object
include_usage
boolean
stop
One of:
string
max_tokens

Maximum tokens to generate

integer
max_completion_tokens

Maximum completion tokens

integer
presence_penalty
number
0 >= -2 <= 2
frequency_penalty
number
0 >= -2 <= 2
logit_bias
object
key
additional properties
number
user
string
tools
Array<object>
object
type
string
Example
function
function
object
name
string
description
string
parameters

Parameter definition as a JSON Schema

object
tool_choice
One of:
string
Allowed values: none auto required
response_format
object
type
string
Allowed values: text json_object json_schema
json_schema

JSON Schema definition

object
seed
integer
reasoning_effort

Reasoning effort (for reasoning-capable models)

string
Allowed values: low medium high
modalities
Array<string>
Allowed values: text audio
audio
object
voice
string
format
string

Response created

Media typeapplication/json
object
id
string
object
string
created
integer
model
string
choices
Array<object>
object
index
integer
message
object
role
required

Message role

string
Allowed values: system user assistant tool developer
content
required
One of:
string
name

Sender name

string
tool_calls
Array<object>
object
id
string
type
string
function
object
name
string
arguments
string
tool_call_id

Tool call ID (for messages with the tool role)

string
reasoning_content

Reasoning content

string
finish_reason
string
Allowed values: stop length tool_calls content_filter
usage
object
prompt_tokens

Prompt tokens

integer
completion_tokens

Completion tokens

integer
total_tokens

Total tokens

integer
prompt_tokens_details
object
cached_tokens
integer
text_tokens
integer
audio_tokens
integer
image_tokens
integer
completion_tokens_details
object
text_tokens
integer
audio_tokens
integer
reasoning_tokens
integer
system_fingerprint
string
Example
{
"object": "chat.completion",
"choices": [
{
"message": {
"role": "system",
"content": [
{
"type": "text",
"image_url": {
"detail": "low"
},
"input_audio": {
"format": "wav"
}
}
],
"tool_calls": [
{
"type": "function"
}
]
},
"finish_reason": "stop"
}
]
}

Invalid request parameters

Media typeapplication/json
object
error
object
message

Error message

string
type

Error type

string
param

Related parameter

string
nullable
code

Error code

string
nullable
Examplegenerated
{
"error": {
"message": "example",
"type": "example",
"param": "example",
"code": "example"
}
}

Rate limited

Media typeapplication/json
object
error
object
message

Error message

string
type

Error type

string
param

Related parameter

string
nullable
code

Error code

string
nullable
Examplegenerated
{
"error": {
"message": "example",
"type": "example",
"param": "example",
"code": "example"
}
}