Language models

Text generation

The largest part of the catalog. Everything here answers in text and can be reached through either request format.

Endpoints

/v1/chat/completions · /v1/messages

Billed in

Input + output tokens

Streaming

Server-sent events

What they do#

Common capabilities
FieldTypeDescription
Chatall modelsMulti-turn conversation. The API is stateless — resend the history each turn.
Tool callingmost modelsThe model asks your code to run a function. See Tool calling.
Reasoningreasoning modelsExtra tokens spent thinking before answering, at a depth you control. See Reasoning.
Vision inputvision modelsImages alongside text. See Vision models.
JSON outputmost modelsConstrained to valid JSON. See Structured output.

Picking one#

Model quality is not a single number, and the differences that matter are task-specific. Two questions get you most of the way:

Does the task need reasoning?

Multi-step problems, hard debugging and planning benefit. Summarising, classifying, rewriting and extracting do not — turning reasoning on there buys latency and cost with no gain. Both dialects let you set the depth per request, so this is a per-call decision rather than a per-model one.

How much context do you actually send?

Large windows are expensive per token and slower to first token, because the whole prompt is processed before a single word comes back. If your typical request is a few thousand tokens, a large-window model is paying for room you never use.

Measure, do not guess

Run your own ten hardest cases against two candidates. That takes an afternoon and settles the question for your workload, which no published benchmark can.

Calling one#

curl https://api.xkiro.com/v1/chat/completions \
  -H "Authorization: Bearer $XKIRO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-5.6-sol",
    "messages": [{ "role": "user", "content": "Explain HTTP caching." }]
  }'

The full list your account can call is at GET /v1/models — see List models. IDs are always vendor/model.

What drives the bill#

  • Output costs more than input, usually several times. Shortening answers saves more than shortening prompts.
  • Reasoning tokens are output tokens. High effort can multiply the cost of the same request.
  • History is resent every turn. A long conversation gets more expensive with each message, not just longer.
  • Tool definitions ride along on every call in a tool-calling loop.

See Pricing & billing for how each of these is metered.