Get User Base Info

根据用户邮箱、账号和域、或电话号码和电话区号获取用户的基本信息如用户 ID 等。

操作权限

需要在 Application Portal 给应用授权“获取本 OU 内所有用户 ID、账号、邮箱、手机号码”的权限。

请求格式

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

请求参数(Body)

名称

必需/可选

数据类型

描述

organizationId

必需

String

组织 ID。如何获取 organizationId 信息>>

email

可选

String

用户邮箱。

name

可选

String

用户名。

domain

可选

String

域名称。

phoneArea

可选

String

电话区号。

phone

可选

String

电话号码。

响应参数

名称

数据类型

描述

data

SimpleUserListDTO 结构体

用户基本信息的列表。

SimpleUserListDTO 结构体

名称

数据类型

描述

users

List<SimpleUserDTO>

用户基本信息的列表。

SimpleUserDTO 结构体

名称

数据类型

描述

id

String

用户 ID。

name

String

用户名。

domain

String

用户所属域。

email

String

用户邮箱。

错误码

代码

描述

31400

参数错误,参数不能为空等

31403

应用未被授权“获取本 OU 内所有用户 ID、账号、邮箱、手机号码”的权限

31404

未找到组织、用户等

示例

请求示例

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

method: POST

requestBody:
{"organizationId":"yourOrgId", "email":"yourEmail"}

返回示例

{
  "code": 0,
  "message": "OK",
  "data": {"users": [{"id": "userId1", "name": "userName1", "domain": "", "email": "email1"}]}
}

Java SDK 调用示例

public class AppPortalSdkTest{
    @Test
        public void getUserBaseInfo() {
            UserGetBaseInfoRequest userGetBaseInfoRequest = new UserGetBaseInfoRequest("your_org_id", "your_email", null, null, null, null);
            UserGetBaseInfoResponse userGetBaseInfoResponse = Poseidon.config(PConfig.init().appKey("your_access_key").appSecret("your_secret_key").debug())
                    .url("https://{apigw-address}").getResponse(userGetBaseInfoRequest, UserGetBaseInfoResponse.class);

            System.out.println("List organization res: " + JSON.toJSONString(userGetBaseInfoResponse));

            assertNotNull("Response should not be null", userGetBaseInfoResponse);
            assertNotNull("Response data should not be null", userGetBaseInfoResponse.data);
            assertNotNull("Response users should not be null", userGetBaseInfoResponse.data.users);
    }
}