Providers
Synthetic
Synthetic exposes Anthropic-compatible endpoints.
OpenClaw registers it as the synthetic provider and uses the Anthropic
Messages API.
| Property | Value |
|---|---|
| Provider | synthetic |
| Auth | SYNTHETIC_API_KEY |
| API | Anthropic Messages |
| Base URL | https://api.synthetic.new/anthropic |
Getting started
Get an API key
Obtain a SYNTHETIC_API_KEY from your Synthetic account, or let the
onboarding wizard prompt you for one.
Run onboarding
openclaw onboard --auth-choice synthetic-api-key
Verify the default model
After onboarding the default model is set to:
synthetic/hf:MiniMaxAI/MiniMax-M2.5
Config example
{
env: { SYNTHETIC_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "synthetic/hf:MiniMaxAI/MiniMax-M2.5" },
models: { "synthetic/hf:MiniMaxAI/MiniMax-M2.5": { alias: "MiniMax M2.5" } },
},
},
models: {
mode: "merge",
providers: {
synthetic: {
baseUrl: "https://api.synthetic.new/anthropic",
apiKey: "${SYNTHETIC_API_KEY}",
api: "anthropic-messages",
models: [
{
id: "hf:MiniMaxAI/MiniMax-M2.5",
name: "MiniMax M2.5",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 192000,
maxTokens: 65536,
},
],
},
},
},
}
Built-in catalog
All Synthetic models use cost 0 (input/output/cache).
| Model ID | Context window | Max tokens | Reasoning | Input |
|---|---|---|---|---|
hf:MiniMaxAI/MiniMax-M2.5 |
192,000 | 65,536 | no | text |
hf:moonshotai/Kimi-K2-Thinking |
256,000 | 8,192 | yes | text |
hf:zai-org/GLM-4.7 |
198,000 | 128,000 | no | text |
hf:deepseek-ai/DeepSeek-R1-0528 |
128,000 | 8,192 | no | text |
hf:deepseek-ai/DeepSeek-V3-0324 |
128,000 | 8,192 | no | text |
hf:deepseek-ai/DeepSeek-V3.1 |
128,000 | 8,192 | no | text |
hf:deepseek-ai/DeepSeek-V3.1-Terminus |
128,000 | 8,192 | no | text |
hf:deepseek-ai/DeepSeek-V3.2 |
159,000 | 8,192 | no | text |
hf:meta-llama/Llama-3.3-70B-Instruct |
128,000 | 8,192 | no | text |
hf:meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8 |
524,000 | 8,192 | no | text |
hf:moonshotai/Kimi-K2-Instruct-0905 |
256,000 | 8,192 | no | text |
hf:moonshotai/Kimi-K2.5 |
256,000 | 8,192 | yes | text + image |
hf:openai/gpt-oss-120b |
128,000 | 8,192 | no | text |
hf:Qwen/Qwen3-235B-A22B-Instruct-2507 |
256,000 | 8,192 | no | text |
hf:Qwen/Qwen3-Coder-480B-A35B-Instruct |
256,000 | 8,192 | no | text |
hf:Qwen/Qwen3-VL-235B-A22B-Instruct |
250,000 | 8,192 | no | text + image |
hf:zai-org/GLM-4.5 |
128,000 | 128,000 | no | text |
hf:zai-org/GLM-4.6 |
198,000 | 128,000 | no | text |
hf:zai-org/GLM-5 |
256,000 | 128,000 | yes | text + image |
hf:deepseek-ai/DeepSeek-V3 |
128,000 | 8,192 | no | text |
hf:Qwen/Qwen3-235B-A22B-Thinking-2507 |
256,000 | 8,192 | yes | text |
Model allowlist
If you enable a model allowlist (agents.defaults.models), add every
Synthetic model you plan to use. Models not in the allowlist will be hidden
from the agent.
Base URL override
If Synthetic changes its API endpoint, override the base URL in your config:
{
models: {
providers: {
synthetic: {
baseUrl: "https://new-api.synthetic.new/anthropic",
},
},
},
}
Remember that OpenClaw appends /v1 automatically.