飞书 Bitable
Beta 全免费

飞书多维表格对接全流程

10 分钟把 Tariffin AI 归类 + 13 国关税 + 落地成本自动写进你的飞书多维表格, 无需写代码,无需后端服务器。本文档基于飞书原生「自动化流程」功能,所有操作都在飞书界面里完成。

1. 工作原理

Tariffin 暴露一个 webhook(https://tariffin.com/api/lark/classify), 它接受商品名 + 目的国,返回 HS 编码、关税率、落地成本。飞书多维表格的「自动化流程」可以监听某一列变化, 调用 webhook,把返回值写到指定列。整个过程是这样:

01

你在飞书表格新增「商品名」「目的国」等输入列

02

你新增「HS 编码」「MFN 税率」「落地成本」等输出列

03

配置一条飞书自动化流程:商品名填好 → POST 调用 Tariffin webhook

04

把返回值映射回输出列,完成

免费配额: 每把 API 密钥每分钟 60 次调用,无月度上限。一般中小团队完全够用。

2. 准备工作(5 分钟)

步骤 1

在 Tariffin 注册并签发一把 API 密钥

访问 Dashboard → API 密钥,点「签发新密钥」,输入名称(如「飞书表格」),复制完整密钥(只显示一次,格式 tfk_xxxxxxxx...)。

密钥安全: 完整密钥只显示一次,关闭弹窗就再也看不到了。如果你丢了,撤销重发即可。
步骤 2

在飞书创建或打开你的多维表格

在飞书工作台 → 多维表格,新建一个空表格,或者打开已有的。 建议先用一张测试表跑通流程再迁到生产表。

3. 设计表格字段

按下表新增 8 个字段。前 4 个是「你填的」,后 4 个会被自动填(暂时留空)。 字段名可以改,但要和后面自动化里映射的一致。

字段名类型是否必填用途
商品名
↓ 输入 in
多行文本商品描述,任意语言
目的国
↓ 输入 in
单选(US/CN/EU/UK/JP/KR/IN/AU/CA/MX/BR/VN/TH)ISO 双字母代码
申报货值(USD)
↓ 输入 in
数字默认 1000
原产国
↓ 输入 in
单选(CN/US/...)用于 FTA 判定,可空
HS 编码
↑ 输出 out
文本自动填入,6-10 位
MFN 税率
↑ 输出 out
数字(百分比)自动填入
落地成本(USD)
↑ 输出 out
数字自动填入
AI 归类理由
↑ 输出 out
多行文本自动填入
提示: 字段类型设错也没关系,飞书会自动转换;数字字段如果设成「百分比」格式,Tariffin 返回 0.024 会显示为「2.4%」。

4. 配置自动化流程

在多维表格右上角点 ⚙️ 自动化 → 「新建流程」→ 选「从空白开始」。然后按下面 3 步配置。

步骤 1

设置触发器:当「商品名」字段被填写时

  • 触发器类型:当记录修改时
  • 监听字段:勾选 「商品名」
  • 修改条件:从空变为有值(避免重复触发)
步骤 2

添加动作:发送 HTTP 请求

点「下一步」→「添加动作」→ 选「发送 HTTP 请求」。配置如下:

请求方式POST
URLhttps://tariffin.com/api/lark/classify
请求头 AuthorizationBearer tfk_xxxxxxxxxxxxxxxxxxxx
请求头 content-typeapplication/json
请求体格式JSON

请求体 JSON(把 {{字段名}} 替换为飞书的字段引用,飞书右侧面板可以直接点击插入):

{
  "product_name": "{{商品名}}",
  "destination": "{{目的国}}",
  "declared_value_usd": {{申报货值(USD)}},
  "origin": "{{原产国}}"
}
关键: Authorization 请求头里的密钥不能拼错,前缀是 Bearer (注意空格),然后是你的完整 tfk_... 密钥。 没带这个头或写错都会返回 401。
步骤 3

把响应映射回字段

飞书自动化的「响应」步骤可以从 JSON 响应中取字段写回当前记录。新增 4 个「更新记录」动作, 或在动作里直接配置「写入字段」,按下表映射:

飞书字段JSON 取值说明
HS 编码$.hs_code6-10 位字符串
MFN 税率$.mfn_rate0.024 表示 2.4%
落地成本(USD)$.landed_cost_usd数字
AI 归类理由$.reasoning中文文本
可选返回字段: 响应里还有 description_zh / description_en (HS 中英文描述)、confidence(0-1 置信度)、source_url(关税源链接),按需添加列即可。完整响应格式见 第 6 节
步骤 4

启用流程并测试

右上角切到「启用」状态。回到表格,新增一行,填入「商品名」(如「便携蓝牙音箱」) 和「目的国」(如 US),保存。等 5-10 秒,后面 4 个输出列会自动填上。

调试技巧: 在飞书自动化的「运行日志」可以看到每一次调用的请求体和响应,排查问题非常方便。

5. 请求格式详解

POST https://tariffin.com/api/lark/classify

请求头

Authorization: Bearer tfk_xxxxxxxxxxxxxxxxxxxxxxxx
content-type: application/json

请求体字段

字段类型必填默认说明
product_namestring商品描述,2-2000 字符,任意语言
destinationstringISO 2 字母国家码:US / CN / EU / UK / JP / KR / IN / AU / CA / MX / BR / VN / TH
declared_value_usdnumber100申报货值(USD),用于计算落地成本
originstring原产国 ISO 码,影响 FTA 优惠判定,可空

完整请求示例

curl -X POST https://tariffin.com/api/lark/classify \
  -H "Authorization: Bearer tfk_xxxxxxxxxxxxxxxxxxxx" \
  -H "content-type: application/json" \
  -d '{
    "product_name": "便携蓝牙音箱,塑料外壳,USB-C,5W",
    "destination": "US",
    "declared_value_usd": 1000,
    "origin": "CN"
  }'

