عبر API

تسجيل دخول المستخدمين عبر API باستخدام رموز جلسة مخصصة.

تسجيل الدخول المخصص عبر API ممكن فقط عند تمكينه من الواجهة الخلفية بواسطة Ideanote، يرجى الاتصال بنا إذا كنت ترغب في استخدام طريقة المصادقة هذه.

تشرح هذه المقالة كيفية تسجيل دخول المستخدم إلى المتصفح باستخدام API الخاص بـ Ideanote. يمكن استخدام هذه الطريقة عندما لا يكون JWT أو SAML أو OpenID خيارًا متاحًا. لتسجيل دخول المستخدم، عليك اتباع الخطوات التالية:

  1. إنشاء أو تحديث المستخدم والحصول على رمز جلسة المستخدم.
  2. إنشاء رابط باستخدام رمز الجلسة يمكن استخدامه لتسجيل دخول المستخدم تلقائيًا في المتصفح.

إنشاء أو تحديث المستخدم والحصول على رمز الجلسة.

ستقوم نقطة نهاية JSON التالية بإنشاء المستخدم تلقائيًا إذا لم يكن موجودًا أو تحديث المستخدم إذا كان موجودًا بالفعل. تُرجع نقطة النهاية كائن جلسة يحتوي على رمز الجلسة (sessionToken).

POST https://api.ideanote.io/v1/session?fields=kind,user.id,sessionToken

معلمات النص الأساسي:

الاسم

الوصف

spaceId

معرف مساحة العمل الخاصة بك

kind

يجب تعيين هذا المفتاح دائمًا إلى القيمة: CUSTOM

data

كائن بيانات يصف تفاصيل المستخدم
الاسم
الوصف
البريد الإلكتروني (مطلوب)
البريد الإلكتروني للمستخدم. نحدد ما إذا كان هناك مستخدم موجود بالفعل في مساحة العمل من خلال البحث عن مستخدم موجود لديه عنوان البريد الإلكتروني هذا.
apiToken (مطلوب)
رمز API المميز لحساب مالك في مساحة العمل الخاصة بك. يمكن الحصول على رمز API المميز هذا من /settings/profile في تطبيق الويب Ideanote
sub
معرّف فريد اختياري سيُستخدم للعثور على مستخدم موجود في مساحة العمل Ideanote. إذا لم يتم توفير sub، فسيُستخدم البريد الإلكتروني بدلاً من ذلك للعثور على مستخدم موجود.
name
اسم المستخدم
avatarUrl
رابط إلى صورة ينبغي استخدامها كصورة رمزية لهذا المستخدم.
team
اسم فريق ينبغي إضافة المستخدم إليه. سيتم إنشاء الفريق إذا لم يكن موجودًا.
locale
الإعدادات المحلية للمستخدم

الاسم

الوصف

البريد الإلكتروني (مطلوب)

البريد الإلكتروني للمستخدم. نحدد ما إذا كان هناك مستخدم موجود بالفعل في مساحة العمل من خلال البحث عن مستخدم حالي بهذا البريد الإلكتروني.

رمز API (مطلوب)

رمز API لحساب مالك في مساحة العمل الخاصة بك. يمكن الحصول على رمز API هذا من /settings/profile في تطبيق ويب Ideanote.

sub

معرف فريد اختياري سيتم استخدامه للعثور على مستخدم موجود في مساحة عمل Ideanote. إذا لم يتم توفير sub، فسيتم استخدام البريد الإلكتروني للعثور على مستخدم موجود بدلاً من ذلك.

الاسم

اسم المستخدم

avatarUrl

رابط إلى صورة يجب استخدامها كصورة رمزية لهذا المستخدم.

الفريق

اسم فريق يجب إضافة المستخدم إليه. سيتم إنشاء الفريق إذا لم يكن موجودًا.

اللغة المحلية

اللغة المحلية للمستخدم

مثال على الطلب:

Bash

 
curl "https://api.ideanote.io/v1/session?fields=kind,user.id,sessionToken" \
  -H "Content-Type: application/json" \
  -d '{
"spaceId": "b06f0a9a-4813-4515-81a0-29e8f2d193ec",
"kind": "CUSTOM",
"data": {
  "email": "john@doe.com",
  "apiToken": "f2dacce1fe557c7f140a3f7e85",
  "name": "John Doe",
  "avatarUrl": "https://avatars.githubusercontent.com/u/1234"
}
}'

مثال على النتيجة:

JSON

 
{  "sessionToken":"41b0d309e0e4a341eccf611f9a70cbb91a6a_164864564232",  "user": ...}

إنشاء رابط تسجيل الدخول باستخدام رمز الجلسة

بعد الحصول على رمز الجلسة (sessionToken) الخاص بالمستخدم، يمكنك إنشاء رابط يمكن استخدامه لتسجيل دخول المستخدم مباشرة في المتصفح.

الربط مباشرة بتطبيق الويب

https://{{SUBDOMAIN}}.ideanote.io/login/session/{{SESSION_TOKEN}}

مثال:

تلقائي

https://mysubdomain.ideanote.io/login/session/41b0d309e0e4a341eccf611f9a70cbb91a6a_164864564232

الربط مباشرة بواجهة الفكرة

عليك أولاً الحصول على رابط واجهة الفكرة. يمكن العثور على هذا من خلال مشاركة مهمة، وتعديل كود التضمين والحصول على رابط واجهة فكرة "بملء الشاشة".

بعد ذلك، سيتعين عليك تمديد عنوان URL باستخدام معلمة الاستعلام: &auth.sessionToken={{SESSION_TOKEN}}.

https://idea-widget.ideanote.io/idea-confirmation?config={{WIDGET_ID}}&auth.sessionToken={{SESSION_TOKEN}}

مثال:

تلقائي

https://idea-widget.ideanote.io/idea-confirmation?config=df828665bf&auth.sessionToken=41b0d309e0e4a341eccf611f9a70cbb91a6a_164864564232