Create chat completions using OpenAI-compatible format with optional separate reasoning streams.
Create conversational AI responses using our chat completions endpoint.Documentation Index
Fetch the complete documentation index at: https://docs.electronhub.ai/llms.txt
Use this file to discover all available pages before exploring further.
POST /chat/completions
Generate responses for conversational AI applications.
gpt-4o, gpt-5.1, claude-sonnet-4-6, deepseek-r1). Append :reasoning-exclude to disable reasoning output for a single request.none, minimal, low, medium, high, xhigh. Silently ignored for models that don’t support reasoning_effort.reasoning.effort — same enum as reasoning_effort.reasoning.exclude (boolean) — strip reasoning from the response entirely.reasoning.delta_field — "reasoning" or "reasoning_content"; overrides the streaming/non-streaming field name regardless of which endpoint variant was hit.reasoning.delta_field. Accepts "reasoning" or "reasoning_content".true to force the legacy reasoning_content field, equivalent to reasoning.delta_field = "reasoning_content".| Base path | Behavior | Use when |
|---|---|---|
POST /v1/chat/completions | Reasoning and answer are returned as separate fields (reasoning + content). Default. | Most OpenAI-compatible clients. |
POST /v1legacy/chat/completions | Same as /v1/, but reasoning uses the legacy field name reasoning_content. | Clients that only parse reasoning_content (e.g. older DeepSeek SDKs). |
POST /v1thinking/chat/completions | Reasoning and answer are merged into the normal content stream, wrapped in <think>...</think> tags. | Clients that ignore reasoning fields but should still display thoughts inline. |
reasoning.delta_field, reasoning_delta_field, reasoning_content_compat) take precedence over the endpoint default. If a model does not emit reasoning, these fields are simply absent from the response.
/v1legacy/chat/completions the same deltas use delta.reasoning_content instead of delta.reasoning.
Against /v1thinking/chat/completions everything appears in delta.content:
reasoning becomes reasoning_content on /v1legacy/. On /v1thinking/, the reasoning stays embedded inside content ("<think>...</think>The answer...") and no separate field is emitted.
{ "reasoning": { "exclude": true } }"model": "deepseek-r1:reasoning-exclude"{ "reasoning_effort": "none" } (only honored on OpenAI-shaped models — safely ignored elsewhere for API parity).reasoning field nor <think> tags appear in the response, regardless of which endpoint variant was hit.
Enter your API key (starts with 'ek-')
Model to use for completion
"gpt-4o"
List of messages
Enable streaming
Maximum tokens to generate
Sampling temperature
0 <= x <= 2Nucleus sampling
0 <= x <= 1Top-k sampling
-2 <= x <= 2-2 <= x <= 2List of tools
none, auto Enable web search
Reasoning effort level. Silently ignored for models that do not support reasoning_effort, so clients can send a single shared request across providers.
none, minimal, low, medium, high, xhigh Reasoning configuration. Per-request override for reasoning output behavior.
Shorthand for reasoning.delta_field.
reasoning, reasoning_content Shorthand: set to true to force the legacy reasoning_content field, equivalent to reasoning.delta_field = "reasoning_content".