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

如何对接Dear Inventory API与Google Sheets实现数据自动同步?

需求可行性结论

这个需求完全可以实现。Dear Inventory官方提供了公开的REST API支持外部系统拉取/推送产品、销售订单等数据,Google Sheets也提供了原生的Apps Script工具和开放API,二者对接没有技术障碍,自动更新也可以通过定时触发机制实现。

具体实现方法

方法1:使用Google Apps Script实现同步 (零额外成本、无需额外服务器,最适合非专业开发用户使用)

操作步骤如下:

  • 首先登录Dear Inventory后台,在集成设置页面生成API凭证,获取Account ID和API Key,按需给凭证开通产品、销售订单相关的只读/读写权限
  • 打开你需要存储数据的Google Sheets,点击顶部菜单「扩展程序」→「Apps Script」进入脚本编辑器
  • 在编辑器中编写调用Dear API拉取数据的逻辑,示例代码片段参考:
// 拉取Dear产品清单示例
function syncDearProductsToSheet() {
  const DEAR_ACCOUNT_ID = "替换为你的Dear Account ID";
  const DEAR_API_KEY = "替换为你的Dear API Key";
  // 生成认证头
  const authStr = `${DEAR_ACCOUNT_ID}:${DEAR_API_KEY}`;
  const encodedAuth = Utilities.base64Encode(authStr);
  const requestOptions = {
    method: "GET",
    headers: {
      "Authorization": `Basic ${encodedAuth}`,
      "Content-Type": "application/json"
    },
    muteHttpExceptions: true
  };
  // 调用Dear产品接口
  const apiResponse = UrlFetchApp.fetch("https://inventory.dearsystems.com/ExternalApi/v2/Product", requestOptions);
  if (apiResponse.getResponseCode() === 200) {
    const productList = JSON.parse(apiResponse.getContentText()).Products;
    // 写入到对应sheet
    const targetSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("产品清单");
    targetSheet.clearContents();
    // 写入表头
    targetSheet.appendRow(["产品ID", "产品名称", "SKU", "库存数量", "成本价"]);
    // 遍历写入产品数据
    productList.forEach(item => {
      targetSheet.appendRow([item.ID, item.Name, item.SKU, item.StockLevel, item.Cost]);
    });
  }
}
  • 销售清单的同步逻辑和上述逻辑一致,仅需要将接口地址替换为Dear的销售订单接口,调整写入的表头和字段即可
  • 配置自动更新规则:在Apps Script编辑器左侧菜单点击「触发器」,添加新触发器,选择你编写的同步函数,设置触发频率(可按分钟/小时/天/周自定义),保存后即可实现数据自动更新。

方法2:使用Python脚本定时运行 (适合有开发能力、需要自定义复杂逻辑的用户)

操作步骤如下:

  • 同样先在Dear Inventory后台获取API凭证,然后前往Google Cloud控制台启用Google Sheets API,生成服务账号密钥文件,将服务账号的邮箱添加到目标Google Sheets的协作者列表,授予编辑权限
  • 本地安装需要的依赖库:pip install requests gspread oauth2client
  • 编写Python脚本:先通过requests库调用Dear API拉取产品、销售数据,做对应的数据处理后,通过gspread库写入到Google Sheets的指定位置
  • 在本地设备或者云服务器上配置定时任务(Linux系统用crontab,Windows系统用任务计划程序),按你需要的更新频率定时运行脚本即可。

注意事项

  • 两个平台的API都有调用频率限制:Dear API默认每分钟最多调用100次,Google Sheets API免费版每分钟最多调用300次,不要设置过高的同步频率避免触发限流
  • 不要将API凭证、服务账号密钥硬编码到公开的脚本或代码仓库中,避免账号数据泄露
  • 同步逻辑中建议增加异常判断,接口请求失败时不要清空表格原有数据,避免数据丢失

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 21:15:06