اقتراح الوصول هو اقتراح يقدّمه طالب إلى موافِق لمنح مستلِم إذن الوصول إلى عنصر في Google Drive.
يمكن للموافق مراجعة جميع اقتراحات الوصول التي لم يتم حلّها واتّخاذ إجراء بشأنها في ملفات Drive. وهذا يعني أنّه يمكنك تسريع عملية الموافقة من خلال طلب اقتراحات الوصول بشكل آلي ثم حلّها. ويتيح أيضًا للموافق عرض المقترحات بشكل مجمّع.
توفّر Google Drive API المورد
accessproposals
حتى تتمكّن من عرض
مقترحات الوصول المعلّقة وحلّها. تعمل طرق accessproposals
الموارد على الملفات والمجلدات والملفات داخل مساحة التخزين السحابي المشتركة، ولكنها لا تعمل على
مساحة التخزين السحابي المشتركة.
تنطبق البنود التالية على اقتراحات الوصول:
- مقدّم الطلب: هو المستخدم الذي يبدأ اقتراح الوصول إلى ملف أو مجلد في Drive.
- المستلِم: هو المستخدم الذي سيحصل على الأذونات الإضافية في ملف معيّن في حال الموافقة على اقتراح الوصول. في كثير من الأحيان، يكون المستلم هو نفسه صاحب الطلب، ولكن ليس دائمًا.
- الموافِق: هو المستخدم المسؤول عن الموافقة على اقتراح منح الإذن بالوصول (أو رفضه). ويحدث ذلك عادةً لأنّ المستخدم مالك المستند أو لديه إذن بمشاركته.
عرض قائمة باقتراحات الوصول المعلّقة
لعرض جميع طلبات الوصول المعلقة إلى ملف في Drive، استدعِ طريقة
list()
في مورد
accessproposals
وأدرِج مَعلمة المسار
fileId
.
يمكن للموافقين على ملف فقط إدراج الاقتراحات المعلّقة في ملف. الموافق هو مستخدم لديه إذن can_approve_access_proposals
على الملف. إذا لم يكن مقدّم الطلب من الموافقين، سيتم عرض قائمة فارغة. لمزيد من المعلومات حول capabilities
، يُرجى الاطّلاع على التعرّف على إمكانات الملف.
يتألف نص الاستجابة من كائن AccessProposal
يمثّل قائمة بمقترحات الوصول التي لم تتم الموافقة عليها في الملف.
يتضمّن العنصر AccessProposal
معلومات حول كل اقتراح، مثل
مقدّم الطلب والمستلِم والرسالة التي أضافها مقدّم الطلب. ويتضمّن أيضًا كائن AccessProposalRoleAndView
يجمع بين role
المقترَحة من مقدّم الطلب وview
. بما أنّ role
هو حقل متكرّر، يمكن أن تتوفّر قيم متعدّدة لكل اقتراح. على سبيل المثال، قد يتضمّن عرضًا AccessProposalRoleAndView
عنصرًا من النوع role=reader
وview=published
، بالإضافة إلى عنصر AccessProposalRoleAndView
آخر يتضمّن القيمة role=writer
فقط. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة المشاهدات.
مرِّر مَعلمات طلب البحث التالية لتخصيص تقسيم الصفحات أو فلترة اقتراحات الوصول:
pageToken
: رمز مميز للصفحة تم تلقّيه من طلب قائمة سابق. قدِّم هذا الرمز المميز لاسترداد الصفحة التالية.pageSize
: الحدّ الأقصى لعدد اقتراحات الوصول التي سيتم عرضها في كل صفحة
الاستجابة إلى اقتراحات الوصول المعلّقة
لحلّ جميع طلبات الوصول المعلقة إلى عنصر في Drive، استخدِم طريقة resolve()
في المورد accessproposals
، وأدرِج مَعلمتَي المسار fileId
وproposalId
.
تتضمّن الطريقة resolve()
مَعلمة طلب بحث action
تشير إلى الإجراء الذي يجب اتّخاذه بشأن العرض. يتتبّع العنصر
Action
تغيير الحالة في الاقتراح لنعرف ما إذا كان سيتم قبوله أو رفضه.
تتضمّن طريقة resolve()
أيضًا مَعلمات طلب البحث الاختيارية role
وview
. الأدوار المتوافقة فقط هي writer
وcommenter
وreader
. إذا لم يتم تحديد الدور، سيتم تلقائيًا استخدام القيمة reader
. يتيح لك مَعلمة طلب اختيارية إضافية send_notification
إرسال إشعار عبر البريد الإلكتروني إلى مقدّم الطلب عند قبول الاقتراح أو رفضه.
كما هو الحال مع الطريقة list()
، يجب أن يتوفّر للمستخدمين الذين يحلّون الاقتراح إذن can_approve_access_proposals
على الملف. لمزيد من المعلومات حول capabilities
، يُرجى الاطّلاع على التعرّف على إمكانات الملف.
يتم حلّ المقترحات باستخدام الأنماط نفسها المدرَجة ضمن سيناريوهات مشاركة موارد Drive. في حال توفّر عدة اقتراحات للمستخدم نفسه ولكن بأدوار مختلفة، ينطبق ما يلي:
- إذا تم قبول أحد الاقتراحين ورفض الآخر، سيتم تطبيق الدور المقبول على ملف Drive.
- في حال قبول كلا الاقتراحين في الوقت نفسه، سيتم تطبيق الاقتراح الذي يتضمّن الإذن الأعلى (على سبيل المثال،
role=writer
بدلاً منrole=reader
). تتم إزالة اقتراح الوصول الآخر من العنصر.
بعد إرسال اقتراح إلى الطريقة resolve()
، يكتمل إجراء المشاركة. لم يعُد يتم عرض AccessProposal
من خلال الطريقة list()
. بعد قبول الاقتراح، على المستخدم استخدام مجموعة permissions
لتعديل الأذونات على ملف أو مجلد. لمزيد من المعلومات، يُرجى الاطّلاع على تعديل الأذونات.