You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Apps Script中为日历事件添加拥有编辑权限的参与者?

实现方法

你可以直接用CalendarApp.Event对象自带的权限设置方法完成需求:

  • 给用户授予事件编辑权限:调用event.addEditor(邮箱地址)方法
  • 给用户授予仅查看权限:调用event.addViewer(邮箱地址)方法,和你原来使用的addGuest效果完全一致

修改后的示例代码

var event = CalendarApp.getCalendarById("你的日历ID").createEvent(
  "事件标题",
  new Date("事件开始时间"), 
  new Date("事件结束时间")
);

// 给editor数组用户添加编辑权限
for (var a = 0; a < editor.length; a++) {
  // 此处保留你原有的判断逻辑,注意原代码的判断条件`editor === editor[a-1][1]`疑似存在逻辑问题,可根据实际业务调整
  if (editor === editor[a][1]) {      
    event.addEditor(editor[a][0]);
  }
}  

// 给grupav数组用户添加仅查看权限
for (var j = 0; j < grupav.length; j++) {  
  Logger.log(grupav[j][0]);
  event.addViewer(grupav[j][0]);
}

补充说明

如果需要批量添加用户,可以直接调用addEditors(邮箱数组)、addViewers(邮箱数组)方法,直接传入一维邮箱地址数组即可,不需要循环,运行效率更高:

// 批量添加所有编辑者
event.addEditors(editor.map(item => item[0]));
// 批量添加所有查看者
event.addViewers(grupav.map(item => item[0]));

编辑者权限允许用户修改事件内容、增减参与者、删除事件,和日历所有者的事件操作权限基本一致;如果后续需要收回权限,对应调用removeEditor、removeViewer方法即可。

内容的提问来源于stack exchange,提问作者DragonHunter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 07:24:04