Skip to main content
The model field on a chatbot picks which AI model handles its conversations. Each model has its own quality/speed/cost trade-off — the table below is the source of truth for what you can send.

Picking a model

  • Set model on POST /chatbots or PATCH /chatbots/{id} to one of the IDs below.
  • Leave model as null (or omit it) to use the org default. The default is gpt-5.4-mini today.
  • Pass "auto" to let us route per-message: short, simple turns go to a cheap model; long or complex turns go to a stronger one.
  • Unknown or disabled IDs fall back to the default — they won’t error.

Available models

Model IDProviderCredits / messageWhat it’s good for
gpt-5.4-nanoOpenAI1Fastest and cheapest. Good for short FAQ-style Q&A.
gpt-5.4-miniOpenAI3Default. Balanced reasoning that handles most use cases.
gemini-3.1-flash-liteGoogle1Snappy replies with broad general knowledge.
claude-haiku-4-5Anthropic5Sharper reasoning for nuanced, multi-turn conversations.
claude-sonnet-4-6Anthropic10Top-tier reasoning for complex problems.
Credit cost is per assistant message. A conversation is the sum of its messages — a 10-turn chat on a 3-credit model spends roughly 30 credits. Tooling and retrieval can adjust the total slightly; the dashboard’s usage view is authoritative.

Auto-routing

cURL
curl -X PATCH https://api.awardee.dev/v1/chatbots/8f3a9d2e-1b4c-4f5d-9e8a-7c3b2a1d0f9e \
  -H "Authorization: Bearer aw_live_…" \
  -H "Content-Type: application/json" \
  -d '{"model": "auto"}'
With auto:
  • Short, simple incoming messages → cheapest tier.
  • Long messages, lots of context, or many turns → strongest enabled tier.
  • Everything else → the default.
This keeps quality high on hard turns without paying premium rates for trivial ones.

Changing models on a live chatbot

PATCH /chatbots/{id} with a new model takes effect on the next conversation turn. Existing in-flight conversations stay on whatever model handled their last message until that turn completes.