공유 드라이브와 내 드라이브 API의 차이점

공유 드라이브는 내 Drive와는 다른 구성, 공유, 소유권 모델을 따릅니다. 따라서 공유 드라이브의 콘텐츠에는 일부 내 드라이브 작업이 허용되지 않습니다. 이 문서에서는 공유 드라이브별 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 메서드를 사용하여 공유 드라이브 내 파일 또는 공유 드라이브 자체의 권한을 나열합니다.
  • owners, ownerNames, ownedByMe: 공유 드라이브 내 파일은 공유 드라이브가 소유하며, 개별 사용자는 소유하지 않습니다.
  • folderColorRgb: 폴더에 개별적으로 색상을 지정할 수 없음
  • shared: 공유 드라이브의 모든 항목이 공유됩니다.
  • writersCanShare — 현재 공유 드라이브에서 역할별로 공유를 제한할 수는 없습니다.

다음 필드는 사용자에게 항목에 대한 파일 액세스 권한이 부여된 경우에만 설정됩니다.

  • sharedWithMeDate
  • sharingUser

공유 드라이브와 함께 사용할 때 다음 필드에 특히 주의해야 합니다.

  • parents.isRoot — 이 필드는 내 드라이브 루트 폴더에만 true이고 공유 드라이브 최상위 폴더에는 false입니다.
  • parents: 요청하는 사용자가 공유 드라이브의 구성원이 아니고 상위 항목에 액세스할 수 없는 경우 상위 항목이 상위 항목 목록에 표시되지 않습니다. 또한 파일이 공유 드라이브 내에 있는 경우 최상위 폴더를 제외하고 상위 요소 목록에 항목이 정확히 하나 포함되어야 합니다.

  • capabilities/canRemoveChildrencapabilities/canDeleteChildren 또는 capabilities/canTrashChildren을 사용합니다.

Permissions 리소스

permissionDetails 필드는 공유 드라이브 내에 있는 파일에 대해서만 채워집니다. 이 필드는 이 공유 드라이브 파일에 있거나 이 공유 드라이브 파일에서 상속된 축약된 권한 목록입니다. 이 필드는 출력 전용 필드이며 공유 Drive 항목에만 표시됩니다. 또한 다음 사항에 유의하세요.

  • organizerfileOrganizer라는 두 가지 새로운 역할이 정의되었습니다.
  • 이제 permissions.list가 페이지 매김을 지원합니다.

Changes 리소스

공유 드라이브의 Changes 리소스에서 다음과 같은 새로운 필드를 사용할 수 있습니다.

  • changeType: 변경 유형입니다. 가능한 값은 filedrive입니다.
  • driveId: 이 변경사항과 연결된 공유 드라이브의 ID입니다.
  • drive: 업데이트된 공유 드라이브 상태입니다. changeTypedrive이고 사용자가 여전히 공유 드라이브의 회원인 경우 표시됩니다.

콘텐츠를 공유 드라이브와 동기화하거나 활동을 추적해야 하는 애플리케이션에는 추가 변경사항이 필요할 수 있습니다. 자세한 내용은 사용자 및 공유 드라이브의 변경사항 추적하기를 참고하세요.