Documentation
Quickstart, brushstroke quick
BrushLLM is an OpenAI-compatible gateway. If you’ve ever called the OpenAI API, you already know how to call BrushLLM — here’s the thirty-second version.
- 1
Get an API key
Create an accountor sign in to the console, then create a key. Keys look like
brsh-…— treat them like passwords and set a spend quota if you hand them to tools. - 2
Set the base URL and key
Point any OpenAI SDK at our endpoint:
base_url
https://api.brushllm.com/v1 - 3
Call any model by id
Pass one of the ids from the table below as
model. That’s it — you’re calling models from China’s top labs.
Your first request
The same request in four languages — including streaming. Copy, paste, run.
curl https://api.brushllm.com/v1/chat/completions \
-H "Authorization: Bearer $BRUSH_LLM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-chat",
"messages": [
{"role": "user", "content": "Say hello in three languages."}
]
}'
Model ids
Use these exact ids (case-sensitive). See themodels page for descriptions and capabilities.
| Model id | Display name | Context |
|---|---|---|
deepseek-chat | DeepSeek-V3.2 | 128K |
deepseek-reasoner | DeepSeek-R1 | 128K |
qwen3-max | Qwen3-Max | 256K |
qwen3-235b-a22b | Qwen3 235B A22B | 256K |
qwen3-32b | Qwen3 32B | 128K |
qwen3-coder-plus | Qwen3 Coder Plus | 256K |
qwen-vl-max | Qwen VL Max | 128K |
text-embedding-v4 | Text Embedding v4 | 8K |
glm-4.6 | GLM-4.6 | 200K |
glm-4.5-air | GLM-4.5 Air | 128K |
glm-4.5-flash | GLM-4.5 Flash | 128K |
kimi-k2-0905 | Kimi K2 (0905) | 256K |
kimi-k2-thinking | Kimi K2 Thinking | 256K |
doubao-seed-1-6 | Doubao Seed 1.6 | 256K |
doubao-seed-1-6-flash | Doubao Seed 1.6 Flash | 256K |
doubao-seed-1-6-vision | Doubao Seed 1.6 Vision | 128K |
MiniMax-M2 | MiniMax-M2 | 200K |
ernie-4.5-turbo | ERNIE 4.5 Turbo | 128K |
ernie-4.5-x1 | ERNIE 4.5 X1 | 128K |
hunyuan-turbos | Hunyuan TurboS | 256K |
hunyuan-t1 | Hunyuan T1 | 32K |
spark-x1 | Spark X1 | 32K |
spark-lite | Spark Lite | 32K |
step-3 | Step-3 | 64K |
Errors
| Status | Meaning | What to do |
|---|---|---|
| 401 | Invalid or missing API key | Check that your key starts with “brsh-” and hasn’t been revoked in the console. |
| 404 | Unknown model id | Use an id exactly as listed in the table above — they are case-sensitive. |
| 429 | Rate limit or quota exceeded | Wait and retry with backoff, or raise the quota for this key in the console. |
| 402 | Insufficient balance | Top up your account in the console and retry the request. |
| 5xx | Upstream provider error | Retry after a few seconds; if it persists, check the News page for incidents. |
Stuck on something?
Check the console for keys, quotas and billing, or email us athello@brushllm.com.
Open the console