A minimal call
Pick a model
Themodel 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
choices[0].message.contentis the assistant’s replychoices[0].finish_reasonis 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.