الانتقال إلى المحتوى الرئيسي

نظرة عامة

تتيح لك واجهة الإدارة إدارة مفاتيح API الخاصة بالمؤسسة واستعراض الاستخدام والفوترة لكل مفتاح دون استخدام مفتاح استدلال عادي. يمكنك إصدار رمز الإدارة وتدويره من صفحة Settings في لوحة التحكم.
Authorization: Bearer mt-your-management-token
تختلف رموز الإدارة عن مفاتيح API الخاصة بالاستدلال. استخدم mt-... مع /v1/management/*، واستخدم sk-... مع واجهات الاستدلال مثل /v1/responses.

الواجهات المتاحة

EndpointMethodالوصف
/v1/management/api-keysGETيعرض قائمة مفاتيح API الخاصة بالمستخدم في المؤسسة الحالية
/v1/management/api-keysPOSTينشئ مفتاح API جديدًا للمستخدم
/v1/management/api-keys/{keyId}PATCHيحدّث الاسم أو حد الاستخدام أو النماذج المسموح بها أو تاريخ الانتهاء أو الحالة
/v1/management/api-keys/{keyId}/usageGETيجلب تفاصيل الاستخدام المرقّمة على صفحات لمفتاح محدد
/v1/management/api-keys/{keyId}/billingGETيجلب تفاصيل الفوترة المجمعة لمفتاح محدد

عقد مرشحات الاستخدام

يدعم GET /v1/management/api-keys/{keyId}/usage معلمات الاستعلام التالية.
المعاملالنوعالقيم الافتراضية / القيودالوصف
pageintegerالافتراضي 1، الحد الأدنى 1رقم الصفحة بدءًا من 1
limitintegerالافتراضي 50، الحد الأدنى 1، الحد الأقصى 100حجم الصفحة
logicalModelstringأقصى طول 100اسم النموذج المنطقي المطلوب
modelVendorstringأقصى طول 100مزود النموذج العام
sceneenum-chat و image و audio و video و embedding و rerank و translation و music و 3d
accessChannelenum-platform أو byok
startDatestring-حد سفلي شامل؛ يقبل RFC3339 مع منطقة زمنية أو YYYY-MM-DD
endDatestring-حد علوي شامل؛ يقبل RFC3339 مع منطقة زمنية أو YYYY-MM-DD
إذا تم إرسال startDate و endDate معًا، فيجب أن يكون startDate أسبق من أو مساويًا لـ endDate.

عقد جسم مفتاح API

POST /v1/management/api-keys

الحقلالنوعالقيم الافتراضية / القيودالوصف
namestringمطلوب، الافتراضي Default Key، الطول 1-50اسم العرض؛ تتم إزالة المسافات من البداية والنهاية على الخادم
limitAmountnumber | nullالحد الأدنى 0، الحد الأقصى 100000null أو الحذف = غير محدود، 0 = حصة صفرية، والقيمة الموجبة = سقف إنفاق بالدولار
limitCurrencyenumالقيمة الافتراضية USDاختياري: USD أو CNY. عند ضبطه على CNY سيتم تفسير limitAmount كقيمة بالرنمينبي ثم تحويلها إلى USD على الخادم قبل التخزين
modelsstring[]الافتراضي []قائمة اختيارية للنماذج المنطقية المسموح بها
expiresAtstring | nullتاريخ ووقت RFC3339null يعني عدم وجود انتهاء

PATCH /v1/management/api-keys/

الحقلالنوعالقيم الافتراضية / القيودالوصف
statusenum-active أو inactive أو revoked
namestringالطول 1-50اسم العرض بعد التحديث
limitAmountnumber | nullالحد الأدنى 0، الحد الأقصى 100000null = غير محدود، 0 = حصة صفرية
limitCurrencyenumالقيمة الافتراضية USDاختياري: USD أو CNY. عند ضبطه على CNY سيتم تفسير limitAmount كقيمة بالرنمينبي ثم تحويلها إلى USD على الخادم قبل التخزين
modelsstring[]-قائمة النماذج المنطقية المسموح بها بعد التحديث
expiresAtstring | nullتاريخ ووقت RFC3339null يزيل تاريخ الانتهاء
يجب أن يتضمن طلب 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"
    }
  ]
}

الخطوات التالية