Passer au contenu principal
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
  }
}

Autorisations

Authorization
string
header
requis

Les clés API OrcaRouter ressemblent à sk-orca-.... Passez-les dans l'en-tête Authorization: Bearer sk-orca-....

Corps

application/json
model
string
requis

ID du modèle. Prend en charge trois formes :

  • Préfixé par fournisseur (défaut) : openai/gpt-4o-mini, anthropic/claude-sonnet-4.6, google/gemini-2.5-flash
  • Alias simple : gpt-4o-mini (quand un alias de nom nu est disponible)
  • Routeur nommé : orcarouter/{name} (se résout en un modèle au moment de la requête ; orcarouter/auto est ensemencé à l'inscription pour chaque compte et choisit le modèle chat vivant le moins cher)
Exemples:

"gpt-4o"

"openai/gpt-4o"

"orcarouter/auto"

messages
object[]
requis
stream
boolean

Quand vrai, la réponse est streamée comme server-sent events.

stream_options
object

S'applique uniquement quand stream: true.

tools
object[]
tool_choice
Options disponibles:
auto,
none,
required
parallel_tool_calls
boolean
défaut:true
response_format
Text (default) · object
temperature
number
Plage requise: 0 <= x <= 2
top_p
number
Plage requise: 0 <= x <= 1
max_tokens
integer
Plage requise: x >= 1
max_completion_tokens
integer

Préféré à max_tokens pour les modèles de raisonnement.

n
integer
défaut:1
Plage requise: x >= 1
stop
seed
integer

Pour un échantillonnage déterministe.

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

Pour les modèles de raisonnement OpenAI (o1, o3*, o4*, gpt-5*-pro, etc.). Anthropic Claude utilise le champ thinking à la place ; Gemini utilise une configuration spécifique au fournisseur.

Options disponibles:
low,
medium,
high
web_search_options
object

Activer la recherche web sur une requête Chat Completions. L'API Responses utilise tools: [{"type": "web_search"}] à la place. Honoré par les modèles search-preview d'OpenAI, les modèles OpenAI qui acceptent l'outil moderne web_search, et les modèles Anthropic (traduits vers l'outil serveur natif web_search d'Anthropic).

Charge utile brute de forme libre transmise à l'outil de recherche web de l'amont quand web_search_options n'est pas assez expressif. La plupart des utilisateurs devraient préférer web_search_options.

extra_body
object

Extensions de requête spécifiques à OrcaRouter. Placez-les sous la clé extra_body de niveau supérieur de votre requête chat completion.

Réponse

Completion réussie. Les réponses streamées utilisent SSE (text/event-stream).

id
string
object
enum<string>
Options disponibles:
chat.completion
created
integer
model
string
choices
object[]
usage
object