I have deployed a spreadsheet bound script as an add-on. It worked when it was container bound. But now, as an add-on, I get a server error when I call DriveApp.getFolderById
function makeMap (){
console.log("start lesmap");
try{var map=DriveApp.getFolderById(DIPmapId); }catch(e){console.log("error map:"+e )}
try{var temp=DriveApp.getFileById(templateId);}catch(e){console.log("error tempfile:"+e) }
}
throws errors (in Dutch but meaning: server error, wait a while and try again):
2020-05-23 12:10:11.310 CEST error map:Exception: Er is helaas een serverfout opgetreden. Wacht enige tijd en probeer het dan nogmaals. 2020-05-23 12:10:11.347 CEST error tempfile:Exception: Er is helaas een serverfout opgetreden. Wacht enige tijd en probeer het dan nogmaals.
In the manifest file:
{
"timeZone": "Europe/Paris",
"dependencies": {
},
"exceptionLogging": "STACKDRIVER",
"oauthScopes": [
"https://www.googleapis.com/auth/spreadsheets",
"https://www.googleapis.com/auth/drive",
"https://www.googleapis.com/auth/script.container.ui"
]
}
In the G Suite Marketplace SDK Configuration OAuth 2.0-scopes
https://www.googleapis.com/auth/userinfo.email
https://www.googleapis.com/auth/userinfo.profile
https://www.googleapis.com/auth/spreadsheets
https://www.googleapis.com/auth/script.container.ui
https://www.googleapis.com/auth/drive
I have it installed and enabled in the spreadsheet. I run the function in the add-on menu in the spreadsheet, so I guess this is in authmode full? I have editor rights on the map and the file in Drive.
What am I missing?