Dokumentation
Schnellstart
JoinGonka Gateway unterstützt OpenAI- und Anthropic-APIs für den Zugriff auf Gonka-Modelle. Ersetzen Sie base_url in Ihrem Client – und alles funktioniert.
Basis-URL: https://gate.joingonka.ai/v1
Modell: MiniMaxAI/MiniMax-M2.7
Autorisierung: Bearer YOUR_API_KEY
Python (OpenAI SDK)
from openai import OpenAI
client = OpenAI(
base_url="https://gate.joingonka.ai/v1",
api_key="YOUR_API_KEY",
)
response = client.chat.completions.create(
model="MiniMaxAI/MiniMax-M2.7",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "What is Gonka?"},
],
temperature=0.7,
max_tokens=1024,
)
print(response.choices[0].message.content)TypeScript (OpenAI SDK)
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://gate.joingonka.ai/v1",
apiKey: "YOUR_API_KEY",
});
const response = await client.chat.completions.create({
model: "MiniMaxAI/MiniMax-M2.7",
messages: [
{ role: "system", content: "You are a helpful assistant." },
{ role: "user", content: "What is Gonka?" },
],
temperature: 0.7,
max_tokens: 1024,
});
console.log(response.choices[0].message.content);cURL
curl https://gate.joingonka.ai/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMaxAI/MiniMax-M2.7",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "What is Gonka?"}
],
"temperature": 0.7,
"max_tokens": 1024
}'Anthropic API (Claude Code)
JoinGonka Gateway unterstützt nativ die Anthropic Messages API (/v1/messages). Claude Code, Anthropic SDK und alle Tools, die das Anthropic-Format verwenden, funktionieren direkt – ohne Proxy.
Claude Code
Recommended — set it up with one command (also configures OpenClaw and Cline):
npx @joingonka/setup
Or configure it manually:
export ANTHROPIC_BASE_URL=https://gate.joingonka.ai export ANTHROPIC_API_KEY=YOUR_API_KEY claude
Python (Anthropic SDK)
import anthropic
client = anthropic.Anthropic(
base_url="https://gate.joingonka.ai",
api_key="YOUR_API_KEY",
)
message = client.messages.create(
model="MiniMaxAI/MiniMax-M2.7",
max_tokens=1024,
messages=[
{"role": "user", "content": "What is Gonka?"},
],
)
print(message.content[0].text)cURL (Anthropic format)
curl https://gate.joingonka.ai/v1/messages \
-H "x-api-key: YOUR_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMaxAI/MiniMax-M2.7",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "What is Gonka?"}
]
}'Streaming (Python)
import anthropic
client = anthropic.Anthropic(
base_url="https://gate.joingonka.ai",
api_key="YOUR_API_KEY",
)
with client.messages.stream(
model="MiniMaxAI/MiniMax-M2.7",
max_tokens=1024,
messages=[{"role": "user", "content": "Explain Gonka"}],
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)Tool Use (cURL)
curl https://gate.joingonka.ai/v1/messages \
-H "x-api-key: YOUR_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMaxAI/MiniMax-M2.7",
"max_tokens": 1024,
"tools": [{
"name": "get_weather",
"description": "Get current weather",
"input_schema": {
"type": "object",
"properties": {"city": {"type": "string"}},
"required": ["city"]
}
}],
"messages": [{"role": "user", "content": "Weather in Moscow?"}]
}'Beide Formate (OpenAI und Anthropic) verwenden denselben API-Schlüssel und dasselbe Guthaben.
API-Endpunkte
Inference
/v1/chat/completionsAntwortgenerierung – OpenAI-Format (Streaming wird unterstützt)
{
"id": "chatcmpl-abc123...",
"object": "chat.completion",
"model": "MiniMaxAI/MiniMax-M2.7",
"choices": [{
"index": 0,
"message": {
"role": "assistant",
"content": "Hello! How can I help you?",
"tool_calls": []
},
"finish_reason": "stop"
}],
"usage": {
"prompt_tokens": 12,
"completion_tokens": 8,
"total_tokens": 20
},
"x_joingonka": {
"cost_ngonka": "24",
"balance_ngonka": "11999976"
}
}/v1/messagesAntwortgenerierung – Anthropic-Format (Streaming, tool_use)
{
"id": "msg_abc123...",
"type": "message",
"role": "assistant",
"content": [{"type": "text", "text": "Hello!"}],
"model": "MiniMaxAI/MiniMax-M2.7",
"stop_reason": "end_turn",
"usage": {"input_tokens": 12, "output_tokens": 8}
}/v1/modelsListe der verfügbaren Modelle
{
"object": "list",
"data": [{
"id": "MiniMaxAI/MiniMax-M2.7",
"object": "model",
"owned_by": "gonka-network",
"context_length": 200000,
"pricing": {
"prompt": "0.00000007",
"completion": "0.0000001"
},
"architecture": {
"modality": "text->text"
},
"top_provider": {
"context_length": 200000,
"max_completion_tokens": 8192,
"is_moderated": false
},
"supported_parameters": [
"temperature", "top_p", "tools",
"tool_choice", "max_tokens", "stop"
],
"x_gonka": {
"v_ram": 320,
"context_window": 200000,
"max_output": 8192,
"actual_cost_ngonka": 1.2
}
}]
}Plugins
Plugins erweitern die API-Funktionalität. Übergeben Sie ein Plugin-Array in der Anfrage, um sie zu aktivieren.
/v1/pluginsListe der verfügbaren Plugins
{
"plugins": [
{"id": "web", "description": "Web search — inject fresh results with citations"},
{"id": "response-healing", "description": "Auto-fix truncated JSON"},
{"id": "privacy-sanitization", "description": "Mask sensitive data"},
{"id": "file-parser", "description": "Extract text from PDF"}
]
}Verwendung in der Anfrage
{
"model": "MiniMaxAI/MiniMax-M2.7",
"messages": [{"role": "user", "content": "..."}],
"plugins": ["response-healing", "privacy-sanitization"]
}web
Websuche direkt innerhalb der Gonka-Modelle. Die Modelle selbst (Kimi, MiniMax, DeepSeek) verfügen über keine Suchfunktion; das gateway fügt frische Ergebnisse aus dem Internet in den Kontext ein und gibt Quellenverweise zurück. Funktioniert im stream- und non-stream-Modus. Das Backend ist self-hosted: Anfragen werden nicht über Ihr Konto an Such-APIs von Drittanbietern gesendet.
Methode 1 – das Web-Objekt im Plugins-Array (Ergebnisinjektion mit Optionen):
{
"model": "MiniMaxAI/MiniMax-M2.7",
"messages": [{"role": "user", "content": "What's new in the Gonka network?"}],
"plugins": [{
"id": "web",
"max_results": 5,
"search_prompt": "Relevant web search results:"
}]
}Methode 2 – Agentenmodus (mode: "agent"): Das Modell ruft web_search nur auf, wenn eine Suche erforderlich ist:
{
"model": "MiniMaxAI/MiniMax-M2.7",
"messages": [{"role": "user", "content": "What's new in the Gonka network?"}],
"plugins": [{ "id": "web", "mode": "agent", "max_searches": 3 }]
}Optionen: max_results — Anzahl der Ergebnisse (Standard 5, Limit 10); search_prompt — Ihr eigener Grounding-Prompt vor den Suchergebnissen.
Die Antwort wird durch annotations[].url_citation (url, title) ergänzt — OpenRouter-Standard:
{
"choices": [{
"message": {
"role": "assistant",
"content": "...",
"annotations": [{
"type": "url_citation",
"url_citation": {
"url": "https://gonka.ai/...",
"title": "Gonka Network"
}
}]
}
}]
}Tarifierung: Modus plugins:[{ "id": "web" }] — nur für Token (die beigemischten Ergebnisse zählen als normale prompt-Token). Agenten-Modus (mode: "agent") — Token aller Zyklusschritte plus ein Aufschlag von 1000 nGNK pro web_search-Aufruf (≈ $0.0001 pro 1000 Suchen zum Kurs von ~$0.15 pro GNK).
Inkompatibel mit privacy-sanitization: wenn beides kombiniert wird, wird 400 zurückgegeben.
response-healing
Automatische Reparatur von abgeschnittenen JSON/strukturierten Ausgaben. Funktioniert nur für Nicht-Streaming-Anfragen mit JSON-Inhalt.
privacy-sanitization
Maskierung sensibler Daten (API-Schlüssel, E-Mail-Adressen, IP-Adressen, JWT, Kartennummern) in Nachrichten vor dem Senden an das Modell.
Modi: redact (Ersetzung durch [REDACTED]) oder tokenize (Ersetzung durch [TOKEN_001]). Übergeben Sie privacy_mode im Body.
file-parser
Textextraktion aus PDF-Dokumenten. Unterstützung von data:application/pdf;base64,... und raw base64.
Management Keys
Hierarchische API-Schlüssel für SaaS-Integrationen. Ein Management Key (gm-) erstellt Child Keys (gc-) mit Limits und TTL.
/api/management/keysErstellen Sie einen Management Key (Präfix gm-). Wird nur zur Verwaltung von Child Keys verwendet.
/api/management/keys/:id/childrenErstellen Sie einen Child Key (Präfix gc-) mit optionalen Limits. Die Abrechnung erfolgt über das Guthaben des Inhabers des Management Keys.
{
"name": "Client A",
"limit_daily_ngonka": "1000000000",
"limit_monthly_ngonka": "10000000000",
"expires_at": "2026-04-01T00:00:00Z",
"rate_limit_rpm": 30
}/api/management/keys/:id/childrenListe der Child Keys mit Nutzungsstatistiken.
/api/management/keys/:id/children/:childIdAktualisieren Sie Limits, RPM oder den Status eines Child Keys.
/api/management/keys/:id/children/:childIdDeaktivieren Sie einen Child Key (Soft Delete).
Account
/api/balanceAktuelles Guthaben
{
"balance_ngonka": "11999976",
"balance_usd": 0.008,
"cost_per_token_ngonka": 1,
"tokens_remaining": 11999976
}/api/keysListe der API-Schlüssel
/api/keysAPI-Schlüssel erstellen
/api/keys/:idAPI-Schlüssel löschen
Billing
/api/usageNutzungsstatistik
Query: period=day|week|month&tz=-180
{
"period": "month",
"usage": [{
"date": "2026-03-20",
"requests": 42,
"tokens": 18500,
"costNgonka": "22200"
}]
}/api/depositsEinzahlungsverlauf
Query: limit=50&offset=0&from=2026-03-01&to=2026-03-21
{
"deposits": [{
"id": "abc-123",
"type": "DEPOSIT_GNK",
"amountNgonka": "10000000",
"description": "GNK deposit via memo",
"createdAt": "2026-03-20T12:00:00Z"
}],
"total": 3
}/api/transactionsTransaktionsverlauf
Query: limit=50&offset=0&type=INFERENCE&from=2026-03-01&to=2026-03-21
{
"transactions": [{
"id": "def-456",
"type": "INFERENCE",
"amountNgonka": "-1200",
"feeNgonka": "120",
"description": null,
"createdAt": "2026-03-20T14:30:00Z"
}],
"total": 128
}/api/pricingTarife und Gebühren (öffentlich, ohne Autorisierung)
{
"deposit_usdt_fee_percent": 5,
"deposit_gnk_fee_percent": 0,
"usage_fee_percent": 10,
"withdrawal_fee_percent": 5,
"gnk_usd_price": 0.3465
}Streaming & Errors
Wenn stream: true, wird die Antwort in Chunks über SSE (Server-Sent Events) geliefert.
OpenAI (stream: true)
data: {"choices":[{"delta":{"content":"Hello"}}]}
data: {"choices":[{"delta":{"content":"!"}}]}
data: {"choices":[],"x_joingonka":{"cost_ngonka":"24"}}
data: [DONE]Anthropic (stream: true)
event: message_start
data: {"type":"message_start","message":{...}}
event: content_block_delta
data: {"type":"content_block_delta","delta":{"type":"text_delta","text":"Hello"}}
event: message_stop
data: {"type":"message_stop"}Fehler
// 400 — неверный запрос
{"error": {"message": "...", "type": "invalid_request_error"}}
// 401 — не авторизован
{"error": {"message": "...", "type": "authentication_error"}}
// 402 — недостаточный баланс
{"error": {"message": "...", "type": "insufficient_funds", "balance_ngonka": "0"}}
// 429 — rate limit
{"error": {"message": "...", "type": "rate_limit_error"}}
// 502 — ошибка сети Gonka
{"error": {"message": "...", "type": "api_error"}}Modelle
Das Gonka-Netzwerk stellt mehrere Modelle über eine einzige API bereit – eine aktuelle Liste kann jederzeit über eine GET /v1/models-Anfrage abgerufen werden. Um ein Modell auszuwählen, übergeben Sie dessen ID im Feld model des Request-Bodys.
| Modell | Anbieter | Kontext | Maximale Ausgabe | VRAM | Status |
|---|---|---|---|---|---|
| MiniMax M2.7 | MiniMax | 195K | 8K | 320 GB | Verfügbar |
| Kimi K2.6 | Moonshot AI | 195K | 8K | 720 GB | Verfügbar |
| DeepSeek V4 Flash | DeepSeek | 371K | 32K | 280 GB | Verfügbar |
Standardmäßig (wenn model nicht angegeben ist) wird das Flaggschiff-Modell des Netzwerks verwendet. Die aktuelle Liste mit Metadaten – GET /v1/models.
Die aktuelle Liste der Modelle mit allen Metadaten – GET /v1/models. Vision und multimodale Eingabe (image_url) werden vom Upstream-Gonka-Netzwerk noch nicht unterstützt.
Tarife und Gebühren
Volle Transparenz: Unten finden Sie alle Gateway-Gebühren. Aktuelle Werte werden live aus der API geladen — der öffentliche Endpoint GET /api/pricing ist ohne Autorisierung verfügbar.
| Operation | Gebühr | Hinweis |
|---|---|---|
| Aufschlag für Inference | 10% | Plattform-Aufschlag über dem Gonka-Netzwerkpreis — die Haupteinnahmequelle des Gateways. Wird von jeder Anfrage zusammen mit den Kosten für die Token abgezogen. |
| Einzahlung über USDT | 5% | Wird vom Zahlungsanbieter bei Zahlung mit Krypto (USDT) einbehalten. |
| Einzahlung über GNK | kostenlos | Direkte GNK-on-chain-Überweisung wird ohne Gateway-Gebühr gutgeschrieben. |
| Auszahlung | 5% | Wird bei Auszahlung von GNK an eine externe Adresse einbehalten. Die Auszahlung wird manuell innerhalb von 24–48 Stunden bearbeitet. |
| Aktueller GNK-Preis | $0.147 | GNK/USD-Kurs, nach dem Einzahlungen und Salden berechnet werden. Wird automatisch aktualisiert. |
GET /api/pricing
Limits
Modelle: Alle Gonka-Netzwerkmodelle (DevShards Multi-Modell-Architektur)
Anfrage-Limit: Mit einem API-Key ist die Anzahl der Anfragen nicht starr limitiert (begrenzt durch die Netzwerkkonkurrenz); ohne Key — 20/Tag pro IP (Spam-Schutz)
Max. Tokens: bis zu 32.768 Token pro Anfrage für DeepSeek V4 Flash und bis zu 8.192 für andere Modelle (Werte, die das Limit überschreiten, werden vom gateway gekürzt). Für lange Antworten verwenden Sie stream:true, um Timeouts zu vermeiden.
Streaming: unterstützt (SSE, stream: true)
Netzwerk-Timeout: Wenn das Gonka-Netzwerk die Anfrage akzeptiert hat, aber nicht innerhalb von 300 Sekunden antwortet, endet die Anfrage mit einem 504-Fehler und die Prompt-Verarbeitung wird basierend auf der Schätzung abgerechnet: Eine vom Netzwerk akzeptierte Anfrage kann nicht storniert werden, der Node verarbeitet sie in jedem Fall. Completion wird bei einem Timeout nicht berechnet. Für lange Generationen verwenden Sie stream:true.