ऐक्सेस का प्रस्ताव, अनुरोध करने वाले व्यक्ति की ओर से अनुमति देने वाले व्यक्ति को भेजा गया एक प्रस्ताव होता है. इसमें अनुरोध करने वाला व्यक्ति, अनुमति देने वाले व्यक्ति से किसी Google Drive आइटम का ऐक्सेस पाने वाले व्यक्ति को ऐक्सेस देने के लिए कहता है.
अनुमति देने वाला व्यक्ति, Drive की फ़ाइलों के लिए, ऐक्सेस से जुड़े सभी ऐसे अनुरोधों की समीक्षा कर सकता है जिन पर अब तक कोई कार्रवाई नहीं की गई है. इसका मतलब है कि ऐक्सेस के प्रस्तावों के लिए प्रोग्राम के हिसाब से क्वेरी करके और फिर उन्हें हल करके, मंज़ूरी पाने की प्रोसेस को तेज़ किया जा सकता है. इससे मंज़ूरी देने वाला व्यक्ति, सभी प्रस्तावों को एक साथ देख सकता है.
Google Drive API, accessproposals संसाधन उपलब्ध कराता है, ताकि ऐक्सेस के लंबित अनुरोधों को देखा जा सके और उन्हें स्वीकार या अस्वीकार किया जा सके. accessproposals संसाधन के तरीके, फ़ाइलों, फ़ोल्डर, और शेयर की गई ड्राइव में मौजूद फ़ाइलों पर काम करते हैं. हालांकि, ये शेयर की गई ड्राइव पर काम नहीं करते.
ऐक्सेस के प्रस्तावों के लिए, ये शर्तें लागू होती हैं:
- अनुरोध करने वाला व्यक्ति: वह व्यक्ति जो Drive आइटम को ऐक्सेस करने का प्रस्ताव भेजता है.
- पाने वाला: अगर ऐक्सेस का अनुरोध स्वीकार कर लिया जाता है, तो यह वह उपयोगकर्ता होता है जिसे किसी फ़ाइल पर अतिरिक्त अनुमतियां मिलती हैं. कई बार, अनुरोध करने वाला और अनुरोध पाने वाला एक ही व्यक्ति होता है. हालांकि, ऐसा हमेशा नहीं होता.
- अनुमोदन देने वाला व्यक्ति: यह वह व्यक्ति होता है जिसके पास ऐक्सेस के अनुरोध को स्वीकार या अस्वीकार करने का अधिकार होता है. आम तौर पर, ऐसा इसलिए होता है, क्योंकि वे दस्तावेज़ के मालिक होते हैं या उनके पास दस्तावेज़ शेयर करने की अनुमति होती है.
फ़ील्ड पैरामीटर का इस्तेमाल करना
अगर आपको जवाब में दिखाए जाने वाले फ़ील्ड तय करने हैं, तो accessproposals रिसॉर्स के किसी भी तरीके के साथ fields सिस्टम पैरामीटर सेट किया जा सकता है. fields पैरामीटर को शामिल न करने पर, सर्वर ऐसे फ़ील्ड का डिफ़ॉल्ट सेट दिखाता है जो इस तरीके के लिए खास तौर पर बनाए गए हैं. अलग-अलग फ़ील्ड वापस पाने के लिए, चुनिंदा फ़ील्ड वापस पाना लेख पढ़ें.
ऐक्सेस करने का कोई ऐसा अनुरोध पाना जिसे स्वीकार करना बाकी है
ऐक्सेस का सुझाव पाने के लिए, accessproposals रिसॉर्स पर get तरीके का इस्तेमाल करें. इसके लिए, fileId और proposalId पाथ पैरामीटर का इस्तेमाल करें. अगर आपको प्रपोज़ल आईडी नहीं पता है, तो list तरीके का इस्तेमाल करके, ऐक्सेस के लिए लंबित प्रपोज़ल की सूची देखी जा सकती है.
ऐक्सेस के उन अनुरोधों की सूची जिन्हें मंज़ूरी मिलना बाकी है
Drive आइटम पर ऐक्सेस के सभी लंबित अनुरोधों को सूची में शामिल करने के लिए, accessproposals संसाधन पर list तरीके को कॉल करें. साथ ही, fileId पाथ पैरामीटर शामिल करें.
किसी फ़ाइल के लिए, सिर्फ़ मंज़ूरी देने वाले लोग ही उस फ़ाइल पर मंज़ूरी के लिए रुके हुए प्रस्तावों की सूची देख सकते हैं. अनुमति देने वाला व्यक्ति वह उपयोगकर्ता होता है जिसके पास फ़ाइल पर can_approve_access_proposals की अनुमति होती है. अगर अनुरोध करने वाला व्यक्ति, मंज़ूरी देने वाला नहीं है, तो खाली सूची दिखाई जाती है. capabilities के बारे में ज़्यादा जानकारी के लिए, फ़ाइल की सुविधाओं के बारे में जानकारी लेख पढ़ें.
जवाब के मुख्य हिस्से में एक accessproposals ऑब्जेक्ट होता है. यह ऑब्जेक्ट, फ़ाइल पर ऐक्सेस के उन सभी अनुरोधों की सूची दिखाता है जिन्हें अब तक स्वीकार नहीं किया गया है.
accessproposals ऑब्जेक्ट में हर प्रस्ताव के बारे में जानकारी शामिल होती है. जैसे, अनुरोध करने वाला व्यक्ति, अनुरोध पाने वाला व्यक्ति, और अनुरोध करने वाले व्यक्ति ने जो मैसेज जोड़ा है वह. इसमें RoleAndView ऑब्जेक्ट भी शामिल होता है. यह ऑब्जेक्ट, अनुरोध करने वाले व्यक्ति के सुझाए गए role को view के साथ ग्रुप करता है. role
दोहराया गया फ़ील्ड है. इसलिए, हर प्रस्ताव के लिए एक से ज़्यादा वैल्यू मौजूद हो सकती हैं. उदाहरण के लिए, किसी प्रपोज़ल में role=reader और view=published का RoleAndView ऑब्जेक्ट हो सकता है. साथ ही, सिर्फ़ role=writer वैल्यू वाला एक और RoleAndView ऑब्जेक्ट भी हो सकता है. ज़्यादा जानकारी के लिए, व्यू देखें.
पेज नंबर के हिसाब से बांटने या फ़िल्टर करने के लिए, ऐक्सेस के प्रस्तावों में ये क्वेरी पैरामीटर पास करें:
pageToken: यह एक पेज टोकन है, जो सूची बनाने के लिए किए गए पिछले कॉल से मिला है. अगला पेज पाने के लिए, यह टोकन दें.pageSize: हर पेज पर, ऐक्सेस के अनुरोधों की ज़्यादा से ज़्यादा संख्या.
ऐक्सेस के लंबित प्रस्तावों को स्वीकार या अस्वीकार करना
Drive आइटम पर, अनुमति के सभी लंबित अनुरोधों को हल करने के लिए, accessproposals संसाधन पर resolve तरीके को कॉल करें. साथ ही, fileId और proposalId पाथ पैरामीटर शामिल करें.
resolve तरीके में एक action क्वेरी पैरामीटर शामिल होता है. यह पैरामीटर, प्रपोज़ल पर की जाने वाली कार्रवाई के बारे में बताता है. Action ऑब्जेक्ट, प्रस्ताव की स्थिति में होने वाले बदलाव को ट्रैक करता है. इससे हमें पता चलता है कि प्रस्ताव को स्वीकार किया जा रहा है या अस्वीकार किया जा रहा है.
resolve तरीके में, role और view के वैकल्पिक क्वेरी पैरामीटर भी शामिल होते हैं. सिर्फ़ writer, commenter, और reader भूमिकाओं के लिए यह सुविधा उपलब्ध है. अगर भूमिका नहीं बताई गई है, तो डिफ़ॉल्ट रूप से reader लागू हो जाती है. ज़्यादा जानकारी के लिए, भूमिकाएं और अनुमतियां लेख पढ़ें. sendNotification का एक और क्वेरी पैरामीटर, अनुरोध करने वाले व्यक्ति को ईमेल से सूचना भेजने की सुविधा देता है. यह सूचना तब भेजी जाती है, जब प्रस्ताव स्वीकार या अस्वीकार कर दिया जाता है.
list तरीके की तरह ही, प्रपोज़ल को स्वीकार करने वाले उपयोगकर्ताओं के पास फ़ाइल पर can_approve_access_proposals की सुविधा होनी चाहिए. capabilities के बारे में ज़्यादा जानकारी के लिए, फ़ाइल की सुविधाओं के बारे में जानकारी लेख पढ़ें.
प्रस्तावों को हल करने के लिए, Drive के संसाधन शेयर करने के उदाहरण में दिए गए पैटर्न का इस्तेमाल किया जाता है. अगर एक ही उपयोगकर्ता के लिए, अलग-अलग भूमिकाओं वाले कई प्रस्ताव हैं, तो इन बातों का ध्यान रखें:
- अगर एक प्रस्ताव स्वीकार कर लिया जाता है और दूसरा अस्वीकार कर दिया जाता है, तो Drive आइटम पर स्वीकार की गई भूमिका लागू होती है.
- अगर दोनों प्रस्तावों को एक ही समय पर स्वीकार कर लिया जाता है, तो ज़्यादा अनुमति वाले प्रस्ताव (उदाहरण के लिए,
role=writerबनामrole=reader) को लागू किया जाता है. ऐक्सेस के दूसरे अनुरोध को आइटम से हटा दिया जाता है.
resolve तरीके से प्रपोज़ल भेजने के बाद, शेयर करने की कार्रवाई पूरी हो जाती है. ऐक्सेस के लिए हल किए गए प्रपोज़ल को अब list
तरीके से नहीं दिखाया जाता. प्रस्ताव स्वीकार होने के बाद, उपयोगकर्ता को किसी फ़ाइल या फ़ोल्डर पर अनुमतियां अपडेट करने के लिए, permissions संसाधन का इस्तेमाल करना होगा. ज़्यादा जानकारी के लिए, अनुमतियां अपडेट करना लेख पढ़ें.