OkayAPI Docs


API Path: /api/App/SuperTable/FreeTree

API Description: R 可以根据自定义条件获取树状分类的数据,可用于:组织架构、目录分类、网站菜单、级联地址等场景。要求:表单结构中须含有指向父级的ID。当前最多一次性获取两层。

3
API Traffic
HTTP/HTTPS
Protocol
GET/POST
Method
UTF-8
Charset
JSON
Response

API Debug   


API Params

ParameterTypeRequiredDefaultNoteDescription
HTTP_APPKEYStringRequiredMIN: 32Common Put Your APPKEY
model_nameStringRequired数据库表名
databaseStringOptaionsuper自己的数据库配置标记,注意!这是数据库的配置标识,不是数据库的名称。默认使用super,不用传。如果需要配置多个数据库时,可与小白技术人员联系。重要事情说三遍,这是数据配置标识,不是数据库名称。使用此接口前,请先进入:数据库直连服务配置
parent_fieldStringRequiredparent_id子级存放父级id的字段名称,此字段必须要出现在表单中,为int类型。如果不想使用默认的字段名称parent_field,可以自定义其他字段名称。
parent_idIntRequired0所属父类id的值,顶级分类的父级id值为0。固定对应表单中id字段的值。具体使用请见下方请求示例。
whereArrayJSON FormatOptaion[]可选且安全的where条件,格式为:[["第一个位置表示字段名称(字段必须先存在)","第二个位置表示判断>符号(可以是:>、>=、<、<=、=、<>, LIKE)","第三个位置表示判断值"]]。多个条件逻辑关系为:AND,并且接口会默认加上父级ID的匹配。
where_XStringOptaion动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值。支持的比较符和示例如下:
  • EQ:等于(默认),如:where_year=EQ-2020,或:where_year=2020,表示年份year等于2020;
  • GT:大于,如:where_year=GT-2020,表示年份year大于2020;
  • GE:大于等于,如:where_year=GE-2020,表示年份year大于或等于2020;
  • LT:小于,如:where_year=LT-2020,表示年份year小于2020;
  • LE:大于等于,如:where_year=LE-2020,表示年份year小于或等于2020;
  • NE:不等于,如:where_year=NE-2020,表示年份year不等于2020;
  • LIKE:模糊匹配,如:where_name=LIKE-小白,表示名字name含有小白的;
  • NLIKE:模糊匹配(排除),如:where_name=NLIKE-小白,表示名字name不包含小白的
  • IN:枚举查询,如:where_year=IN-2020,2021,2022,表示年份year在这三个年份,多个值用英文逗号分割
  • NIN:枚举查询(排除),如:where_year=NIN-2020,2021,2022,表示年份year不在这三个年份,多个值用英文逗号分割
如果同一字段有多个条件,使用双竖线||分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先)
selectArraySeperated with ,OptaionSQL语句的SELECT部分,多个字段用英文逗号分割,如:select=id,uuid
orderArrayJSON FormatOptaion[]SQL语句的ORDER部分,格式为:[第一组排序,第二组排序,……],如:order = ["id DESC", "add_time ASC"],表示 id DESC, add_time ASC。特别地,RAND表示随机排序。

API Debug

KEYREQUIREDVALUE
app_key *Required
model_name *Required
database Option
parent_field *Required
parent_id *Required
where Option
select Option
order Option

API Response

KEYTypeDescription
err_codeInt状态操作码,0成功;1开发类错误,查询失败(表单不存在或查询错误);2应用层规则拦截,拦截后可以小白开放平台查看日记
err_msgString错误提示信息,err_code非0时参考此提示信息
treeArray树状数据
tree[].idInt固定返回,ID
tree[].{parent_id}Int固定返回,父级ID,字段名由客户端指定
children_treeArray子节点的树状数据,没有时为空数组。表单中不能添加children_tree字段,以免引起冲突。返回字段、过滤条件和排序逻辑和顶层一样。

HTTP Response Code

HTTP Status CodeDescription
Http Status = 200Success
Http Status = 400Illegal-Params
Http Status = 401Illegal-Token
Http Status = 402IP-Banned
Http Status = 404API-NOT-Exsits
Http Status = 406Illegal-APPKEY
Http Status = 407APPKEY-Expired-Out
Http Status = 408APPKEY-Busy
Http Status = 409Illegal-Sign
Http Status = 413API-Traffic-NOT-Enough
Http Status = 415API-LOCKED
Http Status = 500Internal-Server-Error