共用雲端硬碟與 My Drive API 的差異

共用雲端硬碟會從「我的雲端硬碟」中 遵循不同的機構、共用和擁有權模式因此,某些「我的雲端硬碟」作業無法用於共用雲端硬碟中的內容。本文件將概述共用雲端硬碟專屬 API 的差異。

Files 資源

只有位於共用雲端硬碟的檔案才會在下列欄位填入資料:

  • hasAugmentedPermissions:指出是否有任何使用者直接授予這個檔案的存取權。
  • capabilities/canAddFolderFromAnotherDrive:目前使用者能否將來自其他雲端硬碟 (不同共用雲端硬碟或「我的雲端硬碟」) 的資料夾新增至這個資料夾。
  • capabilities/canDeleteChildren:目前使用者是否可刪除這個資料夾的子項。
  • capabilities/canMoveChildrenOutOfDrive:目前使用者能否將這個資料夾的子項移至共用雲端硬碟外。
  • capabilities/canMoveChildrenWithinDrive:目前使用者是否可在共用雲端硬碟中移動這個資料夾的子項。
  • capabilities/canMoveItemWithinDrive:目前使用者是否可在共用雲端硬碟中移動這個共用雲端硬碟項目。
  • capabilities/canReadDrive — 目前使用者是否擁有這個檔案所屬共用雲端硬碟的讀取權限。
  • capabilities/canTrashChildren:是否要讓目前的使用者刪除這個資料夾的子項。
  • driveId:檔案所在的共用雲端硬碟 ID。
  • trashingUser:將檔案移至垃圾桶的使用者。
  • trashedTime:項目移至垃圾桶的時間。

系統不會為共用雲端硬碟中的檔案填入下列欄位:

  • permissions:由於共用雲端硬碟 ACL 可能的大小,因此系統不會在檔案中傳回權限。使用支援分頁功能的 permissions.list 方法,列出共用雲端硬碟內檔案或共用雲端硬碟本身的權限。
  • ownersownerNamesownedByMe — 共用雲端硬碟中的檔案由共用雲端硬碟擁有,而非個別使用者。
  • folderColorRgb:資料夾無法個別上色
  • shared:共用共用雲端硬碟中的所有項目。
  • writersCanShare:目前無法依共用雲端硬碟中的角色限制共用。

只有在使用者獲得項目的檔案存取權限時,才需要設定下列欄位:

  • sharedWithMeDate
  • sharingUser

將下列欄位與共用雲端硬碟搭配使用時,需要特別考量:

  • parents.isRoot:只有「我的雲端硬碟」根資料夾才有這個欄位;對共用雲端硬碟的頂層資料夾而言,這個欄位的值為「false」。
  • parents:如果要求的使用者並非共用雲端硬碟的成員,且沒有父項存取權,父項清單就不會顯示父項清單。此外,除了頂層資料夾外,如果檔案位於共用雲端硬碟中,父項清單只能包含一個項目。

  • capabilities/canRemoveChildren — 使用 capabilities/canDeleteChildrencapabilities/canTrashChildren

Permissions 資源

系統只會針對位於共用雲端硬碟中的檔案填入 permissionDetails 欄位。這個欄位是這個共用雲端硬碟檔案採用或繼承的壓縮權限清單。這個欄位是僅供輸出的欄位,僅適用於共用雲端硬碟項目。此外,

  • 已定義 organizerfileOrganizer 的兩個新角色。
  • permissions.list 現已支援分頁。

Changes 資源

共用雲端硬碟的 Changes 資源提供下列新欄位:

  • changeType:變更的類型。可能的值為 filedrive
  • driveId:與這項變更相關聯的共用雲端硬碟 ID。
  • drive:共用雲端硬碟的更新狀態。如果 changeTypedrive,且使用者仍是該共用雲端硬碟的成員,則會顯示。

如果您的應用程式需要將內容同步到共用雲端硬碟或追蹤活動,則可能需要進行其他變更。詳情請參閱「追蹤使用者和共用雲端硬碟的變更」。