У меня есть триггер, который запускается при отправке формы Google. Когда форма отправлена, она создает документ. Я хочу, чтобы скрипт триггера добавил пользователя, чтобы иметь возможность просматривать файл.
Мой код:
function onSubmitter(e){
var user = e.namedValues['Shareholder Name:'][0];
var email = e.namedValues['Shareholder Email:'][0];
var proxy1 = e.namedValues['1ST PROXY NOMINEE:'][0];
var proxy2 = e.namedValues['2ND PROXY NOMINEE:'][0];
var attendance = e.namedValues['ATTENDANCE:'][0];
var arrival = e.namedValues['ARRIVAL DATE:'][0];
var departure = e.namedValues['DEPARTURE DATE:'][0];
var certification = e.namedValues['CERTIFICATION:'][0];
var electronicsignature = e.namedValues['ELECTRONIC SIGNATURE:'][0];
var rowstart = e.range.getRow();
var app = SpreadsheetApp;
var activeSheet = app.getActiveSpreadsheet().getActiveSheet()
var pdflink = activeSheet.getRange(rowstart, 14).getValue();
var fileID = pdflink.toString().replace("https://drive.google.com/a/xxxxxx/file/d/", "");
fileID = fileID.toString().replace("/view?usp=drivesdk", "");
var id = DriveApp.getFileById(fileID);
var idtwo = id.getId();
Drive.Permissions.insert(
{
'role': 'reader',
'type': 'user',
'value': email
},
idtwo,
{
'sendNotificationEmails': 'false'
});
var templ = HtmlService.createTemplateFromFile('email_proxy');
templ.shareholderAccount = user;
templ.shareholderLink = pdflink;
templ.shareholderFriendlyName = user;
var message = templ.evaluate().getContent();
GmailApp.sendEmail(email, 'Proxy Confirmation', '',{
htmlBody: message
});
Полученная ошибка:
Вызов API для drive.permissions.insert завершился ошибкой: аутентифицированный пользователь не предоставил приложению 280983214043111 доступ на запись в файл 1GI0psQysSE9xuzs3W3vNs99qcCFSUUsF4T в onSubmitter (триггер: 48) **
С момента появления приложения я думал запускается под моей учетной записью, и у меня есть доступ к файлам, которые будут иметь необходимые разрешения. Я предполагаю, не учитывая, что он вызывается триггером?
Есть идеи, как я могу дать своему приложению возможность записи на все файлы на моем диске? Я могу запустить этот код напрямую, и он работает, но не при вызове триггером.