返回顶部
a

airtableAirtable

|

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.6
安全检测
已通过
7,610
下载量
免费
免费
14
收藏
概述
安装方式
版本历史

airtable

Airtable

通过托管OAuth认证访问Airtable API。支持对数据库、表格和记录进行完整的增删改查操作。

快速开始

bash

从表格中列出记录


python < import urllib.request, os, json
req = urllib.request.Request(https://gateway.maton.ai/airtable/v0/{baseId}/{tableIdOrName}?maxRecords=100)
req.addheader(Authorization, fBearer {os.environ[MATONAPI_KEY]})
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

基础URL

https://gateway.maton.ai/airtable/{native-api-path}

将{native-api-path}替换为实际的Airtable API端点路径。网关会将请求代理到api.airtable.com,并自动注入您的OAuth令牌。

认证

所有请求都需要在Authorization头中包含Maton API密钥:

Authorization: Bearer $MATONAPIKEY

环境变量: 将您的API密钥设置为MATONAPIKEY:

bash
export MATONAPIKEY=YOURAPIKEY

获取您的API密钥

  1. 1. 在maton.ai登录或创建账户
  2. 前往maton.ai/settings
  3. 复制您的API密钥

连接管理

在https://ctrl.maton.ai管理您的Airtable OAuth连接。

列出连接

bash
python < import urllib.request, os, json
req = urllib.request.Request(https://ctrl.maton.ai/connections?app=airtable&status=ACTIVE)
req.addheader(Authorization, fBearer {os.environ[MATONAPI_KEY]})
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

创建连接

bash
python < import urllib.request, os, json
data = json.dumps({app: airtable}).encode()
req = urllib.request.Request(https://ctrl.maton.ai/connections, data=data, method=POST)
req.addheader(Authorization, fBearer {os.environ[MATONAPI_KEY]})
req.add_header(Content-Type, application/json)
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

获取连接

bash
python < import urllib.request, os, json
req = urllib.request.Request(https://ctrl.maton.ai/connections/{connection_id})
req.addheader(Authorization, fBearer {os.environ[MATONAPI_KEY]})
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

响应:
json
{
connection: {
connection_id: 21fd90f9-5935-43cd-b6c8-bde9d915ca80,
status: ACTIVE,
creation_time: 2025-12-08T07:20:53.488460Z,
lastupdatedtime: 2026-01-31T20:03:32.593153Z,
url: https://connect.maton.ai/?session_token=...,
app: airtable,
metadata: {}
}
}

在浏览器中打开返回的url以完成OAuth授权。

删除连接

bash
python < import urllib.request, os, json
req = urllib.request.Request(https://ctrl.maton.ai/connections/{connection_id}, method=DELETE)
req.addheader(Authorization, fBearer {os.environ[MATONAPI_KEY]})
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

指定连接

如果您有多个Airtable连接,请使用Maton-Connection头指定要使用的连接:

bash
python < import urllib.request, os, json
req = urllib.request.Request(https://gateway.maton.ai/airtable/v0/appXXXXX/TableName)
req.addheader(Authorization, fBearer {os.environ[MATONAPI_KEY]})
req.add_header(Maton-Connection, 21fd90f9-5935-43cd-b6c8-bde9d915ca80)
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF

如果省略此头,网关将使用默认(最早创建的)活动连接。

API参考

列出数据库

bash
GET /airtable/v0/meta/bases

获取数据库架构

bash
GET /airtable/v0/meta/bases/{baseId}/tables

列出记录

bash
GET /airtable/v0/{baseId}/{tableIdOrName}?maxRecords=100

使用视图:

bash
GET /airtable/v0/{baseId}/{tableIdOrName}?view=Grid%20view&maxRecords=100

使用筛选公式:

bash
GET /airtable/v0/{baseId}/{tableIdOrName}?filterByFormula={Status}=Active

使用字段选择:

bash
GET /airtable/v0/{baseId}/{tableIdOrName}?fields[]=Name&fields[]=Status&fields[]=Email

使用排序:

bash
GET /airtable/v0/{baseId}/{tableIdOrName}?sort[0][field]=Created&sort[0][direction]=desc

获取记录

bash
GET /airtable/v0/{baseId}/{tableIdOrName}/{recordId}

创建记录

bash
POST /airtable/v0/{baseId}/{tableIdOrName}
Content-Type: application/json

{
records: [
{
fields: {
Name: 新记录,
Status: Active,
Email: test@example.com
}
}
]
}

更新记录(PATCH - 部分更新)

bash
PATCH /airtable/v0/{baseId}/{tableIdOrName}
Content-Type: application/json

{
records: [
{
id: recXXXXXXXXXXXXXX,
fields: {
Status: Completed
}
}
]
}

更新记录(PUT - 完全替换)

bash
PUT /airtable/v0/{baseId}/{tableIdOrName}
Content-Type: application/json

{
records: [
{
id: recXXXXXXXXXXXXXX,
fields: {
Name: 已更新名称,
Status: Active
}
}
]
}

删除记录

bash
DELETE /airtable/v0/{baseId}/{tableIdOrName}?records[]=recXXXXX&records[]=recYYYYY

分页

使用pageSize和offset进行分页:

bash
GET /airtable/v0/{baseId}/{tableIdOrName}?pageSize=50&offset=itrXXXXXXXXXXX

当存在更多记录时,响应包含offset:

json
{
records: [...],
offset: itrXXXXXXXXXXX
}

代码示例

JavaScript

javascript
const response = await fetch(
https://gateway.maton.ai/airtable/v0/appXXXXX/TableName?maxRecords=10,
{
headers: {
Authorization: Bearer ${process.env.MATONAPIKEY}
}
}
);

Python

python
import os
import requests

response = requests.get(
https://gateway.maton.ai/airtable/v0/appXXXXX/TableName,
headers={Authorization: fBearer {os.environ[MATONAPIKEY]}},
params={maxRecords: 10}
)

注意事项

  • - 数据库ID以app开头
  • 表格ID以tbl开头(也可以使用表格名称)
  • 记录ID以rec开头
  • 每次创建/更新请求最多100条记录
  • 每次删除请求最多10条记录
  • 筛选公式使用Airtable公式语法
  • 重要:使用curl命令时,如果URL包含方括号(fields[]、sort[]、records[]),请使用curl -g禁用通配符解析
  • 重要:将curl输出通过管道传递给jq或其他命令时,环境变量(如$MATONAPIKEY)在某些shell环境中可能无法正确展开。管道传输时可能会收到Invalid API key错误。

错误处理

状态码含义
400缺少Airtable连接
401
Maton API密钥无效或缺失 | | 429 | 请求频率限制(每个账户10次/秒) | | 4xx/5xx | 来自Airtable API的透传错误 |

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 airtable-1776371674 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 airtable-1776371674 技能

通过命令行安装

skillhub install airtable-1776371674

下载

⬇ 下载 airtable v1.0.6(免费)

文件大小: 3.97 KB | 发布时间: 2026-4-17 15:15

v1.0.6 最新 2026-4-17 15:15
- Added the clawdbot metadata section with emoji, env variable requirements, and improved structure.
- No changes to code or logic; documentation updated with skill metadata enhancements.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部