为 OpenCraw 开发的 YesApi 果创云低代码平台接口封装技能,支持在线数据库表单结构管理(创建表单和管理表单字段)和数据操作(增删改查)。
- 获取表单模型列表
- 创建新的表单模型
- 更新现有表单结构
- 删除表单模型
- 通用数据查询(支持分页、过滤、排序)
- 数据新增
- 数据更新
- 数据删除
- 批量操作支持
- 支持本地环境变量配置
- 灵活的域名设置
- 安全的签名机制
- Python 3.8+
- OpenCraw 环境
pip3 install -r requirements.txt复制 .env.example 为 .env 并配置你的信息:
cp .env.example .env编辑 .env 文件:
YESAPI_APP_KEY=your_app_key_here
YESAPI_DOMAIN=https://api.yesapi.net
YESAPI_SIGN=your_sign_key_herepython3 test_yesapi.py测试脚本会验证:
- ✅ 环境配置是否正确
- ✅ 客户端初始化是否成功
- ✅ API连接是否正常
- ✅ 自然语言解析功能
clawhub publish . --name "YesApi 果创云低代码平台" --version "1.0.0" --tags "api,lowcode,yesapi,form,database"# 测试客户端功能
python -c "from yesapi_client import create_client; client = create_client(); print(client.get_models())"
# 测试技能处理器
python -c "from skill_handler import process_request; print(process_request('获取模型列表'))"在代码中添加调试信息:
import logging
logging.basicConfig(level=logging.DEBUG)
# 查看详细的API请求和响应
client = create_client()
result = client.query_data('your_table_name', page=1, perpage=10)
print(result)-
获取表单列表
获取我的表单模型列表 -
查询数据
查询用户表的数据,限制10条记录 查询订单表中状态为待支付的数据 -
添加数据
向用户表添加数据:{"name": "张三", "email": "[email protected]"} -
更新数据
更新用户表中ID为123的数据:{"name": "李四"} -
删除数据
删除用户表中ID为456的记录
from yesapi_client import create_client
from skill_handler import process_request
# 使用客户端
client = create_client()
models = client.get_models()
data = client.query_data('users', page=1, perpage=10)
# 使用技能处理器
result = process_request('获取模型列表')
result = process_request('查询用户表数据', {'table_name': 'users'})| 功能 | 方法 | 参数 |
|---|---|---|
| 获取模型列表 | get_models() |
无 |
| 创建模型 | create_model(data) |
模型数据字典 |
| 更新模型 | update_model(id, data) |
模型ID, 更新数据 |
| 删除模型 | delete_model(id) |
模型ID |
| 功能 | 方法 | 参数 |
|---|---|---|
| 查询数据 | query_data(table, **params) |
表名, 查询参数 |
| 插入数据 | insert_data(table, data) |
表名, 数据字典 |
| 更新数据 | update_data(table, id, data) |
表名, 记录ID, 数据 |
| 删除数据 | delete_data(table, id) |
表名, 记录ID |
| 批量查询 | batch_query(table, ids) |
表名, ID列表 |
| 批量删除 | batch_delete(table, ids) |
表名, ID列表 |
所有API调用都会返回详细错误信息:
try:
result = client.query_data('nonexistent_table')
except YesApiError as e:
print(f"错误代码: {e.code}")
print(f"错误信息: {e}")
print(f"详细数据: {e.data}")crawhub_skill_yesapi/
├── yesapi_client.py # YesApi 客户端实现
├── skill_handler.py # Skill 处理器
├── test_yesapi.py # 测试脚本
├── .env.example # 环境变量示例
├── .env # 环境变量配置(需要手动创建)
├── requirements.txt # 依赖包
├── README.md # 项目说明
└── SKILL.md # Skill 描述文件
A: 登录果创云控制台,在应用管理页面可以找到相关信息。
A: 检查以下几点:
- 网络连接是否正常
- App Key 和 Sign 是否正确
- 表名和字段名是否存在
- 查看详细的错误日志
A: 支持以下查询参数:
page: 页码perpage: 每页数量where: 查询条件order: 排序字段by: 排序方式 (ASC/DESC)
- 确保所有测试通过
- 提交代码到仓库
- 使用 clawhub 命令发布:
clawhub publishMIT License
欢迎提交 Issue 和 Pull Request!