Source: https://ailoot.ai/docs/integrations/openclaw/
Canonical: https://ailoot.ai/docs/en/integrations/openclaw/
Language: en

[Terminal agents](https://ailoot.ai/docs/en/integrations/#agents) 

# OpenClaw

[Markdown](https://ailoot.ai/docs/en/integrations/openclaw/index.md)

Terminal agent · OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini

| Format | Where to set it up |
| --- | --- |
| OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini | OpenClaw configuration (~/.openclaw/openclaw.json) → models.providers.\<id\>; the default model is agents.defaults.model.primary; a safe update is openclaw config set models.providers.\<id\> '\<json\>' --strict-json --merge |

## [](https://ailoot.ai/docs/integrations/openclaw/#setup)Setup

Copy the configuration and replace `sk-...` with your key from the Ailoot Dashboard. Prefer storing the key in the environment variable `AILOOT_API_KEY`, if the application supports it.

Before starting, request GET /v1/models with your Ailoot key. Choose an exact model ID whose methods include POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, POST /v1beta/models/{model}:generateContent, then use that ID in the configuration. For agents, also check tool support and the features required by your client version.

```json
{
  "agents": {
    "defaults": {
      "model": {
        "primary": "ailoot/claude-sonnet-5-5"
      }
    }
  },
  "models": {
    "mode": "merge",
    "providers": {
      "ailoot": {
        "baseUrl": "https://api.ailoot.ai/v1",
        "apiKey": "${AILOOT_API_KEY}",
        "api": "openai-completions",
        "models": [
          {
            "id": "claude-sonnet-5-5",
            "name": "Claude Sonnet 5.5",
            "reasoning": true,
            "input": [
              "text"
            ],
            "contextWindow": 1000000,
            "maxTokens": 128000
          },
          {
            "id": "deepseek-v4-pro",
            "name": "DeepSeek V4 Pro",
            "reasoning": true,
            "input": [
              "text"
            ],
            "contextWindow": 1000000,
            "maxTokens": 131072
          }
        ]
      },
      "ailoot-claude": {
        "baseUrl": "https://api.ailoot.ai",
        "apiKey": "${AILOOT_API_KEY}",
        "api": "anthropic-messages",
        "models": [
          {
            "id": "claude-opus-5-5",
            "name": "Claude Opus 5.5",
            "reasoning": true,
            "input": [
              "text"
            ],
            "contextWindow": 1000000,
            "maxTokens": 131072
          }
        ]
      }
    }
  }
}
```

This configuration reads the key from the environment variable `AILOOT_API_KEY`. Set it before starting the application:

```bash
export AILOOT_API_KEY="sk-..."   # add to ~/.zshrc or ~/.bashrc
```

```powershell
setx AILOOT_API_KEY "sk-..."   # then restart the terminal
```

Example model: `claude-sonnet-5-5`. Choose any other model from the [catalog](https://ailoot.ai/models/en/) — check that it supports the format you need.

## [](https://ailoot.ai/docs/integrations/openclaw/#notes)Good to know

api adapters include openai-completions (the default when baseUrl is set), openai-responses (only if the server supports /v1/responses, which Ailoot does), anthropic-messages, and google-generative-ai. OpenClaw’s anthropic-messages examples use baseUrl without /v1. OpenClaw can send images when the model’s input includes "image". The Claude examples keep text only: the 2026-09-30 catalog snapshot does not declare image input for these methods. Add "image" only for a specific model whose current catalog card declares image input in the selected API format. For example, gemini-3.6-flash declares image input for OpenAI Chat in that snapshot; actual support depends on the model card and format. The main configuration path follows common OpenClaw practice; the page reviewed also mentions ~/.openclaw/agents/\<agentId\>/agent/models.json.

## [](https://ailoot.ai/docs/integrations/openclaw/#check)Test

- For the OpenAI format, the URL is `https://api.ailoot.ai/v1` (or the full path if the application asks for a full URL).
- For the Anthropic format, the URL is `https://api.ailoot.ai` without `/v1`.
- For the Gemini format, the URL is `https://api.ailoot.ai` — the API origin. The example above does not show the full setup for this format; consult the client’s documentation for the path to use in the relevant field. The API route prefix is `/v1beta`.
- Ask a short question. If you get an error, check the code and Request ID, then consult [Errors and limits](https://ailoot.ai/docs/en/errors/).
- 404 immediately after setup almost always means the URL is wrong: an extra or missing `/v1`.
- 402 — insufficient balance for the reserve. Agents reserve more than chat: [why](https://ailoot.ai/docs/en/billing/reserve/).

Application documentation: [https://docs.openclaw.ai/gateway/config-tools/custom-providers](https://docs.openclaw.ai/gateway/config-tools/custom-providers)

Still have questions? Send your Request ID and a description — we'll help you troubleshoot.[Contact support](mailto:support@ailoot.ai)

## Ailoot · The company and its project portfolio





Ailoot combines established operating experience, a large client base, stable service and ongoing KPI control.





The company and its project portfolio: millions of customers; monthly sales in the billions.





Ailoot brings that operating experience to API access for AI features in customer products, agents, applications and automations.
