This Google Apps Script will help your add-on determine whether the current logged-in user is on GSuite (Google Apps) or if they are using the consumer (free) Google Account. G Suite users have higher email sending limits and have more storage space in Google Drive vis-a-vis free accounts.
The code snippet is courtesy +FaustinoRodriguez.
function isGSuiteUser() { var url = "https://www.googleapis.com/oauth2/v2/userinfo"; var oAuthToken = ScriptApp.getOAuthToken(); var params = { "method": "GET", "headers": { "Authorization": "Bearer " + oAuthToken }, muteHttpExceptions: true }; var response = UrlFetchApp.fetch(url, params); var userInfo = JSON.parse(response); if (userInfo.hasOwnProperty("hd")) { return userInfo.email + " is using GSuite"; } return userInfo.name + " is not using G Suite"; }
G Suite (Google Apps) users will have the hd attribute set to true while is not available for consumer account. One more thing – you’ll only know if a user belongs to G Suite domain, it won’t saying anything about the version of G Suite that a user has subscribed to.
A user could be part of basic GSuite (or the legacy version of Google Apps) or they could be on G Suite enterprise, the response would be the same.