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

AirTable自动化脚本:如何获取触发提交的表单数据?

Airtable表单提交自动化脚本:获取提交数据并同步远程ID

核心解决思路

表单提交后的数据会直接存入对应Airtable表格的新记录中,自动化脚本触发时,只需获取这条新创建的记录即可拿到表单数据,无需直接调用表单对象。


步骤1:配置自动化脚本的输入变量

在表单提交自动化流程的脚本步骤中:

  • 点击「添加输入变量」,类型选择「记录」
  • 选择表单关联的目标表格(即你代码里的"Planning Database"),变量名设为submittedRecord
  • 该变量会自动传入表单提交生成的新记录,供脚本调用

步骤2:脚本中获取表单提交的记录数据

替换你之前手动选择记录的代码,改为从自动化输入变量中获取记录:

// 获取自动化传入的提交记录配置
const config = input.config();
// 关联目标表格
const table = base.getTable("Planning Database");
// 获取完整的提交记录数据
const submittedRecord = await table.selectRecordAsync(config.submittedRecord.id);

// 示例:提取表单字段值(替换为你的实际字段名)
const userName = submittedRecord.getCellValue("姓名");
const userEmail = submittedRecord.getCellValue("邮箱");

步骤3:发送HTTP请求并保存远程ID

调用远程数据库API创建记录,拿到返回的唯一ID后更新Airtable对应记录:

try {
  // 发送POST请求到远程数据库API
  const response = await fetch("你的远程数据库API地址", {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      // 按需添加认证头部,比如:
      // "Authorization": "Bearer 你的认证令牌"
    },
    body: JSON.stringify({
      // 映射表单字段到远程数据库需要的格式
      name: userName,
      email: userEmail
    })
  });

  if (!response.ok) {
    throw new Error(`请求失败,状态码:${response.status}`);
  }

  // 解析返回的远程ID
  const remoteResponse = await response.json();
  const remoteRecordId = remoteResponse.id; // 按实际返回字段调整

  // 将远程ID存入Airtable的对应字段
  await table.updateRecordAsync(submittedRecord.id, {
    "远程数据库ID": remoteRecordId // 替换为你的Airtable字段名
  });

  console.log("同步完成,远程ID已保存");
} catch (error) {
  console.error("同步出错:", error);
}

关键说明

  • input.recordAsync()是用于手动运行脚本时让用户选择记录的,不适合自动化触发场景
  • base.getForm()仅能获取表单的配置信息(如名称、字段设置),无法直接拿到用户提交的数据

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 16:10:05