1

チーム ドライブ内でのファイル作成を自動化するために、Google Apps Script と Drive API の V2 (スクリプトで V3 はまだ利用できないと思います) を使用しています。スクリプトを使用してエディターを追加したいのですが、成功しません。

FolderIterator標準の方法でを使用して、チーム ドライブと子フォルダにアクセスできますDriveApp

試行 1

function addUserToTeam(email, folders) {

  // Open the team drive and get all the folders
  var teamFolders = DriveApp.getFolderById('TEAMDRIVEIDSTRING').getFolders();

  var folders = ["folderIdToMatch"]  // This may hold multiple folders

  try {
  // Loop an array of folder IDs
    for(var i=0; i<folders.length; i++) {

      // Check the team drive folders for a matching name
      while(teamFolders.hasNext()) {
        var teamFolder = teamFolders.next();
        if(folders[i] == teamFolder.getId()) {
          teamFolder.addEditor(email);
        }
      }
    }
  } catch(e) {
    Logger.log(e);
  }
}

これは で失敗しましException: Cannot use this operation on a Team Drive itemた。

試行 2

リソースを代入して Drive API を試しましたteamFolder.addEditor(email)Permissions

if(folders[i] == teamFolder.getId()) {
  var resource = {
    "type":"user",
    "role":"writer",
    "value": email
  }
  Drive.Permissions.insert(resource, teamFolder.getId());
}

これはFile not foundエラーで失敗します。

メソッドを使用してフォルダー (またはファイル) を見つけることができますDriveApp。Drive API で同じことを試みても失敗します。

API ではチーム ドライブ ファイルにアクセスできないというドキュメントは見つかりません。私のアプローチに何か問題がありますか?

4

2 に答える 2