操作
用户¶
/users.:format¶
GET¶
返回用户列表。
此端点需要管理员权限。
示例:
GET /users.xml
可选过滤器
status
:仅获取具有给定状态的用户。有关可用状态的列表,请参阅app/models/principal.rb。提供空值以匹配所有用户,无论其状态如何。默认为1
(活动用户)。可能的值包括1
:活动(用户可以登录并使用其账户)2
:已注册(用户已注册但尚未确认其电子邮件地址或尚未由管理员激活。用户无法登录)3
:锁定(用户曾经是活动的,现在是锁定的,用户无法登录)
name
:根据用户的登录、名、姓和邮件过滤用户;如果模式包含空格,则还将返回名匹配第一个单词或姓匹配第二个单词的用户。group_id
:仅获取是给定组成员的用户
POST¶
创建用户。
此端点需要管理员权限。
参数:
user
(必需):用户属性的哈希,包括login
(必需):用户登录名password
:用户密码firstname
(必需)lastname
(必需)mail
(必需)auth_source_id
:身份验证模式IDmail_notification
:only_my_events、none等must_change_passwd
:true或falsegenerate_password
:true或falsecustom_fields
- 请参阅自定义字段
send_information
:true或false:向用户发送账户信息
示例:
POST /users.xml
<?xml version="1.0" encoding="ISO-8859-1" ?>
<user>
<login>jplang</login>
<firstname>Jean-Philippe</firstname>
<lastname>Lang</lastname>
<password>secret</password>
<mail>[email protected]</mail>
<auth_source_id>2</auth_source_id>
</user>
JSON
{
"user": {
"login": "jplang",
"firstname": "Jean-Philippe",
"lastname": "Lang",
"mail": "[email protected]",
"password": "secret"
}
}
响应:
201 Created
:已创建用户422 Unprocessable Entity
:由于验证失败而未创建用户(响应体包含错误消息)
/users/:id.:format¶
GET¶
返回用户详细信息。您可以使用/users/current.:format
检索用于访问API的凭据所属的用户。
此端点可由管理员或非管理员使用,但返回的字段将取决于请求用户的权限(请参阅下面的响应)。
参数:
include
(可选):要在响应中包含的关联的逗号分隔列表memberships
:添加有关用户在项目中的成员资格和角色的额外信息groups
(2.1中添加):添加有关用户组的额外信息
示例:
GET /users/current.xml
返回当前用户的详细信息。
GET /users/3.xml?include=memberships,groups
返回用户ID 3的详细信息以及用户项目成员资格的附加信息。
响应:
<user>
<id>3</id>
<login>jplang</login>
<firstname>Jean-Philippe</firstname>
<lastname>Lang</lastname>
<mail>[email protected]</mail>
<created_on>2007-09-28T00:16:04+02:00</created_on>
<updated_on>2010-08-01T18:05:45+02:00</updated_on>
<last_login_on>2011-08-01T18:05:45+02:00</last_login_on>
<passwd_changed_on>2011-08-01T18:05:45+02:00</passwd_changed_on>
<api_key>ebc3f6b781a6fb3f2b0a83ce0ebb80e0d585189d</api_key>
<avatar_url></avatar_url>
<status>1</status>
<custom_fields type="array" />
<memberships type="array">
<membership>
<project name="Redmine" id="1"/>
<roles type="array">
<role name="Administrator" id="3"/>
<role name="Contributor" id="4"/>
</roles>
</membership>
</memberships>
<groups type="array">
<group id="20" name="Developers"/>
</groups>
</user>
如果请求的用户不是管理员,则取决于请求的用户。
- 如果用户未被锁定且不是管理员,端点将返回包含以下字段的用户对象:
firstname
、lastname
、mail
、created_on
- 如果用户未被锁定且是管理员,端点将返回包含以下字段的用户对象:
firstname
、lastname
、created_on
、last_login_on
- 如果用户被锁定,端点将返回404状态码
- 如果用户是请求的用户,您还将获得以下字段:
login
、api_key
api_key
:用户的API密钥,管理员和您自己可见(自2.3.0版本添加)。status
:表示用户状态的数字ID,只有管理员可见(自2.4.0版本添加)。有关可用状态列表,请参阅app/models/principal.rb。
PUT¶
更新用户。
此端点需要管理员权限。
示例:
PUT /users/20.xml
参数:
user
(必需):用户属性哈希(与用户创建相同)admin
(可选):可能的值是true或false,赋予用户实例管理员权限custom_fields
- 请参阅自定义字段
DELETE¶
此端点需要管理员权限。
删除用户。
示例:
DELETE /users/20.xml
响应:
204 No Content
:用户已被删除
另请参阅¶
由Lorenzo Meneghetti更新,8个月前 · 30次修订