ড্রাইভ API থেকে স্থানান্তর করা হচ্ছে

লুকার স্টুডিও এপিআই-এ অনুমতি পরিচালনার জন্য ড্রাইভ API ব্যবহার করে কীভাবে কোড স্থানান্তর করতে হয় তা এই দস্তাবেজটি রূপরেখা দেয়৷ সাধারণ ড্রাইভ এপিআই এন্ডপয়েন্টের জন্য, এটি সংশ্লিষ্ট লুকার স্টুডিও এপিআই কোড দেখায়।

নথি পত্র

ড্রাইভ এপিআই ফাইলের এন্ডপয়েন্টের জন্য, লুকার স্টুডিও এপিআই-এর শুধুমাত্র Files: list endpoint-এর জন্য একটি সমতুল্য এন্ডপয়েন্ট রয়েছে।

তালিকা

API পদ্ধতি শেষপ্রান্ত
ড্রাইভ POST /drive/v3/files
লুকার স্টুডিও GET /v1/assets:search

তুলনা:

ড্রাইভ

const oAuthToken = '123' // This should be replaced with a valid OAuth token.
fetch(`https://www.googleapis.com/drive/v3/files`, {
  headers: {
    Authorization: `Bearer ${oAuthToken}`
  },
  method: "POST",
})

লুকার স্টুডিও

const oAuthToken = '123' // This should be replaced with a valid OAuth token.
fetch(`https://datastudio.googleapis.com/v1/assets:search?assetTypes={ASSET_TYPE}`, {
  headers: {
    Authorization: `Bearer ${oAuthToken}`
  }
})

অনুসন্ধান সম্পদ দেখুন.

অনুমতি

তৈরি করুন, মুছুন এবং পান

API পদ্ধতি শেষপ্রান্ত
ড্রাইভ POST /drive/v3/files/fileId/permissions
ড্রাইভ DELETE /drive/v3/files/fileId/permissions/permissionId
ড্রাইভ GET /drive/v3/files/fileId/permissions/permissionId

একাধিক Permissions অবজেক্ট ম্যানেজ করার জন্য লুকার স্টুডিও এপিআই-এ কোনো সংশ্লিষ্ট এন্ডপয়েন্ট নেই। একটি লুকার স্টুডিও সম্পদের জন্য শুধুমাত্র একটি অনুমতি বস্তু আছে, এবং এটি সর্বদা বিদ্যমান।

তালিকা

ড্রাইভ এবং লুকার স্টুডিওর মধ্যে 1-থেকে-1 ম্যাচ নেই, তবে শেষ পয়েন্টগুলি একই রকম লক্ষ্যগুলি পরিবেশন করে৷ প্রধান পার্থক্য হল যে একটি ড্রাইভ ফাইলে অনেকগুলি অনুমতি বস্তু থাকতে পারে এবং লুকার স্টুডিওতে ঠিক একটি রয়েছে৷

API পদ্ধতি শেষপ্রান্ত
ড্রাইভ GET /drive/v3/files/fileId/permissions
লুকার স্টুডিও GET /v1/assets/assetId/permissions

তুলনা:

ড্রাইভ

এই নিম্নলিখিত কোডটি ড্রাইভ API-এর জন্য সমস্ত অনুমতি বস্তুর তালিকা করে। আপনার কোডের উপর নির্ভর করে, আপনি একটি ফাইলের জন্য সেট করা সমস্ত অনুমতি দেখতে পাচ্ছেন তা নিশ্চিত করার জন্য আপনি এই পদ্ধতিটিকে একাধিকবার পেজিনেশন টোকেন ব্যবহার করে কল করতে পারেন (যেমন দেখানো হয়েছে)।

const fileId = '123'; // This should be replaced with a valid Drive ID.
const oAuthToken = '123'; // This should be replaced with a valid OAuth token.
let nextPageToken = undefined;
let permissions = [];
do {
  const permissionsData = await fetch(`https://www.googleapis.com/drive/v3/files/${fileId}/permissions`, {
    headers: {
      Authorization: `Bearer ${oAuthToken}`
    }
  });
  nextPageToken = permissionsData.nextPageToken;
  permissions = permissions.concat(permissionsData.permissions)
} while (nextPageToken !== undefined);

লুকার স্টুডিও

যেহেতু একটি লুকার স্টুডিও সম্পদের জন্য শুধুমাত্র একটি অনুমতি বস্তু আছে, তাই আপনাকে পৃষ্ঠা সংখ্যার জন্য অ্যাকাউন্ট করতে হবে না।

const oAuthToken = '123' // This should be replaced with a valid OAuth token.
const assetId = '123' // This should be replaced with a valid asset ID.
fetch(`https://datastudio.googleapis.com/v1/assets/{ASSET_ID}/permissions`, {
  headers: {
    Authorization: `Bearer ${oAuthToken}`
  }
}

অনুমতি পান দেখুন.

হালনাগাদ

অনুমতি আপডেট করার জন্য, লুকার স্টুডিও এবং ড্রাইভ এপিআই-এর কার্যকারিতা একই রকম। প্রধান পার্থক্য হল আপনি লুকার স্টুডিও অনুমতিতে expirationTime সেট করতে পারবেন না।

API পদ্ধতি শেষপ্রান্ত
ড্রাইভ PATCH /drive/v3/files/fileId/permissions/permissionId
লুকার স্টুডিও PATCH /v1/assets/assetId/permissions

তুলনা:

ড্রাইভ

const fileId = '123'; // This should be replaced with a valid Drive ID.
const oAuthToken = '123'; // This should be replaced with a valid OAuth token.
const newPermissionsObject = {
  expirationTime: '...',
  role: 'owner', // Or any other option
}
fetch(`https://www.googleapis.com/drive/v3/files/${fileId}/permissions/permissionId`, {
  headers: {
    Authorization: `Bearer ${oAuthToken}`
  },
  method: "PATCH",
  body: JSON.stringify(newPermissionsObject)
})

লুকার স্টুডিও

const oAuthToken = '123' // This should be replaced with a valid OAuth token.
const assetId = '123' // This should be replaced with a valid asset ID.
const newPermissionsObject = {
  permissions: {
    //...
  }
}

fetch(`https://datastudio.googleapis.com/v1/assets/${assetId}/permissions`, {
  headers: {
    Authorization: `Bearer ${oAuthToken}`
  },
  method: "PATCH",
  body: JSON.stringify({
    name: assetId,
    permissions: newPermissionsObject
  })
})

ব্যবহারের ক্ষেত্রে নির্দিষ্ট বিকল্পগুলির জন্য, দেখুন: