ابنِ بواجهة برمجة واحدة
استدعِ كل نماذج الكتالوج بنقاط نهاية متوافقة مع OpenAI، وادفع من المحفظة نفسها مع تحكّم كامل في المفاتيح والحدود.
bash
curl https://gapze.ir/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"model": "MODEL_SLUG",
"messages": [{"role": "user", "content": "سلام!"}],
"stream": true
}'متوافقة مع OpenAI
إكمال المحادثة والردود والتضمين والصور والصوت والفيديو بصيغ طلبات مألوفة وتدفق.
مفاتيح المشاريع
مشاريع وبيئات منفصلة، مفاتيح بنطاقات، قوائم IP مسموح بها، انتهاء صلاحية وتدوير.
فوترة متوقّعة
اطلب عرض سعر ملزمًا أولًا، وحدّد سقف إنفاق لكل مفتاح، واقرأ الرصيد والاستخدام عبر الواجهة.
الحدود والأمان
حدود معدّل لكل مفتاح مع Retry-After، حماية تلقائية للمفاتيح المسرّبة وإجراء للاعتراض.
Webhooks
أحداث موقّعة (بصيغة Standard Webhooks) للمهام المنتهية والفوترة مع إعادة المحاولة وسجل التسليم.
الوضع التجريبي
تستخدم مفاتيح sk_test محاكيًا مدمجًا ورصيدًا تجريبيًا لتتكامل دون إنفاق.
Python
python
from openai import OpenAI
client = OpenAI(base_url="https://gapze.ir/v1", api_key=os.environ["API_KEY"])
resp = client.chat.completions.create(
model="MODEL_SLUG",
messages=[{"role": "user", "content": "Hello"}],
)
print(resp.choices[0].message.content)JavaScript
javascript
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://gapze.ir/v1", apiKey: process.env.API_KEY });
const stream = await client.chat.completions.create({
model: "MODEL_SLUG",
messages: [{ role: "user", content: "Hello" }],
stream: true,
});
for await (const chunk of stream) process.stdout.write(chunk.choices[0]?.delta?.content ?? "");استخدم حِزم OpenAI الرسمية بتوجيه العنوان الأساسي إلى هذه الواجهة. استبدل MODEL_SLUG بمعرّف نموذج من صفحة النماذج.