6. 响应格式详解

字段定义

字段类型说明
hs_codestringHS 编码,6-10 位
description_enstringHS 编码的英文描述
description_zhstringHS 编码的中文描述
confidencenumberAI 归类置信度,0-1
reasoningstringAI 归类推理过程,中文
mfn_ratenumber / nullMFN 税率,0.024 = 2.4%(可空,代表暂无数据)
full_codestring / null所在国完整税则号(如美国 HTS 10 位)
sourcestring / null数据来源,如 USITC / CBIC / EU-TARIC
source_urlstring / null官方源链接,可直接点开核对
landed_cost_usdnumber / null落地成本(美元)
landed_cost_localnumber / null落地成本(目的国本币)
currencystring / null本币代码,如 CNY / EUR / JPY
effective_rate_percentnumber / null综合税负百分比
detected_languagestring检测到的输入语言,如 zh / en
providerstring底层 AI 提供方,固定 deepseek
latency_msnumber本次调用耗时(毫秒)

完整响应示例

{
  "hs_code": "851829",
  "description_en": "Other loudspeakers, single",
  "description_zh": "其他扬声器,单声道",
  "confidence": 0.92,
  "reasoning": "便携蓝牙音箱,塑料外壳,USB-C 充电,5W 输出 → 归入 HS 8518.29(其他扬声器,单只)。",
  "mfn_rate": 0.024,
  "full_code": "8518.29.80",
  "source": "USITC HTS",
  "source_url": "https://hts.usitc.gov/?query=8518.29",
  "landed_cost_usd": 1117.6,
  "landed_cost_local": 1117.6,
  "currency": "USD",
  "effective_rate_percent": 2.4,
  "detected_language": "zh",
  "provider": "deepseek",
  "latency_ms": 1843
}

7. 错误码与排查

