Quickstarts

Point the agent at one OpenAI-compatible URL.

Every lane starts with the same facts: base URL https://llm.chutes.ai/v1, Bearer auth, and model IDs from the live catalog. The current server render saw 13 models, checked Jun 25, 2026.
Connect draftPython cookbookOpenAI-compatible agentsMCP portability

Quick config

The minimum to point this client at Chutes. Every value below is rendered from the live catalog or is a stable endpoint fact — copy it and go.

Zero-setup smoke test
bash
export CHUTES_API_KEY=cpk_...
export CHUTES_MODEL="Qwen/Qwen3-32B-TEE"

curl https://llm.chutes.ai/v1/chat/completions \
  -H "Authorization: Bearer $CHUTES_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"'"$CHUTES_MODEL"'","messages":[{"role":"user","content":"Say hello in one sentence."}]}'
Base URL
https://llm.chutes.ai/v1
Auth
Authorization: Bearer cpk_...
Smoke-test model
Qwen/Qwen3-32B-TEE
Context
40K

60-second setup

01

Read the live catalog

Use GET /v1/models before choosing model IDs, prices, features, context, or TEE claims.
02

Use Bearer auth

Keep CHUTES_API_KEY outside checked-in config and send it as Authorization: Bearer.
03

Route deliberately

Use concrete model IDs first. Saved default aliases need a dashboard Model Routing pool.

Quickstart lanes

Pick the surface your agent already uses. Each tab keeps the prompt/config boundary visible so setup stays copy-pasteable.

Claude plugin

Claude command palette
text
/plugin marketplace add Veightor/chutes-agent-toolkit
/plugin install chutes-ai@chutes-agent-toolkit
Say this
Set me up with a Chutes account and API key
Claude uses
The chutes-ai skill stores the cpk_ key outside the transcript.

Troubleshooting

Symptom
The model name works in the docs but fails later
Likely cause
The catalog can change.
Fix
Refresh GET /v1/models and treat any static ID as an example.
Symptom
Requests receive anonymous 429s
Likely cause
The client used X-API-Key or omitted Bearer auth.
Fix
Set Authorization: Bearer $CHUTES_API_KEY.
Symptom
default:latency fails
Likely cause
No saved default pool exists for the account.
Fix
Configure Model Routing once in the dashboard or pass an inline pool.