Skip to main content
The simplest gateway call: a list of messages goes in, a single response comes out. Same shape every model supports. If you haven’t set up your SDK yet, start with Drop-in SDKs.

A minimal call

Pick a model

The model field is always provider-prefixed: openai/gpt-5.5, anthropic/claude-sonnet-4-6, gemini/gemini-2.5-pro. Browse the full set on the Models page. You can call any model from any SDK. The Anthropic SDK can talk to a Google model, the OpenAI SDK can talk to a Claude model. The provider prefix decides where the call routes. The SDK only sets the request shape. If you don’t pass model, the call falls through to your Route rule, which sets a default model per project so you can keep model names out of your code.

Common parameters

Reasoning models (the GPT-5 family, Claude with extended thinking) also accept reasoning_effort: "low" | "medium" | "high" to control how much the model “thinks” before answering.

The response shape

Response
The two things you’ll read most:
  • choices[0].message.content is the assistant’s reply
  • choices[0].finish_reason is why the model stopped (stop, length, tool_calls, content_filter)

What’s next

Conversations

Multi-turn chat with message history.

Tool calling

Let the model call your code.

Streaming

Stream tokens as they’re generated.

Structured output

Get JSON back instead of free text.