HTTPerror原因 & 处理
400invalid_request请求体格式错误。检查 JSON 是否合法,字段名拼写,数字类型是否真的是数字
400unsupported_destination目的国不在 13 国支持范围内。看响应里的 supported 数组
401unauthorizedAuthorization 头缺失或密钥错误。检查密钥是否带 Bearer 前缀,有没有多余空格
429rate_limited超过 60 次/分钟。等响应头 retry-after 秒数后重试
500服务端异常。一般是 LLM 上游波动,重试通常即可。持续报错请联系我们
密钥泄露怎么办: 立刻去 Dashboard → API 密钥 撤销该密钥(撤销后所有用此密钥的调用立即失效),重新签发一把,把新密钥换到飞书自动化的请求头里。

8. 常见场景与扩展

8.1 多目的国对比

想一次比对同一商品在 13 国的关税?在飞书里建一个「目的国」单选填多个值的写法不太可行 —— 推荐的做法是:多维表格用「关联表」,主表填商品,从表为该商品 × 13 个国家 13 条记录, 每条记录的「目的国」不同,自动化逐条触发。这样每次只调 1 个国家,响应快、容易排错。

8.2 批量回填存量数据

如果你已经有一张 1000 行的旧表想批量归类:打开自动化的「修改触发条件」, 临时改成「定时触发,每天 8 点扫描所有空 HS 字段并补充」,跑完后再切回「按需触发」。 注意 60 次/分钟限制,1000 行预计需要 ~17 分钟。

8.3 多个团队成员共用

推荐每个团队成员或每个使用场景签发独立的 API 密钥(在 Dashboard 里给密钥起不同名称, 如「张三-生产」「李四-测试」)。这样:

  • 密钥使用量、最近调用时间分别统计
  • 某人离职 → 撤销他的密钥,不影响其他人
  • 限流按密钥分桶,互不抢配额

8.4 在脚本里使用同一 webhook

这个 webhook 本质就是 REST API,不局限于飞书。任何能发 HTTP 请求的工具都可以调: Python requests、n8n、Zapier、Bash 脚本,只要带上 Bearer 密钥就行。

8.5 在线测试

配置自动化之前,先在 Dashboard → 飞书集成 → Webhook 测试 输入一个商品名一键调用,确认你账号的密钥能正常工作。

9. 常见问题

飞书的自动化每天有调用次数上限吗?

飞书自动化本身有「次数 / 月」限额(免费版 100 次/月,付费版更高)。这个限额是飞书侧的,和 Tariffin 没关系。如果你团队量大,推荐升级飞书付费版,或者改用「飞书脚本」直接调用 webhook(脚本不算自动化次数)。

可以一次性传一批商品名吗?

当前 webhook 是单次单商品。需要批量?在飞书表格里设置「按行触发」,飞书会自动逐行调用。或在自定义脚本里循环调用 webhook,注意 60 次/分钟限速。

返回的 mfn_rate 是 null 怎么办?

代表 Tariffin 数据库暂时没有该 HS × 国家组合的关税明细(可能爬虫还没覆盖到)。常见于偏门 HS 编码或冷门国家。前端会自动用静态 fallback 兜底,但仍可能为 null。这种情况建议手工去对应国家海关官网核对(响应里的 source_url 给了关税源链接,如有)。

AI 归类准确吗?置信度怎么用?

基于 5,000 条真实报关单评测,Top-3 准确率超过 92%。建议把 confidence < 0.7 的记录标记成「待人工复核」,自动化里加一个条件分支:if confidence < 0.7 then 发飞书消息提醒。

数据多久更新一次?

美国 USITC/CBP、中国 GACC、欧盟 TARIC、印度 CBIC、日本财务省等关键源每日抓取,其余按周。每条数据都有 verified_at 时间戳(响应里 source_url 可以直接点过去核对原文)。

支持其他语言的商品描述吗?

支持任意语言。Tariffin 内部会自动检测语言并翻译成英文后再归类。响应里的 detected_language 字段告诉你检测到的是什么语言。

配好了,试一下?

在 Dashboard 签发密钥 + 在线测试 webhook,5 分钟跑通最小可用流程。