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);

    }
}