শেয়ার্ড ড্রাইভ বনাম আমার ড্রাইভ এপিআই পার্থক্য

শেয়ার্ড ড্রাইভগুলো 'মাই ড্রাইভ' থেকে ভিন্ন সংগঠন, শেয়ারিং এবং মালিকানা মডেল অনুসরণ করে। সেই কারণে, শেয়ার্ড ড্রাইভের কন্টেন্টের জন্য 'মাই ড্রাইভ'-এর কিছু অপারেশন অনুমোদিত নয়।

এই নির্দেশিকাটি files এবং changes রিসোর্সগুলোর ক্ষেত্রে শেয়ার্ড ড্রাইভ-নির্দিষ্ট API পার্থক্যগুলো তুলে ধরে।

ফাইল রিসোর্স

files রিসোর্সের নিম্নলিখিত ফিল্ডগুলি শুধুমাত্র শেয়ার্ড ড্রাইভের মধ্যে অবস্থিত ফাইলগুলির জন্যই পূরণ করা হয়:

  • hasAugmentedPermissions : কোনো ব্যবহারকারীকে এই ফাইলটিতে সরাসরি অ্যাক্সেস দেওয়া হয়েছে কিনা।
  • capabilities/canAddFolderFromAnotherDrive : বর্তমান ব্যবহারকারী অন্য কোনো ড্রাইভ (একটি ভিন্ন শেয়ার্ড ড্রাইভ বা মাই ড্রাইভ) থেকে এই ফোল্ডারে কোনো ফোল্ডার যোগ করতে পারবেন কি না।
  • capabilities/canDeleteChildren : বর্তমান ব্যবহারকারী এই ফোল্ডারের অধীনস্থ ফাইলগুলো মুছে ফেলতে পারবেন কিনা।
  • capabilities/canMoveChildrenOutOfDrive : বর্তমান ব্যবহারকারী এই ফোল্ডারের অধীনস্থ ফাইলগুলোকে শেয়ার্ড ড্রাইভের বাইরে সরাতে পারবেন কিনা।
  • capabilities/canMoveChildrenWithinDrive : বর্তমান ব্যবহারকারী শেয়ার করা ড্রাইভের মধ্যে এই ফোল্ডারের অধীনস্থ ফোল্ডারগুলো সরাতে পারবেন কিনা।
  • capabilities/canMoveItemWithinDrive : বর্তমান ব্যবহারকারী এই শেয়ার্ড ড্রাইভ আইটেমটিকে শেয়ার্ড ড্রাইভের মধ্যে সরাতে পারবেন কিনা।
  • capabilities/canReadDrive : এই ফাইলটি যে শেয়ার্ড ড্রাইভের অন্তর্গত, বর্তমান ব্যবহারকারীর সেই ড্রাইভে পড়ার অনুমতি আছে কিনা।
  • capabilities/canTrashChildren : বর্তমান ব্যবহারকারী এই ফোল্ডারের অধীনস্থ ফাইলগুলো ট্র্যাশ করতে পারবে কি না।
  • driveId : যে শেয়ার্ড ড্রাইভে ফাইলটি অবস্থিত, তার আইডি।
  • trashingUser : যদি ফাইলটি স্পষ্টভাবে ট্র্যাশ করা হয়ে থাকে, তাহলে যে ব্যবহারকারী এটি ট্র্যাশ করেছেন।
  • trashedTime : যে সময়ে আইটেমটি ট্র্যাশ করা হয়েছিল। আপনি যদি পুরোনো Drive API v2 ব্যবহার করেন, তাহলে এই ফিল্ডটির নাম trashedDate

