Как получить все группы для пользователя в Google App Script?

Есть ли способ получить все группы для пользователя? Мой код, который не работает должным образом, ниже;

  var pageToken = null;
  var filter= {userKey: "abc@gmail.com"}; //this is a member's email address
  do {
    var result = AdminDirectory.Groups.list(filter);
    filter.pageToken = result.pageToken;

    if(result.groups) {
      groups = groups.concat(result.groups.map(function(group) {
        return {
          name: group.name
        };
      }));
    }
  }
  while(result.pageToken);

  for(i = 0; i < groups.length; i++) {
    console.log(groups[i].name);
  }

Возвращает пустой массив групп.

1 ответ

Код проще, нет необходимости использовать токен. Возвращаемое значение представляет собой массив объектов с несколькими свойствами (см. JSON).

Это идет так

function myFunction() {
  var user = AdminDirectory.Groups.list({userKey:"userEmail@xxx.yyy"});
  var groupMembership = [];
  var userGroupProperties = user.groups;
  Logger.log(JSON.stringify(userGroupProperties));
  for(var n=0 ; n<userGroupProperties.length ; n++){
    groupMembership.push(userGroupProperties[n].name)
  }
  Logger.log('groupMembership = '+groupMembership);
}
Другие вопросы по тегам