Get Users Role List¶
不登录 Application Portal 的状态下获取一批用户的角色。
操作权限¶
需要在 Application Portal 给应用授权“获取本 OU 内所有用户的权限信息”的权限。
请求格式¶
POST https://{apigw-address}/app-portal-service/v2.2/userRoles/roleList
请求参数(Body)¶
名称 | 必需/可选 | 数据类型 | 描述 |
---|---|---|---|
organizationId | 必需 | String | 组织 ID。如何获取 organizationId 信息>> |
userIds | 必需 | List | 用户 ID 列表。 |
响应参数¶
名称 | 数据类型 | 描述 |
---|---|---|
data | data 结构体 | 用户及其对应角色的信息。 |
data 结构体¶
名称 | 数据类型 | 描述 |
---|---|---|
usersRoles | UsersRoleListResponse 结构体 | 用户及其对应角色的信息。 |
UsersRoleListResponse 结构体¶
名称 | 数据类型 | 描述 |
---|---|---|
usersUserRoles | UsersUserRolesDTO 结构体 | 用户及其对应角色的信息。 |
userRoles | UsersRolesInfoDTO 结构体 | 角色信息。 |
UsersUserRolesDTO 结构体¶
名称 | 数据类型 | 描述 |
---|---|---|
userId | String | 用户 ID。 |
roleIds | List | 角色 ID 列表。 |
UsersRolesInfoDTO 结构体¶
名称 | 数据类型 | 描述 |
---|---|---|
id | String | 角色 ID。 |
name | String | 角色名称。 |
错误码¶
代码 | 描述 |
---|---|
31400 | 参数错误,长度错误,不能为空等 |
31403 | 应用未被授权“获取本 OU 内所有用户的权限信息”的权限 |
31404 | 未找到组织 |
示例¶
请求示例¶
url: https://{apigw-address}/app-portal-service/v2.2/userRoles/roleList
method: POST
requestBody:
{"organizationId":"yourOrgId","userIds": ["user1","user2","user3"]}
返回示例¶
{
"code": 0,
"message": "OK",
"data": {
"usersUserRoles": [
{
"userId": "u15689477086181",
"roleIds": [
"ro16112212750581",
"ro16137846668911052",
"ro16137849323541174",
"ro16137849519171485",
"ro16137849674081515"
]
},
{
"userId": "u16137062654571994",
"roleIds": []
}
],
"userRoles": [
{
"id": "ro16112212750581",
"name": "messageProduce"
},
{
"id": "ro16137846668911052",
"name": "testRole"
},
{
"id": "ro16137849323541174",
"name": "Grupo de menús"
},
{
"id": "ro16137849519171485",
"name": "'メニューグループ' ユーザーには選択し"
},
{
"id": "ro16137849674081515",
"name": "中文角色"
}
]
}
}
Java SDK 调用示例¶
public class AppPortalSdkTest{
@Test
public void getUsersRoleList() {
ArrayList<String> userIds = new ArrayList<>();
userIds.add("user1");
userIds.add("user2");
userIds.add("user3");
UsersRoleListRequest usersRoleListRequest = new UsersRoleListRequest(userIds,"your_org_id");
UsersRoleListResponse response = Poseidon.config(PConfig.init().appKey("your_access_key").appSecret("your_secret_key").debug())
.url("https://{apigw-address}").getResponse(usersRoleListRequest, UsersRoleListResponse.class);
System.out.println("List organization res: " + JSON.toJSONString(response));
assertNotNull("Response should not be null", response);
assertNotNull("Response data should not be null", response.data);
}
}