تسجيل الدخول لأول مرة لمستخدم باستخدام مفتاح API

مرحباً بالجميع،

أنا أستخدم Discourse كواجهة خلفية فقط ولا يوجد أي تدخل لواجهة Discourse. لاستخدام واجهة برمجة التطبيقات (API)، أستخدم اسم المستخدم ومفتاح واجهة برمجة التطبيقات العام لتنفيذ الطلبات.
أواجه مشكلة واحدة وهي أنه كلما تم إنشاء مستخدم جديد في مزود OIDC الخاص بي (Keycloak)، لا يمكنني استخدام اسم المستخدم الخاص به في واجهة برمجة التطبيقات الخاصة بي. لا يتعرف Discourse على المستخدم.
حاولت تصحيح هذا وأدركت أن Discourse ينشئ مستخدمًا أيضًا عندما يقوم مستخدم بتسجيل الدخول بنجاح من OIDC لأول مرة ويعرض لافتة على واجهة المستخدم تفيد بأنه تم إنشاء الحساب بنجاح. بعد ذلك فقط يمكنني استخدام اسم المستخدم لتنفيذ الطلب الخاص بي.
أريد أتمتة هذا التدفق دون الحاجة إلى واجهة المستخدم. بشكل أساسي، أعني أنه إذا تم إنشاء مستخدم في منصة OIDC الخاصة بي، فيمكنني استخدام اسم المستخدم ومفتاح واجهة برمجة التطبيقات العام لتنفيذ طلبي دون استخدام واجهة المستخدم. أنا منفتح على تنفيذ واجهة برمجة تطبيقات إضافية.

أي اقتراحات ستكون مفيدة.
شكراً مقدماً!!

كما تشك، ستحتاج إلى إنشاء المستخدم باستخدام واجهة برمجة التطبيقات (API). قد يساعد الرابط Sync DiscourseConnect user data with the sync_sso route. إذا لم يكن كذلك، فانظر Search results for 'create user api،' - Discourse Meta أو ربما الهندسة العكسية لواجهة برمجة تطبيقات Discourse القديمة الجيدة.

3 إعجابات

لن يعمل DiscourseConnect في حالتي، لأنه في وقت واحد يمكن استخدام OIDC أو Discourse Connect. لقد حاولت هندسة واجهة برمجة تطبيقات Discourse العكسية.
عنوان URL هو:- https://smallidea.co/u

لديه حمولة تالية:-
{
name: testuser
email: test@xxxxxx.com
username:discoursetestuser3
password_confirmation:2290e67e2f59d6b9a0edbc735cef0e1d
challenge:598d41761746371257a4c89d5ac61260
time zone:Asia/Calcutta
}

أنا غير قادر على فهم معلمات “password_confirmation” و “challenge”. أي فكرة ما هذا؟
كلا هذين المعلمتين ديناميكيتان ولا توجد قيمة ثابتة يمكنني تمريرها. هذا عشوائي.