Docs

No docs found

Try another keyword.

KiwAssistant API Integration

One API for all your AI tools. KiwAssistant ships a developer endpoint that is compatible with both OpenAI and Anthropic, so it works out of the box with OpenCode, Claude Code, Cline, Open WebUI, Continue, aider, and other clients — no custom plugins required. Set the base URL, paste an API key, and the DX-Mark-0.2 model is ready to go.

Note: The DX-Mark-0.2 model is an official proprietary AI model built by KiwStudio, supporting multimodal inputs (text and image / Vision) by default both in the KiwAssistant web chat and via API (OpenAI image_url & Anthropic image format).

Connection Info

Parameter Value
Base URL https://kiwstudio.com/api/v1
Authentication Authorization: Bearer kiw_live_...
Model kws/dx-mark-0.2
Format OpenAI (/chat/completions) + Anthropic (/messages)
Quota 500 responses per 5 hours, API-only for VIP accounts

Step 1 — Create an API Key

  1. Open the KiwAssistant page and switch to the API Key tab in the side panel.
  2. Give the key a name (for example opencode-laptop) and click Create.
  3. Copy the key — you can reveal it again anytime via the Reveal button in the key list.
  4. Store it somewhere safe. You can revoke a key at any time and it stops working immediately.

Step 2 — Test the Connection

curl https://kiwstudio.com/api/v1/chat/completions \
  -H "Authorization: Bearer kiw_live_xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"model":"kws/dx-mark-0.2","messages":[{"role":"user","content":"Hello, who are you?"}]}'

Step 3 — Connect Your Favorite Tool

OpenCode

Add a custom provider in opencode.json (project root or ~/.config/opencode/opencode.json):

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "kiwstudio": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "KiwStudio",
      "options": {
        "baseURL": "https://kiwstudio.com/api/v1",
        "apiKey": "kiw_live_xxxxxxxx"
      },
      "models": {
        "kws/dx-mark-0.2": {
          "name": "DX-Mark-0.2"
        }
      }
    }
  },
  "model": "kws/dx-mark-0.2"
}

Claude Code

Claude Code uses the Anthropic format — set the environment variables and run claude as usual:

export ANTHROPIC_BASE_URL="https://kiwstudio.com/api/v1"
export ANTHROPIC_AUTH_TOKEN="kiw_live_xxxxxxxx"
export ANTHROPIC_MODEL="kws/dx-mark-0.2"

Cline

  1. Open Cline SettingsAPI Provider and choose OpenAI Compatible.
  2. Set Base URL to https://kiwstudio.com/api/v1.
  3. Paste the API key and set Model ID to kws/dx-mark-0.2.

Open WebUI

Set these environment variables when running Open WebUI:

OPENAI_API_BASE_URL="https://kiwstudio.com/api/v1"
OPENAI_API_KEY="kiw_live_xxxxxxxx"

Continue

Add this model to your Continue config.json:

{
  "models": [
    {
      "title": "DX-Mark-0.2",
      "provider": "openai",
      "model": "kws/dx-mark-0.2",
      "apiBase": "https://kiwstudio.com/api/v1",
      "apiKey": "kiw_live_xxxxxxxx"
    }
  ]
}

aider

aider --openai-api-base https://kiwstudio.com/api/v1 \
      --openai-api-key kiw_live_xxxxxxxx \
      --model kws/dx-mark-0.2

Endpoint Reference

  • GET /api/v1/models — lists available models (currently one: kws/dx-mark-0.2).
  • POST /api/v1/chat/completions — OpenAI-style chat completions (standard path: OpenCode, Cline, Open WebUI, Continue, aider, etc.), streaming (SSE) and non-streaming; /assistant/chat is also accepted as an alias.
  • POST /api/v1/messages — Anthropic-style chat (Claude Code, Cursor, and similar), streaming and non-streaming.

Optional Parameter — reasoning_effort

reasoning_effort controls how deeply the model thinks before answering. Accepted values: none, low, medium, high, or auto.

  • Default: none — fastest responses, used for regular chat.
  • low/medium/high — higher values mean more thorough (and slower) answers.
  • auto — let the model router decide on its own.
{
  "model": "kws/dx-mark-0.2",
  "reasoning_effort": "medium",
  "messages": [{"role": "user", "content": "Optimize this function"}]
}

The KiwAssistant web chat always uses none; this setting only takes effect when you call the API directly.

Quota & Limits

  • The current response quota is 500 responses per 5 hours (exclusive to VIP API users).
  • The weekly cap per account is 1,000 responses per week (rolling 7-day period).
  • Every response includes the X-Kiw-Response-Limit, X-Kiw-Response-Remaining, X-Kiw-Response-Reset, plus X-Kiw-Weekly-Limit, X-Kiw-Weekly-Remaining, and X-Kiw-Weekly-Reset headers — use them to track remaining quota on the client side.
  • The last message in messages must use the user role.

Error Codes

Status Meaning
401 API key invalid, expired, or revoked
403 VIP inactive, account blocked, or API disabled
415 Content-Type is not application/json
422 Invalid payload — details in error.param
429 Response quota or weekly cap reached — read the Retry-After header
502 Model temporarily unavailable — try again shortly

Security

  • Keys are encrypted on the server — the account owner can reveal them again anytime from the KiwAssistant page; admins never see the raw key.
  • Never commit keys to public repositories; use environment variables or a secret manager.
  • Create a separate key per device so you can revoke a single leak quickly.