الوثائق
بدء سريع
تدعم بوابة Gonka AI واجهة برمجة تطبيقات OpenAI و Anthropic للوصول إلى نماذج Gonka. استبدل base_url في عميلك — وكل شيء يعمل.
عنوان URL الأساسي: https://gate.joingonka.ai/v1
النموذج: MiniMaxAI/MiniMax-M2.7
المصادقة: Bearer YOUR_API_KEY
بايثون (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)تايب سكريبت (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)
تدعم بوابة Gonka بشكل طبيعي Anthropic Messages API (/v1/messages). يعمل Claude Code و Anthropic SDK وأي أدوات تستخدم تنسيق Anthropic مباشرة - بدون وكيل.
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?"}
]
}'البث (بايثون)
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)استخدام الأداة (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?"}]
}'كلا التنسيقين (OpenAI و Anthropic) يستخدمان مفتاح API واحد ورصيد واحد.
نقاط نهاية API
Inference
/v1/chat/completionsإنشاء استجابة - تنسيق OpenAI (دعم التدفق)
{
"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/messagesإنشاء استجابة - تنسيق Anthropic (تدفق، استخدام الأدوات)
{
"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/modelsقائمة النماذج المتاحة
{
"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
}
}]
}المكونات الإضافية
تُوسّع المكونات الإضافية قدرات API. قم بتمرير مصفوفة "plugins" في الطلب لتفعيلها.
/v1/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"}
]
}الاستخدام في الطلب
{
"model": "MiniMaxAI/MiniMax-M2.7",
"messages": [{"role": "user", "content": "..."}],
"plugins": ["response-healing", "privacy-sanitization"]
}web
بحث ويب مباشرة داخل نماذج Gonka. النماذج نفسها (Kimi, MiniMax, DeepSeek) لا تحتوي على وظيفة بحث؛ يقوم gateway بحقن نتائج حديثة من الإنترنت في السياق وإرجاع اقتباسات المصادر. يعمل في وضعي stream و non-stream. الخلفية (backend) هي self-hosted: لا يتم إرسال الطلبات إلى واجهات برمجة تطبيقات بحث تابعة لجهات خارجية باستخدام حسابك.
الطريقة 1 — كائن الويب في مصفوفة المكونات الإضافية (حقن النتائج مع الخيارات):
{
"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:"
}]
}الطريقة 2 — وضع الوكيل (mode: "agent"): يستدعي النموذج نفسه web_search فقط عند الحاجة إلى البحث:
{
"model": "MiniMaxAI/MiniMax-M2.7",
"messages": [{"role": "user", "content": "What's new in the Gonka network?"}],
"plugins": [{ "id": "web", "mode": "agent", "max_searches": 3 }]
}الخيارات: max_results — عدد النتائج (الافتراضي 5، والحد الأقصى 10)؛ search_prompt — توجيه التأسيس (grounding prompt) الخاص بك المسبق للنتائج.
تثري الاستجابة بواسطة annotations[].url_citation (url، title) — معيار OpenRouter:
{
"choices": [{
"message": {
"role": "assistant",
"content": "...",
"annotations": [{
"type": "url_citation",
"url_citation": {
"url": "https://gonka.ai/...",
"title": "Gonka Network"
}
}]
}
}]
}التسعير: وضع plugins:[{ "id": "web" }] — للرموز فقط (تُحتسب النتائج المضافة كرموز مطالبة عادية). وضع الوكيل (mode: "agent") — رموز جميع خطوات الدورة بالإضافة إلى رسوم إضافية قدرها 1000 nGNK لكل استدعاء web_search (≈ $0.0001 لكل 1000 عملية بحث بسعر صرف ~$0.15 لكل GNK).
غير متوافق مع privacy-sanitization: إرسال الطلب المشترك سيعود برمز الخطأ 400.
response-healing
إصلاح تلقائي لـ JSON/الإخراج المهيكل المقطوع. يعمل فقط مع الطلبات غير المتدفقة التي تحتوي على محتوى JSON.
privacy-sanitization
إخفاء البيانات الحساسة (مفاتيح API، البريد الإلكتروني، عناوين IP، JWT، أرقام البطاقات) في الرسائل قبل إرسالها إلى النموذج.
الوضعيات: redact (استبدال بـ [REDACTED]) أو tokenize (استبدال بـ [TOKEN_001]). قم بتمرير privacy_mode في الجسم.
file-parser
استخراج النص من مستندات PDF. يدعم data:application/pdf;base64,... و raw base64.
مفاتيح الإدارة
مفاتيح API هرمية لعمليات تكامل SaaS. يقوم مفتاح الإدارة (gm-) بإنشاء مفاتيح فرعية (gc-) بحدود و TTL.
/api/management/keysإنشاء مفتاح إدارة (بادئة gm-). يستخدم فقط لإدارة المفاتيح الفرعية.
/api/management/keys/:id/childrenإنشاء مفتاح فرعي (بادئة gc-) مع قيود اختيارية. يتم خصم الفواتير من رصيد مالك مفتاح الإدارة.
{
"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/childrenقائمة المفاتيح الفرعية مع إحصائيات الاستخدام.
/api/management/keys/:id/children/:childIdتحديث الحدود أو RPM أو حالة المفتاح الفرعي.
/api/management/keys/:id/children/:childIdإلغاء تفعيل المفتاح الفرعي (حذف ناعم).
Account
/api/balanceالرصيد الحالي
{
"balance_ngonka": "11999976",
"balance_usd": 0.008,
"cost_per_token_ngonka": 1,
"tokens_remaining": 11999976
}/api/keysقائمة مفاتيح API
/api/keysإنشاء مفتاح API
/api/keys/:idحذف مفتاح API
Billing
/api/usageإحصائيات الاستخدام
Query: period=day|week|month&tz=-180
{
"period": "month",
"usage": [{
"date": "2026-03-20",
"requests": 42,
"tokens": 18500,
"costNgonka": "22200"
}]
}/api/depositsسجل الإيداعات
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/transactionsسجل المعاملات
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/pricingالأسعار والرسوم (عام، بدون مصادقة)
{
"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
عندما يكون stream: true، تأتي الاستجابة في أجزاء عبر SSE (Server-Sent Events).
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"}الأخطاء
// 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"}}النماذج
تدعم شبكة Gonka نماذج متعددة عبر API واحد — يمكن دائمًا الحصول على القائمة الحالية من خلال طلب GET /v1/models. لاختيار نموذج، مرر معرفه (ID) في حقل model في متن الطلب.
| النموذج | المورد | السياق | الحد الأقصى للإخراج | VRAM | الحالة |
|---|---|---|---|---|---|
| MiniMax M2.7 | MiniMax | 195K | 8K | 320 GB | متاح |
| Kimi K2.6 | Moonshot AI | 195K | 8K | 720 GB | متاح |
| DeepSeek V4 Flash | DeepSeek | 371K | 32K | 280 GB | متاح |
بشكل افتراضي (إذا لم يتم تحديد model)، يتم استخدام النموذج الرائد للشبكة. القائمة الحالية مع البيانات الوصفية — GET /v1/models.
القائمة الحالية للنماذج مع جميع البيانات الوصفية - GET /v1/models. لا يتم دعم الرؤية والإدخال المتعدد الوسائط (image_url) بعد بواسطة شبكة Gonka الأولية.
الأسعار والرسوم
شفافية كاملة: فيما يلي جميع رسوم gateway. يتم تحميل القيم الحالية مباشرة من الـ API — نقطة النهاية العامة GET /api/pricing متاحة دون مصادقة.
| العملية | الرسوم | ملاحظة |
|---|---|---|
| هامش إضافي على inference | 10% | هامش المنصة الإضافي فوق سعر شبكة Gonka — وهو المصدر الرئيسي لدخل الـ gateway. يتم خصمه مع كل طلب بجانب تكلفة الرموز. |
| الإيداع عبر USDT | 5% | يقتطعها مزود الدفع عند الدفع بالعملات المشفرة (USDT). |
| الإيداع عبر GNK | مجاني | يتم إيداع تحويل GNK المباشر on-chain بدون رسوم gateway. |
| سحب الأموال | 5% | تُقتطع عند سحب GNK إلى عنوان خارجي. تتم معالجة السحب يدويًا في غضون 24-48 ساعة. |
| سعر GNK الحالي | $0.147 | سعر صرف GNK/USD الذي يتم بناءً عليه حساب عمليات الشحن والرصيد. يتم تحديثه تلقائيًا. |
GET /api/pricing
الحدود
النماذج: جميع نماذج شبكة Gonka (بنية DevShards متعددة النماذج)
حد الطلبات: مع مفتاح API، لا يتم تحديد عدد الطلبات بشكل ثابت (الأمر يعتمد على تزامنية الشبكة)؛ وبدون مفتاح — 20 طلبًا يوميًا لكل عنوان IP (لمكافحة البريد العشوائي)
الحد الأقصى للتوكنات: ما يصل إلى 32,768 توكن لكل طلب لنموذج DeepSeek V4 Flash وما يصل إلى 8,192 للنماذج الأخرى (يتم اقتطاع القيم التي تتجاوز الحد بواسطة gateway). للاستجابات الطويلة، استخدم stream:true لتجنب انقضاء مهلة الطلب.
البث: مدعوم (SSE, stream: true)
مهلة الشبكة: إذا قبلت شبكة Gonka الطلب ولكنها لم تستجب خلال 300 ثانية، فسينتهي الطلب بخطأ 504، ويتم خصم معالجة المطالبة (prompt) بناءً على التقدير: لا يمكن إلغاء الطلب الذي قبلته الشبكة، حيث يقوم العقد (node) بمعالجته في كل الأحوال. لا تتم محاسبة Completion عند حدوث انتهاء المهلة. بالنسبة للتوليدات الطويلة، استخدم stream:true.