Get Users Asset List

不登录 Application Portal 的状态下获取一批用户的资产权限。

操作权限

需要在 Application Portal 给应用授权“获取本 OU 内所有用户的权限信息”的权限。

请求格式

POST https://{apigw-address}/app-portal-service/v2.2/user/users/assetList

请求参数(Body)

名称 必需/可选 数据类型 描述
organizationId 必需 String 组织 ID。如何获取 organizationId 信息>>
userIds 必需 List 用户 ID 列表。

响应参数

名称 数据类型 描述
data data 结构体 用户及其对应资产的信息。

data 结构体

名称 数据类型 描述
usersAssets UsersAssetListResponse 结构体 用户及其对应资产的信息。

UsersAssetListResponse 结构体

名称 数据类型 描述
usersUserAssets UsersUserAssetsDTO 结构体 用户及其对应资产的信息。
userAssets UserAssetInfoDTO 结构体 资产信息。

UsersUserAssetsDTO 结构体

名称 数据类型 描述
userId String 用户 ID。
userAssetIds List 资产 ID 列表。

UserAssetInfoDTO 结构体

名称 数据类型 描述
id String 资产 ID。
name I18nString 资产名称。

错误码

代码 描述
31400 参数错误,长度错误,不能为空等
31403 应用未被授权“获取本 OU 内所有用户的权限信息”的权限
31404 未找到组织

示例

请求示例

url: https://{apigw-address}/app-portal-service/v2.2/user/users/assetList

method: POST

requestBody:
{"organizationId":"yourOrgId","userIds": ["user1","user2","user3"]}

返回示例

{
    "code": 0,
    "message": "OK",
    "data": {
        "usersUserAssets": [
            {
                "userId": "u15689477086181",
                "userAssetIds": [
                    "zhjAwHTx",
                    "0xQjZr53",
                    "164yFtSp"
                ]
            }
        ],
        "userAssets": [
            {
                "id": "0xQjZr53",
                "name": {
                    "default": "message201"
                }
            },
            {
                "id": "164yFtSp",
                "name": {
                    "default": "message465"
                }
            },
            {
                "id": "zhjAwHTx",
                "name": {
                    "default": "appAssert"
                }
            }
        ]
    }
}

Java SDK 调用示例

public class AppPortalSdkTest{
    @Test
    public void getUsersAssetList() {
            ArrayList<String> userIds = new ArrayList<>();
            userIds.add("user1");
            userIds.add("user2");
            userIds.add("user3");
            UsersAssetListRequest usersAssetListRequest = new UsersAssetListRequest(userIds,"your_org_id");
            UsersAssetListResponse response = Poseidon.config(PConfig.init().appKey("your_access_key").appSecret("your_secret_key").debug())
                    .url("https://{apigw-address}").getResponse(usersAssetListRequest, UsersAssetListResponse.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);

    }
}