نظرة عامة
تتيح لك واجهة الإدارة إدارة مفاتيح API الخاصة بالمؤسسة واستعراض الاستخدام والفوترة لكل مفتاح دون استخدام مفتاح استدلال عادي.
يمكنك إصدار رمز الإدارة وتدويره من صفحة Settings في لوحة التحكم.
Authorization: Bearer mt-your-management-token
تختلف رموز الإدارة عن مفاتيح API الخاصة بالاستدلال. استخدم mt-... مع /v1/management/*، واستخدم sk-... مع واجهات الاستدلال مثل /v1/responses.
الواجهات المتاحة
| Endpoint | Method | الوصف |
|---|
/v1/management/api-keys | GET | يعرض قائمة مفاتيح API الخاصة بالمستخدم في المؤسسة الحالية |
/v1/management/api-keys | POST | ينشئ مفتاح API جديدًا للمستخدم |
/v1/management/api-keys/{keyId} | PATCH | يحدّث الاسم أو حد الاستخدام أو النماذج المسموح بها أو تاريخ الانتهاء أو الحالة |
/v1/management/api-keys/{keyId}/usage | GET | يجلب تفاصيل الاستخدام المرقّمة على صفحات لمفتاح محدد |
/v1/management/api-keys/{keyId}/billing | GET | يجلب تفاصيل الفوترة المجمعة لمفتاح محدد |
عقد مرشحات الاستخدام
يدعم GET /v1/management/api-keys/{keyId}/usage معلمات الاستعلام التالية.
| المعامل | النوع | القيم الافتراضية / القيود | الوصف |
|---|
page | integer | الافتراضي 1، الحد الأدنى 1 | رقم الصفحة بدءًا من 1 |
limit | integer | الافتراضي 50، الحد الأدنى 1، الحد الأقصى 100 | حجم الصفحة |
logicalModel | string | أقصى طول 100 | اسم النموذج المنطقي المطلوب |
modelVendor | string | أقصى طول 100 | مزود النموذج العام |
scene | enum | - | chat و image و audio و video و embedding و rerank و translation و music و 3d |
accessChannel | enum | - | platform أو byok |
startDate | string | - | حد سفلي شامل؛ يقبل RFC3339 مع منطقة زمنية أو YYYY-MM-DD |
endDate | string | - | حد علوي شامل؛ يقبل RFC3339 مع منطقة زمنية أو YYYY-MM-DD |
إذا تم إرسال startDate و endDate معًا، فيجب أن يكون startDate أسبق من أو مساويًا لـ endDate.
عقد جسم مفتاح API
POST /v1/management/api-keys
| الحقل | النوع | القيم الافتراضية / القيود | الوصف |
|---|
name | string | مطلوب، الافتراضي Default Key، الطول 1-50 | اسم العرض؛ تتم إزالة المسافات من البداية والنهاية على الخادم |
limitAmount | number | null | الحد الأدنى 0، الحد الأقصى 100000 | null أو الحذف = غير محدود، 0 = حصة صفرية، والقيمة الموجبة = سقف إنفاق بالدولار |
limitCurrency | enum | القيمة الافتراضية USD | اختياري: USD أو CNY. عند ضبطه على CNY سيتم تفسير limitAmount كقيمة بالرنمينبي ثم تحويلها إلى USD على الخادم قبل التخزين |
models | string[] | الافتراضي [] | قائمة اختيارية للنماذج المنطقية المسموح بها |
expiresAt | string | null | تاريخ ووقت RFC3339 | null يعني عدم وجود انتهاء |
PATCH /v1/management/api-keys/
| الحقل | النوع | القيم الافتراضية / القيود | الوصف |
|---|
status | enum | - | active أو inactive أو revoked |
name | string | الطول 1-50 | اسم العرض بعد التحديث |
limitAmount | number | null | الحد الأدنى 0، الحد الأقصى 100000 | null = غير محدود، 0 = حصة صفرية |
limitCurrency | enum | القيمة الافتراضية USD | اختياري: USD أو CNY. عند ضبطه على CNY سيتم تفسير limitAmount كقيمة بالرنمينبي ثم تحويلها إلى USD على الخادم قبل التخزين |
models | string[] | - | قائمة النماذج المنطقية المسموح بها بعد التحديث |
expiresAt | string | null | تاريخ ووقت RFC3339 | null يزيل تاريخ الانتهاء |
يجب أن يتضمن طلب PATCH حقلًا واحدًا على الأقل.
عقد المبالغ المالية
- افتراضيًا يتم تفسير
limitAmount في الطلب على أنه USD. اضبط limitCurrency: "CNY" لإرسال حد بالرنمينبي، وسيقوم الخادم بتحويله إلى USD باستخدام السعر الحالي قبل التخزين.
- تحتفظ الحقول المالية في الاستجابة بقيمة USD الأصلية وتضيف حقل عرض بالرنمينبي مع اللاحقة
_cny.
- تتم إعادة
exchange_rate مع بيانات API key الوصفية، وهي تمثل سعر USD→CNY المستخدم لكل قيمة *_cny في تلك الاستجابة.
دلالات التقارير
- يشير
logicalModel إلى النموذج المنطقي العام الذي طلبه المستدعي.
- يشير
modelVendor إلى مزود النموذج العام، وليس المسار الفيزيائي المخفي.
- تمثل
scene مشهد الطلب العام المشتق من الواجهة أو نوع المهمة.
- تعني
accessChannel=platform أن الطلب تمت محاسبته عبر قناة منصة LemonData.
- تعني
accessChannel=byok أن الطلب استخدم مفتاح مزود upstream الخاص بك.
لا تكشف الاستجابات إلا حقول الفوترة والتقارير العامة. أما تفاصيل التوجيه الداخلي وبيانات المزود الفيزيائية فتبقى مخفية.
ملاحظة حول ترقيم صفحات الفوترة
واجهة /usage تدعم ترقيم الصفحات. أما /billing فهي حاليًا واجهة تجميعية ولا تعيد بيانات ترقيم صفحات على نمط page / limit. وإذا كنت تحتاج إلى سجلات تفصيلية على مستوى الصفوف فاستعمل /usage.
مثال سريع
ابدأ باستعراض مفاتيح API المتاحة لرمز الإدارة الحالي.
curl "https://api.lemondata.cc/v1/management/api-keys" \
-H "Authorization: Bearer mt-your-management-token"
{
"object": "list",
"data": [
{
"id": "key_abc123def456",
"name": "Backend Worker",
"key_prefix": "sk-abc123...",
"status": "active",
"limit_amount": 500.0,
"limit_amount_cny": 3600.0,
"used_amount": 148.25,
"used_amount_cny": 1067.4,
"exchange_rate": 7.2,
"models": ["gpt-4o-mini", "claude-3-7-sonnet"],
"expires_at": "2026-04-30T00:00:00.000Z",
"last_used_at": "2026-03-27T08:12:45.000Z",
"created_at": "2026-03-01T10:00:00.000Z"
}
]
}
الخطوات التالية