JIRA REST API获取所有用户

问题描述 投票:7回答:5

我正在尝试从JIRA REST API获取所有用户。我需要从我自己的Java客户端将所有用户保存到我的数据库中。有可能吗?

如果是这样我们将如何做到这一点?

rest jira jira-rest-api
5个回答
5
投票

似乎有一种无证的方式:

使用“查找用户”API

https://docs.atlassian.com/jira/REST/latest/#api/2/user-findUsers

对于用户名查询,请使用%

EG:/ rest / api / 2 / user / search?username =%


2
投票

您可以获得可分配给特定项目的所有用户。如果每个人都可分配,您将获得所有用户。

/rest/api/2/user/assignable/search?project=PROJECT

卷曲:

curl -D -u USERNAME:PASSWORD -X GET -H "Content-Type: application/json" https://company.atlassian.net/rest/api/2/user/assignable/search?project=PROJECT

1
投票

没有直接的方法来获取Jira Rest API中的所有用户。如果您有用户在Jira应用程序中轻松分组,则可能必须使用搜索功能(需要传入至少一个字母进行搜索)或组功能。

浏览他们的文档以获得更好的参考。

https://docs.atlassian.com/jira/REST/latest/#d2e2

https://docs.atlassian.com/jira/REST/latest/#d2e808

您可以使用简单的JDBC脚本来创建一些高级脚本,以便通过Java客户端将用户列表写入数据库。

希望这可以帮助!


0
投票

现在,为了获得JIRA实例的所有云用户,我们必须使用以下REST端点,

https://www.example.atlassian.net/rest/api/2/user/search?query=%

请注意,查询参数将搜索所有属性中的匹配项,包括显示名称,电子邮件地址,昵称等。此更改在用户隐私策略下推出,以使JIRA GDPR兼容。

有关更多信息,请参阅this官方文档。


0
投票

获取JIRA实例中所有用户的一种可能方法是使用Crowd API的/rest/usermanagement/1/search端点:

curl -X GET \
  'https://jira.url/rest/usermanagement/1/search?entity-type=user&start-index=0&max-results=1000&expand=user' \
  -H 'Accept: application/json' -u username:password

请注意,您需要创建一个[新的JIRA用户服务器条目] [3]来创建Crowd凭证(上面的username:password参数),供您的应用程序在其REST API调用中使用:

  • 转到用户管理。
  • 选择JIRA用户服务器。
  • 添加应用程序。
  • 输入应用程序在访问JIRA服务器应用程序时将使用的应用程序名称和密码。
  • 输入应用程序的IP地址,地址或IP CIDR块,然后单击“保存”。
© www.soinside.com 2019 - 2024. All rights reserved.