如何在Google应用程序脚本(Admin SDK)中获取Google网上论坛的成员列表? [英] How to get the list of members in a Google group in Google app script (Admin SDK)?
问题描述
我想使用Admin SDK来获取Google网上论坛的成员列表.
I would like to get a list of members in a Google group using Admin SDK.
但是我没有得到该怎么做.我在下面的链接中找到了 https://developers.google. com/admin-sdk/directory/v1/guides/manage-group-members
But im not getting how to do this. I found below link - https://developers.google.com/admin-sdk/directory/v1/guides/manage-group-members
但是我不知道如何在Google应用脚本中使用POST方法.
But I do not know how to use POST method in Google app script.
有人可以帮我举个例子吗?
Can someone please guide me with an example?
已更新
我得到的输出如下,但是我想分别访问组中每个成员的每个元素(角色,电子邮件).那可能吗??
I got the output as below, But i would like to access each element (role,email) separately for each member of the group. Is that possible??
{
"role": "OWNER",
"kind": "admin#directory#member",
"type": "USER",
"etag": "\"fdo0/1gUrEe8bli75zvzmqFHyH3cPzlQ\"",
"id": "107108832717913338955",
"email": "useremailid@domain.com",
"status": "ACTIVE"
}
{
"role": "OWNER",
"kind": "admin#directory#member",
"type": "USER",
"etag": "\"fdo0/1gUrEe8bli75zvzmqFHyH3cPzlQ\"",
"id": "107108832717913338955",
"email": "useremailid@domain.com",
"status": "ACTIVE"
}
谢谢.
推荐答案
请按照以下步骤操作,
- 使用超级管理员帐户登录G驱动器.
- 创建一个Google表格.
- 转到工作表的工具"菜单-脚本编辑器.保存脚本项目项目. 启用管理SDK
- 应用程序脚本编辑器,单击资源菜单,选择高级Google服务-在Admin Directory Apis的弹出窗口中,然后单击 Google Developers Console 链接. 开发者控制台-单击库->搜索API框,输入Admin sdk->单击管理Sdk api链接==> 启用,然后关闭开发者控制台.
- Login your G drive using super admin account.
- Create one Google sheet.
- Go to sheet Tool menu -- script Editor.. Save Script project project. Enable admin SDK
- Apps script editor click on Resources menu select Advance Google Services -- In Pop up on Admin Directory Apis then Click Google Developers Console link. Developer Console -- click on Library --> search APIs box enter Admin sdk --> click on admin Sdk api link ==> ENABLE and close dev console.
===在Apps脚本编辑器中,粘贴以下代码.
=== At Apps script editor paste following code.
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);
}
}
==>运行MainGetUserList()函数允许该权限,打开您的Google Sheet刷新它.
==> Run MainGetUserList() function allow the permission, open you Google Sheet refresh it.
完成.
我已经测试了这2万名成员. 谢谢
I have tested this 20k members. Thanks
这篇关于如何在Google应用程序脚本(Admin SDK)中获取Google网上论坛的成员列表?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!