دليل دمج واجهة برمجة التطبيقات (API) لترند الألعاب
يوضح هذا الدليل كيفية استخدام واستدعاء الـ APIs الجديدة الخاصة بترند الألعاب لمنصتي (Gamezi و Baishun) للدمج مع تطبيق الموبايل.
1. واجهة ترند الألعاب العام (يومي - أسبوعي - شهري)
تستخدم هذه الواجهة لجلب قائمة المتصدرين في الألعاب حسب الفترة الزمنية المحددة وبإمكانية الفلترة حسب منصة ألعاب معينة.
GET
/api/v1/trending
التوثيق (Headers)
Authorization: Bearer {token}Accept: application/json
المعاملات المرسلة (Query Parameters)
| المعامل | النوع | الحالة | القيم المقبولة | الوصف |
|---|---|---|---|---|
type |
String |
مطلوب | games |
نوع الترتيب (يجب إرسال games لترند الألعاب). |
period |
String |
مطلوب | today, current_week, current_month |
الفترة الزمنية للترتيب. |
currency |
String |
اختياري | diamond, gold |
نوع العملة الافتراضي (يمكن إرسال diamond). |
game |
String |
اختياري | gamezi, baishun |
لتصفية النتائج حسب لعبة معينة. في حال عدم إرساله، سيجلب أرباح كلتا المنصتين معاً. |
archive |
Boolean |
اختياري | 1 أو 0 |
إذا تم إرسال 1 مع فترة معينة، فسيجلب ترتيب الفترة السابقة (مثلاً: أمس، أو الأسبوع الماضي، أو الشهر الماضي). |
مثال على الطلب (Request Example)
GET /api/v1/trending?type=games&period=current_week&game=gamezi
2. واجهة ترند الألعاب المصغر (أعلى 3 لليوم الحالي)
تستخدم هذه الواجهة لجلب أعلى 3 لاعبين تحقيقاً للربح خلال اليوم الحالي فقط بشكل مصغر وسريع.
GET
/api/v1/trending/games-mini
المعاملات المرسلة (Query Parameters)
| المعامل | النوع | الحالة | القيم المقبولة | الوصف |
|---|---|---|---|---|
game |
String |
اختياري | gamezi, baishun |
لتصفية اللاعبين الثلاثة الأوائل حسب لعبة معينة. |
مثال على الطلب (Request Example)
GET /api/v1/trending/games-mini?game=baishun
3. هيكل استجابة البيانات (Response Structure)
أ. واجهة ترند الألعاب العام (يومي - أسبوعي - شهري)
تُرجع قائمة مرتبة تنازلياً تحتوي على كامل بيانات الملف الشخصي للمستخدم (UserTrendingResource):
{
"data": [
{
"id": 1234,
"uid": "1000234",
"name": "اللاعب المحترف",
"gender": 1,
"current_profile_image_url": "https://example.com/avatars/user.jpg",
"score": 450000,
"badges": [
"https://example.com/uploads/badges/gold_badge.png"
],
"privilege_package": {
"id": 2,
"order": 1,
"name": "باقة كبار الشخصيات",
"slug": "vip",
"icon_path": "https://example.com/uploads/vip_icon.png",
"gif_path": "https://example.com/uploads/vip_anim.gif"
},
"is_agency_agent": false,
"is_charging_agent": false,
"level": {
"order": 15,
"icon": "https://example.com/uploads/levels/lvl_15.png"
},
"karizma_level": {
"order": 8,
"icon": "https://example.com/uploads/levels/karizma_8.png"
},
"payment_level": {
"order": 3,
"icon": "https://example.com/uploads/levels/pay_3.png"
},
"country": {
"flag": "https://flagcdn.com/w320/sa.png"
}
}
]
}
ب. واجهة ترند الألعاب المصغر (/games-mini)
تُرجع فقط الحقول الأساسية المطلوبة لتسريع الأداء وتقليل حجم البيانات المتبادلة:
{
"data": [
{
"id": 1234,
"uid": "1000234",
"name": "اللاعب المحترف",
"current_profile_image_url": "https://example.com/avatars/user.jpg",
"score": 450000
}
]
}