将两个域上的用户的Google Apps目录拉入同一电子表格

时间:2016-09-18 13:20:23

标签: javascript google-apps-script google-sheets google-admin-sdk

我们最近重新打上了品牌,其中包括更改我们的域名。在相同的Google Apps"帐户中,"我们现在有两个域名,klht.org和kingschoolct.org,目前我们都有用户。

去年,在这个社区的帮助下,我创建了一个Google Apps脚本,可以在电子表格中写入我们所有Google Apps用户的目录。现在,需要更新该脚本,以便从两个域中提取用户(否则,我们只会有一些人)。

这是当前的脚本:

function writeToSpreadsheet(){
  var values = [];
  var users = [];
  var userlist = {users:[]};
  var nextPageToken = '';
  var listObject = {
      domain:'klht.org',
      maxResults: 500,
    }

  do {

    if (nextPageToken !== '') {
      listObject.pageToken = nextPageToken;
    }  

    userlist = AdminDirectory.Users.list(listObject);

    nextPageToken = userlist.nextPageToken;

    users = users.concat(userlist.users);

  } while (nextPageToken);

  for (var i=0; i<users.length; i++){
    values.push([users[i].name.givenName, users[i].name.familyName, users[i].primaryEmail, users[i].orgUnitPath]);   
  }

  debugger;
  var spreadsheetID = '1JLDD2wm0_udmTn9ZHvdKhL_Ok3SvKYFqkBeiA1GdnYc';
  SpreadsheetApp.openById(spreadsheetID).getSheets()[0].getRange(2, 1, values.length, values[0].length).setValues(values);
}

我尝试更新顶部以添加第二个域,如此...

var listObject = {
  domain:'klht.org',
  maxResults: 500,
  domain:'kingschoolct.org',
  maxResults: 500,
}

...但这只会吸引用户来自kingschoolct.org。

我知道如何从两个域中吸引用户?

谢谢!

1 个答案:

答案 0 :(得分:1)

我找到了解决方案,即使用&#34;客户&#34;参数而不是&#34;域。&#34; (填写参数列表here)。 Here's how I found my account's customerID.就像魅力一样!