Zum Hauptinhalt springen
POST
/
chat
/
completions
curl --request POST \
  --url https://api.orcarouter.ai/v1/chat/completions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "openai/gpt-4o-mini",
  "messages": [
    {
      "role": "user",
      "content": "Say hi in one word."
    }
  ],
  "max_tokens": 10
}
'
{
  "id": "<string>",
  "created": 123,
  "model": "<string>",
  "choices": [
    {
      "index": 123,
      "message": {
        "content": "<string>",
        "name": "<string>",
        "tool_calls": [
          {
            "id": "<string>",
            "function": {
              "name": "<string>",
              "arguments": "<string>"
            }
          }
        ],
        "tool_call_id": "<string>"
      }
    }
  ],
  "usage": {
    "prompt_tokens": 123,
    "completion_tokens": 123,
    "total_tokens": 123
  }
}

Autorisierungen

Authorization
string
header
erforderlich

OrcaRouter-API-Schlüssel sehen aus wie sk-orca-.... Übergib sie im Authorization: Bearer sk-orca-...-Header.

Body

application/json
model
string
erforderlich

Modell-ID. Unterstützt drei Formen:

  • Anbieter-präfixiert (Standard): openai/gpt-4o-mini, anthropic/claude-sonnet-4.6, google/gemini-2.5-flash
  • Einfacher Alias: gpt-4o-mini (wenn ein reiner Namen-Alias verfügbar ist)
  • Benannter Router: orcarouter/{name} (löst zur Anforderungszeit auf ein Modell auf; orcarouter/auto wird bei der Registrierung für jedes Konto seeded und wählt das günstigste Live-Chat-Modell)
Beispiele:

"gpt-4o"

"openai/gpt-4o"

"orcarouter/auto"

messages
object[]
erforderlich
stream
boolean

Wenn true, wird die Antwort als Server-Sent Events gestreamt.

stream_options
object

Gilt nur, wenn stream: true.

tools
object[]
tool_choice
Verfügbare Optionen:
auto,
none,
required
parallel_tool_calls
boolean
Standard:true
response_format
Text (default) · object
temperature
number
Erforderlicher Bereich: 0 <= x <= 2
top_p
number
Erforderlicher Bereich: 0 <= x <= 1
max_tokens
integer
Erforderlicher Bereich: x >= 1
max_completion_tokens
integer

Bevorzugt gegenüber max_tokens für Reasoning-Modelle.

n
integer
Standard:1
Erforderlicher Bereich: x >= 1
stop
seed
integer

Für deterministisches Sampling.

logprobs
boolean
top_logprobs
integer
Erforderlicher Bereich: 0 <= x <= 20
presence_penalty
number
Erforderlicher Bereich: -2 <= x <= 2
frequency_penalty
number
Erforderlicher Bereich: -2 <= x <= 2
logit_bias
object
user
string
reasoning_effort
enum<string>

Für OpenAI-Reasoning-Modelle (o1, o3*, o4*, gpt-5*-pro, usw.). Anthropic Claude verwendet stattdessen das thinking-Feld; Gemini verwendet anbieterspezifische Konfiguration.

Verfügbare Optionen:
low,
medium,
high
web_search_options
object

Aktiviere Websuche auf einer Chat-Completions-Anfrage. Die Responses-API verwendet stattdessen tools: [{"type": "web_search"}]. Wird honoriert von OpenAI-Search-Preview-Modellen, OpenAI-Modellen, die das moderne web_search-Tool akzeptieren, und Anthropic-Modellen (übersetzt in Anthropics natives web_search-Server-Tool).

Freiform-Rohnutzlast, die an das Websuch-Tool des Upstreams weitergeleitet wird, wenn web_search_options nicht ausdrucksstark genug ist. Die meisten Benutzer sollten web_search_options bevorzugen.

extra_body
object

OrcaRouter-spezifische Anfrageerweiterungen. Platziere diese unter dem extra_body-Top-Level-Schlüssel deiner Chat-Completion-Anfrage.

Antwort

Erfolgreiche Completion. Streaming-Antworten verwenden SSE (text/event-stream).

id
string
object
enum<string>
Verfügbare Optionen:
chat.completion
created
integer
model
string
choices
object[]
usage
object