Skip to content

project manage

qifeng dai edited this page Mar 1, 2017 · 34 revisions

1.创建项目

说明:本 API 用于创建项目。

POST    /projects
Parameters: name={name}&desc={desc}

Response:
Status: 201 Created
{
  "name": "bdi",
  "desc": "百分点 bdi 项目",
  "createTime": 1468391778,
  "modifyTime": 1468391778,
  "owner": "bdi_user"
}

请求说明:

参数 类型 是否必选 描述 说明
name string 项目名称 项目名称:由字母,下划线,数字组成,必须由字母开头,全局唯一,限长 [2,32] 字节
desc string 项目描述 项目的描述,例如:百分点 bdi 项目,限长 [0,256] 字节

返回说明:

创建成功,返回 Status: 201 Created

2.修改项目

说明:只有项目 owner 才有权限操作。不支持修改项目名称。

PUT  /projects/:project-name

Response:
Status: 200 OK

请求和返回同上。

3.删除项目

说明:只有项目 owner 才有权限操作。项目下有其他配置信息(如资源,工作流,数据源等)时不能删除。

DELETE /projects/:project-name

Response:
Status: 204 No Content

4.查询项目列表

说明:查询本用户参与的所有项目列表。

GET /projects

Response:
Status: 200 OK
[
  {
    "name": "bdi",
    "desc": "百分点 bdi 项目",
    "createTime": 1468391778,
    "modifyTime": 1468391778,
    "owner": "bdi_user"
  }
]

5.项目添加或修改一个用户

说明:只有项目 owner 才有权限操作,项目添加用户时,指定该用户的权限,分修改、执行和查看 3 种权限配置。

PUT  /projects/:id/users/:userid
{
  "perm": 0x02
}

Response:
Status: 200 OK
{
  "projectName": "the name of project",
  "userId": 222,
  "userName": "the name of user",
  "perm": 0x02,
  "createTime": 1468391778,
  "modifyTime": 1468391778,
  "owner": "bdi_user"
}

请求参数:

参数 类型 是否必选 描述 说明
perm int

项目操作权限使用二进制位来表示,目前支持 w/r/x 3 种权限. 写权限:0x04, 读权限:0x02, 执行权限:0x01,权限可以同时是多个的,比如 0x05 表示同时具备写权限和执行权限。

6.项目删除一个用户

说明:只有项目 owner 才有权限操作。

DELETE  /projects/:project-name/users/:username

Response:
Status: 204 No Content

7.查看项目下的所有用户

说明:只有项目 owner 才有权限操作。

GET /projects/:project-name/users

Response:
Status: 200 OK
[
  {
    "projectName": "the name of project",
    "userName": "the name of user",
    "perm": 0x03,
    "createTime": 1468391778,
    "modifyTime": 1468391778,
    "owner": "bdi_user"
  }
]
Clone this wiki locally