操作
项目成员关系¶
/projects/:project_id/memberships.:format¶
GET¶
返回项目成员关系的分页列表。`:project_id`可以是项目的数字ID或项目标识符。
示例:
GET /projects/1/memberships.xml GET /projects/redmine/memberships.xml
响应:
<?xml version="1.0" encoding="UTF-8"?> <memberships type="array" limit="25" offset="0" total_count="3"> <membership> <id>1</id> <project name="Redmine" id="1"/> <user name="David Robert" id="17"/> <roles type="array"> <role name="Manager" id="1"/> </roles> </membership> <membership> <id>3</id> <project name="Redmine" id="1"/> <group name="Contributors" id="24"/> <roles type="array"> <role name="Contributor" id="3"/> </roles> </membership> <membership> <id>4</id> <project name="Redmine" id="1"/> <user name="John Smith" id="27"/> <roles type="array"> <role name="Developer" id="2" /> <role name="Contributor" id="3" inherited="true" /> </roles> </membership> </memberships>注释
- 成员所有者可以是用户或组(自Redmine 2.1起添加了组API)
- 在上面的示例中,最后一个角色的`inherited="true"`属性表示此角色是从组继承的(例如,John Smith属于Contributors组,该组被添加为项目成员)。除非先删除组成员关系,否则不能删除John Smith的成员关系。
- 可以从用户API检索指定用户的成员关系。
POST¶
添加项目成员。
参数:
membership
(必需):成员属性的散列,包括user_id
(必需):用户或组的数字IDrole_ids
(必需):角色数字ID的数组
示例:
POST /projects/redmine/memberships.xml <membership> <user_id>27</user_id> <role_ids type="array"> <role_id>2</role_id> </role_ids> </membership>
JSON
{ "membership": { "user_id": 27, "role_ids": [ 2 ] } }
响应:
201 Created
:已创建成员关系422 Unprocessable Entity
:由于验证失败,成员关系未创建(响应体包含错误消息)
/memberships/:id.:format¶
GET¶
返回给定`:id
`的成员关系。
示例:
GET /memberships/1.xml
响应:
<?xml version="1.0" encoding="UTF-8"?> <membership> <id>1</id> <project name="Redmine" id="1"/> <user name="David Robert" id="17"/> <roles type="array"> <role name="Developer" id="2"/> <role name="Manager" id="1"/> </roles> </membership>
PUT¶
更新给定`:id`的成员关系。只能更新角色,成员关系的项目和用户是只读的。
参数:
membership
(必需):成员属性的散列,包括role_ids
(必需):角色数字ID的数组
示例:
PUT /memberships/2.xml <membership> <role_ids type="array"> <role_id>3</role_id> <role_id>4</role_id> </role_ids> </membership>
响应:
204 No Content
:已更新成员关系422 Unprocessable Entity
:由于验证失败,成员关系未更新(响应体包含错误消息)
DELETE¶
删除成员关系。
从组成员关系继承的成员关系不能删除。必须删除组成员关系。
参数:
无
示例:
DELETE /memberships/2.xml
响应:
200 OK
:已删除成员关系422 Unprocessable Entity
:成员关系未删除