我想创建一个电子表格,让用户创建自己的Google群组以用于邮件列表。
我可以使用以下代码将域成员添加到grup:
function addGroupMember (groupEmail, userEmail,ruolo) {
var member = {
email: userEmail,
role: ruolo
};
try {
member = AdminDirectory.Members.insert(member, groupEmail);
Logger.log('User %s added as a member of group %s.', userEmail, groupEmail);
}catch(e){
Logger.log("adding in:" + groupEmail + " failed user email: "+ userEmail + " role: " + ruolo + " error:" + e);
}
但是,如果我尝试添加非域用户(我可以在群组管理中执行此操作),则会因此错误而失败:
[16-08-12 14:54:13:113 CEST]加入:mygropu@mydomain.it用户电子邮件失败:user@otherdomanin.it角色:MEMBER错误:例外:输入无效:memberKey
答案 0 :(得分:0)
由于错误日志显示异常Invalid Input: memberKey
,这意味着您可能无法提供真正的memberKey / authentic成员密钥。 memberKey
是用户或群组的邮件电子邮件地址,用户的别名电子邮件地址或用户的唯一id
要获取memberKey
,您可以使用Members:get
检索组成员属性。
HTTP请求:
GET https://www.googleapis.com/admin/directory/v1/groups/groupKey/members/memberKey
响应:
{
"kind": "admin#directory#member",
"etag": etag,
"id": string,
"email": string,
"role": string,
"type": string
}
id
是群组成员的唯一ID。会员 id 可用作会员请求URI的 memberKEy
答案 1 :(得分:0)
我做了一些测试,找到了线索!
例外:"未找到资源:email@otherdomain.com"当另一个域名是gmail.com并且邮件地址不存在时,它会上升。
使用任何其他域甚至可用于不存在的地址!我认为G.A.S.只检查他自己的域名地址,但不能检查其他域名。