শেয়ার করা ড্রাইভের মধ্যে অবস্থিত ফাইলগুলির জন্য নিম্নলিখিত ক্ষেত্রগুলি পূরণ করা হয় না:

  • permissions : শেয়ার্ড ড্রাইভ অ্যাক্সেস কন্ট্রোল লিস্ট (ACL)-এর সম্ভাব্য আকারের কারণে, অনুমতিগুলো ফাইলের অংশ হিসেবে ফেরত দেওয়া হয় না। শেয়ার্ড ড্রাইভ বা শেয়ার্ড ড্রাইভ ফোল্ডারের মধ্যে থাকা কোনো ফাইলের অনুমতি তালিকাভুক্ত করতে permissions.list মেথডটি ব্যবহার করুন, যা পেজিনেশন সমর্থন করে।
  • owners , ownerNames , ownedByMe : একটি শেয়ার্ড ড্রাইভের ফাইলগুলো শেয়ার্ড ড্রাইভের মালিকানাধীন থাকে, কোনো একক ব্যবহারকারীর নয়।
  • folderColorRgb : ফোল্ডারগুলোকে আলাদাভাবে রঙ করা যাবে না।
  • shared : একটি শেয়ার্ড ড্রাইভের সমস্ত আইটেম শেয়ার করা হয়।
  • writersCanShare : শেয়ার করা ড্রাইভে ভূমিকা অনুযায়ী শেয়ারিং সীমাবদ্ধ করা সম্ভব নয়।

নিম্নলিখিত ফিল্ডগুলি শুধুমাত্র তখনই সেট করা হয় যখন ব্যবহারকারীকে কোনো আইটেমের ফাইল অ্যাক্সেসের অনুমতি দেওয়া হয়:

  • sharedWithMeDate
  • sharingUser

শেয়ার্ড ড্রাইভের সাথে ব্যবহার করার সময় নিম্নলিখিত ফিল্ডগুলোর ক্ষেত্রে বিশেষ বিবেচনার প্রয়োজন হয়:

  • parents.isRoot : এই ফিল্ডটি শুধুমাত্র My Drive রুট ফোল্ডারের জন্য সত্য; শেয়ার্ড ড্রাইভের টপ-লেভেল ফোল্ডারের জন্য এটি মিথ্যা।
  • parents : অনুরোধকারী ব্যবহারকারী যদি শেয়ার করা ড্রাইভের সদস্য না হন এবং প্যারেন্ট ফাইলটিতে তার অ্যাক্সেস না থাকে, তাহলে প্যারেন্ট ফাইলটি প্যারেন্টস তালিকায় প্রদর্শিত হয় না। এছাড়াও, টপ লেভেল ফোল্ডারটি ছাড়া, ফাইলটি যদি কোনো শেয়ার করা ড্রাইভের মধ্যে অবস্থিত থাকে, তাহলে প্যারেন্টস তালিকায় অবশ্যই ঠিক একটি আইটেম থাকতে হবে।

  • capabilities/canRemoveChildren : এর জন্য capabilities/canDeleteChildren অথবা capabilities/canTrashChildren ব্যবহার করুন।

সম্পদ পরিবর্তন করুন

একটি শেয়ার্ড ড্রাইভের changes রিসোর্সে নিম্নলিখিত নতুন ফিল্ডগুলো উপলব্ধ রয়েছে:

  • changeType : পরিবর্তনের ধরন। সম্ভাব্য মানগুলো হলো file এবং drive
  • driveId : এই পরিবর্তনের সাথে যুক্ত শেয়ার্ড ড্রাইভের আইডি।
  • drive : শেয়ার করা ড্রাইভের হালনাগাদ অবস্থা। যদি changeType এর মান drive হয় এবং ব্যবহারকারী তখনও শেয়ার করা ড্রাইভটির সদস্য থাকেন, তবে এটি উপস্থিত থাকে।

যেসব অ্যাপ্লিকেশনকে শেয়ার্ড ড্রাইভের সাথে কন্টেন্ট সিঙ্ক করতে হয় বা কার্যকলাপ ট্র্যাক করতে হয়, সেগুলোর জন্য অতিরিক্ত পরিবর্তনের প্রয়োজন হতে পারে। বিস্তারিত জানতে, ‘ব্যবহারকারী এবং শেয়ার্ড ড্রাইভের জন্য পরিবর্তন ট্র্যাক করুন’ দেখুন।