Skip to main content
POST
GPT Chat Completions (All Models, Full Parameters)
BaseURL: The default BaseURL is https://direct.evolink.ai, which has better support for text models and long-lived connections. https://api.evolink.ai is the primary endpoint for multimodal services and serves as a fallback address for text models.
Server-side tools (web search, code execution, file search, MCP) are only available on the Responses API. The Chat Completions endpoint supports regular function tool calling only.
Note The whole series consists of reasoning models. stop (stop sequences) and web_search_options are not supported on any model and return 400 if passed; logit_bias does not apply to this model series.Model support varies for temperature, top_p, frequency_penalty, presence_penalty, logprobs and verbosity — refer to the notes on each parameter above.

Authorizations

Authorization
string
header
required

##All APIs require Bearer Token authentication##

Get API Key:

Visit API Key Management Page to get your API Key

Add to request header:

Body

application/json
model
enum<string>
required

Model to call:

Available options:
gpt-5.6-sol,
gpt-5.6-terra,
gpt-5.6-luna,
gpt-5.5,
gpt-5.4,
gpt-5.2,
gpt-5.1
Example:

"gpt-5.6-sol"

messages
object[]
required

List of chat messages, supporting multi-turn context and multimodal input.

role can be system / developer / user / assistant / tool.

content can be a string or an array of content blocks. Two block types are supported: text (text) and image_url (image):

Image

  • Pass the public URL of the image in image_url.url
  • image_url can also be written directly as a string, equivalent to { "url": "..." }
  • detail controls image analysis fidelity: auto (default) / low / high / original
  • The image must be downloadable, otherwise 400 is returned

Note The block types on this API differ from those on the Responses API (which uses input_text / input_image). They cannot be mixed; using the wrong ones returns 400.

Example:
stream
boolean
default:false

Whether to return the result as a stream (an SSE event stream terminated by data: [DONE]). Defaults to false.

Example:

false

max_completion_tokens
integer

Maximum number of tokens to generate (including reasoning tokens).

Note This model series uses max_completion_tokens. For backward compatibility, passing only max_tokens is automatically treated as max_completion_tokens; however, do not pass both fields at once — on gpt-5.1 / gpt-5.2 / gpt-5.4 passing both returns 400.

Example:

2048

reasoning_effort
enum<string>

Reasoning depth control. The allowed values vary by model:

Reasoning tokens are billed as output tokens and counted in usage.completion_tokens_details.reasoning_tokens.

Available options:
none,
low,
medium,
high,
xhigh
Example:

"medium"

verbosity
enum<string>

How detailed the answer should be: low / medium / high.

Note Supported only by gpt-5.6-sol / gpt-5.6-terra / gpt-5.6-luna / gpt-5.5; other models do not support this parameter.

Available options:
low,
medium,
high
Example:

"low"

temperature
number

Sampling temperature, ranging from 0 to 2. Lower values make the output more deterministic.

Note Supported only by gpt-5.5 / gpt-5.4 / gpt-5.2 / gpt-5.1. The gpt-5.6 family accepts only the default value 1; passing any other value returns 400.

Required range: 0 <= x <= 2
Example:

0.7

top_p
number

Nucleus sampling parameter, ranging from 0 to 1. Adjusting it together with temperature is not recommended.

Note Supported only by gpt-5.5 / gpt-5.4 / gpt-5.2 / gpt-5.1; the gpt-5.6 family does not support this parameter.

Required range: 0 <= x <= 1
Example:

0.9

frequency_penalty
number

Frequency penalty, ranging from -2 to 2. Positive values penalize tokens by how often they have appeared, reducing repeated content.

Note Supported only by gpt-5.4 / gpt-5.2 / gpt-5.1; the gpt-5.6 family and gpt-5.5 do not support this parameter.

Required range: -2 <= x <= 2
Example:

0.5

presence_penalty
number

Presence penalty, ranging from -2 to 2. Positive values encourage the model to talk about new topics.

Note Supported only by gpt-5.4 / gpt-5.2 / gpt-5.1; the gpt-5.6 family and gpt-5.5 do not support this parameter.

Required range: -2 <= x <= 2
Example:

0.5

logprobs
boolean
default:false

Whether to return the log probabilities of each output token.

Note Supported only by gpt-5.4 / gpt-5.2 / gpt-5.1; the gpt-5.6 family and gpt-5.5 do not support this parameter.

Example:

true

top_logprobs
integer

Number of candidate tokens returned at each position, ranging from 0 to 5; must be used together with logprobs: true.

Note Same model support as logprobs.

Required range: 0 <= x <= 5
Example:

2

n
integer
default:1

Number of candidate replies to generate, returned as multiple entries in the choices array. All tokens (including the output of every candidate) are billed.

Example:

1

seed
integer

Random seed. With the same seed and parameter combination, the model tries to return consistent results (best effort; full reproducibility is not guaranteed).

Example:

42

response_format
object

Output format control:

  • {"type": "text"}: free-form text, the default
  • {"type": "json_object"}: returns valid JSON, and requires the word json to appear in messages, otherwise 400 is returned
  • {"type": "json_schema", "json_schema": {...}}: returns structured output following the given JSON Schema; combine it with "strict": true to enforce conformance to the schema
tools
object[]

Tool list, used for function calling (client-side function calls, no per-call fee).

Server-side tools (web search, code execution, and so on) are not provided on this API; use the Responses API instead.

tool_choice

Tool choice control: "auto" (default) / "none" / "required", or an object naming a specific function, such as {"type": "function", "function": {"name": "get_weather"}}.

Available options:
none,
auto,
required
parallel_tool_calls
boolean
default:true

Whether the model may call multiple tools in parallel within one turn. Defaults to true; set it to false to force calls one at a time.

Example:

true

prompt_cache_key
string

Cache grouping key. Passing the same value for requests that share the same prefix improves the prompt cache hit rate.

Example:

"app-chat-v1"

user
string

End-user identifier, used to distinguish the source of calls.

Example:

"user-1024"

Response

Chat completion succeeded (a JSON object; when stream=true, an SSE event stream terminated by data: [DONE])

id
string

Unique identifier for this conversation

Example:

"chatcmpl-CvJ2p8mQxK7nR4wS"

object
enum<string>

Response type

Available options:
chat.completion
Example:

"chat.completion"

created
integer

Creation timestamp

Example:

1786705221

model
string

Actual model name used

Example:

"gpt-5.6-sol"

choices
object[]

List of generated results (length equals n in the request)

usage
object

Token usage statistics. Prompt caching applies automatically, and cached input tokens are billed at the lower cached rate.