Quickstart

You don’t need to understand APIs, requests or configs. Every AI app — a coding agent, a chat app, an IDE plugin — asks for the same three things: an address, a key, and a model name. That’s it.

Open your app’s settings, find these fields (names vary a little), and paste:

Your app asks for…Paste this
Base URL (also called API URL, Endpoint, Server)https://router.mingles.ai/v1
API key (also called Token, Secret)Create yours here — takes 30 seconds, no card
Model (also called Model ID, Custom model)moonshotai/Kimi-K2.6 — or MiniMaxAI/MiniMax-M2.7 if you prefer MiniMax
Display name / Provider name (only some apps ask)anything you like, e.g. Mingles Router

Hit Save. Done — your app is now talking to us.

A couple of fields missing? Normal. If there’s no Model field, the app picks the model from a list after you save. If there are extra fields, leave them on their defaults.

Still didn’t work? Open the Agents Hub — click-by-click pages for popular apps (OpenClaw, OpenHands, Kilo Code…), and a config generator for the rest.


For developers

Mingles Router is a drop-in replacement for api.openai.com/v1. Use the official OpenAI SDK — just change the base_url.

First request (curl)

curl https://router.mingles.ai/v1/chat/completions \
  -H "Authorization: Bearer $ROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "moonshotai/Kimi-K2.6",
    "messages": [{"role":"user","content":"Hello!"}]
  }'

First request (Python)

pip install openai
from openai import OpenAI

client = OpenAI(
    base_url="https://router.mingles.ai/v1",
    api_key="sk-your-key",
)

resp = client.chat.completions.create(
    model="moonshotai/Kimi-K2.6",
    messages=[{"role": "user", "content": "Hello!"}],
)
print(resp.choices[0].message.content)

Streaming

stream = client.chat.completions.create(
    model="moonshotai/Kimi-K2.6",
    messages=[{"role": "user", "content": "Stream me a poem."}],
    stream=True,
)
for chunk in stream:
    delta = chunk.choices[0].delta.content
    if delta:
        print(delta, end="", flush=True)

Tool-calling

Define your tools in standard OpenAI format — the gateway handles Hermes-style parsing for models that emit <tool_call> blocks.

tools = [{
    "type": "function",
    "function": {
        "name": "get_weather",
        "parameters": {
            "type": "object",
            "properties": {"city": {"type": "string"}},
            "required": ["city"],
        },
    },
}]

resp = client.chat.completions.create(
    model="moonshotai/Kimi-K2.6",
    messages=[{"role": "user", "content": "Weather in Tokyo?"}],
    tools=tools,
)
print(resp.choices[0].message.tool_calls)

See Tools & agents for the full guide, and Agents Hub for runtime-specific configs.