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

Google表格脚本调用People API报错:PeopleApi未定义

解决Apps Script中PeopleApi未定义的错误

你遇到的ReferenceError: PeopleApi is not defined错误,核心原因是在Apps Script中添加People API服务后,正确的服务名称是People,而非PeopleApi,代码里的调用名称写错了。以下是具体修复步骤和修正后的代码:

修复步骤

  • 确认服务名称:在Apps Script的「Services」标签添加People API时,默认服务标识符为People,代码必须使用这个正确名称调用。
  • 移除多余全局代码:全局范围内的PeopleApi.getService().setToken(apiKey)不仅名称错误,而且服务会自动处理OAuth授权,无需手动设置令牌。
  • 替换代码中的错误调用:将所有PeopleApi替换为People。

修正后的完整代码

function onFormSubmit() {
  // 获取表单响应数据
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  var lastRow = sheet.getLastRow();

  var name = sheet.getRange(lastRow, 2).getValue();
  var phone = sheet.getRange(lastRow, 3).getValue();
  var address = sheet.getRange(lastRow, 4).getValue();

  // 初始化People API服务
  var peopleService = People.getService();

  // 构建联系人数据
  var person = {
    names: [{
      givenName: name
    }],
    addresses: [{
      formattedValue: address,
      type: "home"
    }],
    phoneNumbers: [{
      value: phone,
      type: "mobile"
    }]
  };

  // 创建联系人
  peopleService.people().createContact(person).execute();
}

额外注意事项

  • 第一次运行onFormSubmit函数时,会弹出权限授权窗口,需允许脚本访问你的联系人数据。
  • 确保Google Console中已启用People API(添加服务时通常会自动启用,可前往Console确认)。
  • 需正确配置表单触发事件:在Apps Script编辑器的「触发器」菜单中,添加「表单提交」触发器并绑定onFormSubmit函数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 10:40:57