Author: neo Version: 0.0.1 Type: tool
企业微信智能表格插件,支持创建、添加、更新记录。
- ✅ 创建表格 (create_sheet): 创建新的智能表格,返回docid
- ✅ 查询子表 (get_sheets): 查询智能表格中的所有子表信息
- ✅ 添加记录 (add_rows): 向智能表格添加一条或多条记录
- ✅ 获取表格信息 (get_rows): 获取表格属性(工作表名称、行数、列数)
- ✅ 更新记录 (update_rows): 更新智能表格中指定记录
- 🔒 安全凭证管理: 企业ID和Secret加密存储在Provider中
- 🔄 自动Token管理: 自动获取和刷新access_token
创建自建应用:
- 登录企业微信管理后台: https://work.weixin.qq.com/
- 进入 "应用管理" → "应用" → "创建应用"
- 记录 AgentId 和 Secret
开启API权限:
- 进入应用详情页
- 点击 "企业可信IP" 配置(如需要)
- 进入 "协作" → "文档" → "API"
- 开启 "文档/智能表格" 相关接口权限
获取企业ID:
- 进入 "我的企业"
- 复制 企业ID (CorpID)
安装插件后,配置Provider凭证:
- 企业ID: 从"我的企业"获取
- 应用Secret: 从"应用管理"获取
打开企业微信智能表格:
- docid: 从URL获取
https://doc.weixin.qq.com/smartsheet/xxxxx - sheet_id: 子表ID,可通过API获取或在表格中查看
创建新的智能表格,返回docid用于后续操作。
参数:
sheet_name: 表格名称admin_users: 管理员用户ID,逗号分隔 (可选)
示例:
{
"sheet_name": "销售数据表"
}向智能表格添加新记录。
参数:
sheet_id: 表格文档ID (docid)sheet_name: 子表IDrows_data: JSON数组格式,使用字段名作为key
示例:
{
"sheet_id": "your_docid",
"sheet_name": "your_sheet_id",
"rows_data": "[{\"姓名\": \"张三\", \"年龄\": \"25\", \"职位\": \"工程师\"}]"
}查询智能表格中的所有子表信息。
参数:
sheet_id: 表格文档ID (docid)sub_sheet_id: 指定子表ID (可选)need_all_type_sheet: 是否包含仪表盘和说明页 (可选,默认false)
示例:
{
"sheet_id": "your_docid",
"need_all_type_sheet": true
}返回:
{
"success": true,
"sheet_count": 2,
"sheet_list": [
{
"sheet_id": "123Abc",
"title": "工作表1",
"is_visible": true,
"type": "smartsheet"
}
]
}获取智能表格的属性信息。
参数:
sheet_id: 表格文档ID (docid)
示例:
{
"sheet_id": "your_docid"
}更新智能表格中的指定记录。
参数:
sheet_id: 表格文档ID (docid)sheet_name: 子表IDrecord_id: 要更新的记录IDrow_data: JSON对象格式,使用字段名作为key
示例:
{
"sheet_id": "your_docid",
"sheet_name": "your_sheet_id",
"record_id": "record_id_from_add",
"row_data": "{\"姓名\": \"王五\", \"年龄\": \"35\"}"
}✓ 敏感凭证(企业ID、Secret)加密存储在Provider中
✓ 工作流中不会暴露敏感信息
✓ 自动管理access_token,无需手动刷新
✓ 符合企业安全最佳实践
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python test_local.py- 已创建企业微信自建应用
- 已获取企业ID和应用Secret
- 已在应用中开启"文档/智能表格"API权限
- 已配置企业可信IP(如需要)
- 已在Dify中配置Provider凭证