إنشاء واجهات برمجة تطبيقات مخصصة

ما هي أفضل طريقة لإنشاء واجهات برمجة تطبيقات (APIs) مخصصة في منتدى Discourse؟

على سبيل المثال: أريد إنشاء طلب GET يعيد لي عدد المستخدمين، وعدد المواضيع، وعدد الفئات.
كيف يمكنني إضافة هذه الواجهة إلى المنتدى؟

تحتاج إلى كتابة إضافة. راجع دليل المبتدئين لإنشاء إضافات Discourse الجزء 1: إنشاء إضافة أساسية

 /admin/about.json

يحتوي على معظم ذلك، أعتقد. أو ربما يكون فقط /about.json.

البيانات ليست متطابقة تمامًا، لذا أود إنشاء واجهة برمجة تطبيقات JSON مخصصة.

لقد استخدمت GitHub - discourse/discourse-subscriptions: A Discourse plugin that allows payments and subscription management via Stripe. · GitHub كنموذج لإضافة نموذج (لا تحتاج إلى نموذج كامل، لكن discourse-subscriptions/config/routes.rb at main · discourse/discourse-subscriptions · GitHub يعطيك مثالاً على كيفية إضافة مسار. وهذا بالإضافة إلى add_to_class هو كل ما تحتاج لمعرفته. بالتوفيق!

شكرًا لك @pfaffman
سأقوم بدراسة الأمر.

لم أتمكن من إنشاء صفحة مخصصة/واجهة برمجة تطبيقات (API) عبر الإضافة.
هل توجد دليل للمبتدئين يمكنني اتباعه؟ أم أي مقال يوضح الخطوات الأساسية؟
لقد اتبعت دليل discourse وتمكنت من إضافة إعدادات إلى الإضافة، لكنني لم أستطع إنشاء صفحة جديدة.
@pfaffman

استخدمتُ إضافة الاشتراكات كدليل لإضافة أنشأتها. يقوم مولد الإضافة بإنشاء إضافة مع مسار جديد. الأمر معقد لأنك تتعامل مع جزئي Rails و Ember معًا. إذا أردت إضافة مسار Rails (API) فقط، فليس بالأمر الصعب (قد يقول آخرون إن إضافة مسار Ember فقط أمر سهل).

هل تحتاج إلى صفحة جديدة للعرض في المتصفح أم إلى الجزء الخلفي فقط؟