YouTrack REST API returns 所有用户的唯一子集

YouTrack REST API returns only subset of all users

自版本 2018.3 起,YouTrack 已 published a new API for administrating the system. One example of a new endpoint is /api/admin/users/ which is supposed to return the collection of users in the YouTrack instance, with a wide variety of fields being available compared to the old, deprecated, API

但是,在使用它时,我发现它 returns 只是实例中所有用户的一个子集;在我的例子中,它只产生了 106 个用户中的 42 个。

作为解决方法,我使用了已弃用的 API 端点 /rest/admin/user/ 来获取所有用户,并为 106 个结果中的每一个调用新端点以获取新的可用详细信息,但这在所需的调用次数上相当浪费,添加了对已弃用的 API 的依赖,完全不可靠,并且似乎不是预期的工作流程。

所以问题就变成了:如何使用新的 API 来获得所有用户?

结果数组的默认限制为 42。 您可以通过发送 /api/admin/users/?$top=<YOUR_LIMIT> 来覆盖它,您也可以发送 -1 来获取整个用户集(可能会导致性能问题)。

此外,您可以结合使用 $top$skip 获取参数来遍历您的用户。