柳叶清单是自己独立开发设计的一个 Web 清单应用,目前网页版已经上线运行,地址如下:
开发初衷:柳叶清单:管理日程的网页清单程序
于此同时,为了方便其他开发者使用清单服务,现在开放了部分 API,以便大家开发自己的 Todo 应用或者 demo 小程序。
如果使用中有任何问题,也可以在 issue 中进行反馈。
目录生成 by github-markdown-toc
为了对清单 API 有更好的认识,这里先简单说一下具体的数据 model 关系,目前一共有 4 个 model,分别是 User、Project、Group、Todo.
- User: 用户信息
- Project:清单项目,一个用户(User)可以创建多个清单项目。
- Group:分组,一个清单项目(Project)包含多个清单分组
- Todo:事项,每个分组(Group)下有若干 Todo 组成
这个关系用图表示出来如下所示:
上面的示意有点抽象,这里用一个具体的例子进行展示如下:
下面是目前开放出来的所有数据操作相关的 API,包括用户登录、注册,以及事项(Todo)、分组(Group)、项目(Project)数据的操作,如下所示:
https://waishuo.leanapp.cn/api/v1.0/users/login
目前仅支持邮箱登录,暂不支持用户名登录
请求方式:POST
请求参数:
https://waishuo.leanapp.cn/api/v1.0/users/register
请求方式:POST
https://waishuo.leanapp.cn/api/v1.0/users/<userId>
请求方式:GET
说明:url 请求参数中最后需要指定 user id
请求参数:
无
https://waishuo.leanapp.cn/api/v1.0/todos
请求方式:POST
请求参数:
响应结果:
https://waishuo.leanapp.cn/api/v1.0/todos/<todoId>
请求方式:PUT
说明:url 请求参数中最后需要指定 todo id
请求参数:
响应结果:
https://waishuo.leanapp.cn/api/v1.0/todos/<todoId>
请求方式:DEL
请求参数:
说明:url 请求参数中最后需要指定 todo id
响应结果:
https://waishuo.leanapp.cn/api/v1.0/todos/<todoId>
请求方式:GET
请求参数:
说明:url 请求参数中最后需要指定 todo id
响应结果:
https://waishuo.leanapp.cn/api/v1.0/groups
请求方式:POST
请求参数:
响应结果:
https://waishuo.leanapp.cn/api/v1.0/groups/<groupId>
请求方式:PUT
说明:url 请求参数中最后需要指定 groupId
请求参数:
响应结果:
https://waishuo.leanapp.cn/api/v1.0/groups/projects/<projectId>
请求方式:GET
请求参数:
说明:url 请求参数中最后需要指定 projectId
响应结果:
https://waishuo.leanapp.cn/api/v1.0/groups/<groupId>
请求方式:DEL
请求参数:
说明:url 请求参数中最后需要指定 groupId
响应结果:
https://waishuo.leanapp.cn/api/v1.0/project
请求方式:POST
请求参数:
响应结果:
https://waishuo.leanapp.cn/api/v1.0/project
请求方式:PUT
请求参数:
响应结果:
https://waishuo.leanapp.cn/api/v1.0/projects/<projectId>
注意:删除时,会把项目下的分组以及 todo 全部删除
请求方式:DEL
说明:url 请求参数中最后需要指定 projectId