我想使用Admin SDK获取Google群组中的成员列表。
但是我没有得到如何做到这一点。我在下面找到了链接 - https://developers.google.com/admin-sdk/directory/v1/guides/manage-group-members
但我不知道如何在Google应用脚本中使用POST方法。
有人可以用一个例子来指导我吗?
已更新
我得到了如下输出,但我想分别为该组的每个成员访问每个元素(角色,电子邮件)。那可能吗??
mongo --eval "db.fsyncUnlock();"
提前致谢。
答案 0 :(得分:3)
请按照以下步骤进行操作
===在Apps脚本编辑器中粘贴以下代码。
var onSheet = SpreadsheetApp.getActiveSpreadsheet();
var groupKey = "googlegroupid@domainName.com"
function MainGetUserList()
{
var rows = [];
var pageToken, page;
do {
page = AdminDirectory.Members.list(groupKey,
{
domainName: 'YOURDOMAINNAME.@com',
maxResults: 500,
pageToken: pageToken,
});
var members = page.members
if (members)
{
for (var i = 0; i < members.length; i++)
{
var member = members[i];
var row = [groupKey, member.email, member.role, member.status];
rows.push(row);
}
}
pageToken = page.nextPageToken;
} while (pageToken);
if (rows.length > 1)
{
var sheetData = onSheet.getSheetByName("Sheet1")
var header = ['Group Name', 'User Id', 'User role', 'User Status'];
sheetData.clear()
sheetData.appendRow(header).setFrozenRows(1);
sheetData.getRange(2, 1, rows.length, header.length).setValues(rows);
}
}
==&GT;运行MainGetUserList()函数允许权限,打开你的Google Sheet刷新它。
完成。
我测试了这个20k会员。 谢谢
答案 1 :(得分:0)
尝试使用Members:list
来检索组中所有成员的列表。
HTTP请求
GET https://www.googleapis.com/admin/directory/v1/groups/groupKey/members
您的应用程序发送到Directory API的每个请求都必须包含授权令牌。该令牌还可识别您的Google应用程序。您的申请必须使用OAuth 2.0来授权请求。
HTTP响应:
{
"kind": "admin#directory#members",
"etag": etag,
"members": [
members Resource
],
"nextPageToken": string
}