GenAuth DocsDocuments
Concepts
User Guide
Development Integration
AgentAuth
Metadata
Development Integration
Multi-tenant (beta)
Console Documentation
Multi-tenant Console
Tenant Console
Saas Application Demo
Concepts
User Guide
Development Integration
AgentAuth
Metadata
Development Integration
Multi-tenant (beta)
Console Documentation
Multi-tenant Console
Tenant Console
Saas Application Demo
Old version
  • Single Page Web Application

  • Mobile and Client Applications

  • Standard Web Application

    • Java

    • Node.js

    • Python

      • 安装使用
      • 用户认证模块
      • 管理模块

        • 用户管理

          • 获取用户信息
          • 批量获取用户信息
          • 获取用户列表
          • 获取用户的外部身份源
          • 获取用户角色列表
          • 获取用户实名认证信息
          • 删除用户实名认证信息
          • 获取用户部门列表
          • 设置用户所在部门
          • 获取分组列表
          • 删除用户
          • 获取用户 MFA 绑定信息
          • 获取已归档的用户列表
          • 强制下线用户
          • 判断用户是否存在
          • 创建用户
          • 批量创建用户
          • 修改用户资料
          • 获取用户可访问的应用
          • 获取用户授权的应用
          • 判断用户是否有某个角色
          • 获取用户的登录历史记录
          • 通过用户 ID,获取用户曾经登录过的应用,可以选择指定用户 ID 类型等。
          • 通过用户 ID,获取用户曾经登录过的身份源,可以选择指定用户 ID 类型等。
          • 获取用户被授权的所有资源
        • 分组管理

        • 角色管理

        • 组织机构管理

        • 访问控制管理

        • 外部身份源管理

        • 自定义字段管理

  • Framework Integration

  • Others

  1. Development Integration
  2. /
  3. Standard Web Application
  4. /
  5. Python
  6. /
  7. 管理模块

  8. /
  9. 用户管理

  10. /
  11. 批量创建用户

¶ 批量创建用户

Update time: 2025-07-23 07:34:21
Edit

批量创建用户,邮箱、手机号、用户名必须包含其中一个,邮箱、手机号、用户名、externalId 用户池内唯一,此接口将以管理员身份批量创建用户因此不需要进行手机号验证码检验等安全检测。

¶ 请求参数

名称类型必填默认值描述示例值
listCreateUserInfoDto[]是-用户列表。
optionsCreateUserOptionsDto否-可选参数。

¶ 示例代码

from authing import ManagementClient

management_client = ManagementClient(
    access_key_id="GEN_AUTH_USERPOOL_ID",
    access_key_secret="GEN_AUTH_USERPOOL_SECRET",
)

data = management_client.create_users_batch(
     list: [{
           status: "Activated",
         email: "test@example.com",
         password_encrypt_type: "none",
         phone: "188xxxx8888",
         phone_country_code: "+86",
         username: "bob",
         name: "张三",
         nickname: "张三",
         photo: "https://files.authing.co/authing-console/default-user-avatar.png",
         gender: "M",
         email_verified: true,
         phone_verified: true,
         birthdate: "2022-06-03",
         country: "CN",
         province: "BJ",
         city: "BJ",
         address: "北京朝阳",
         street_address: "北京朝阳区 xxx 街道",
         postal_code: "438100",
         external_id: "10010",
         department_ids: ["624d930c3xxxx5c08dd4986e","624d93102xxxx012f33cd2fe"],
         custom_data: {
			"school":	"北京大学",
			"age":	22
		},
         password: "oqw5bhVmlDwF5qqeVA645bICyMVfFaV3sf3ZTrk5Npcm5dTOmBVo1anyZ5JLfHAz/P45r0QTPo8xS1YdKxIrshx4Ju+g04s9SQqW30ebdVdqcOntIJGAXU6arrkPvfcRFV3ZVTwBdgdRWHMkr5sTcnGNYdgL67P9/jHnzltkLbY=",
         reset_password_on_fisrt_login: false,
         tenant_ids: "undefined",
         identities: [{
           ext_idp_id: "6076bacxxxxxxxxd80d993b5",
         provider: "wechat",
         type: "openid",
         user_id_in_idp: "oj7Nq05R-RRaqak0_YlMLnnIwsvg",
         origin_conn_ids: ["605492ac41xxxxe0362f0707"],
      }],
      }],
     options: {
         keep_password: false,
       auto_generate_password: false,
       reset_password_on_first_login: false,
       department_id_type: "department_id",
       send_notification: {
         send_email_notification: false,
       send_phone_notification: false,
       app_id: "appid1",
    },
    },

)

¶ 请求响应

类型: UserListRespDto

名称类型描述
statusCodenumber业务状态码,可以通过此状态码判断操作是否成功,200 表示成功。
messagestring描述信息
apiCodenumber细分错误码,可通过此错误码得到具体的错误类型。
dataarray用户列表

示例结果:

{
  "statusCode": 200,
  "message": "操作成功",
  "apiCode": 20001,
  "data": {
    "userId": "6229ffaxxxxxxxxcade3e3d9",
    "createdAt": "2022-07-03T02:20:30.000Z",
    "updatedAt": "2022-07-03T02:20:30.000Z",
    "status": "Activated",
    "email": "test@example.com",
    "phone": "188xxxx8888",
    "phoneCountryCode": "+86",
    "username": "bob",
    "name": "张三",
    "nickname": "张三",
    "photo": "https://files.authing.co/authing-console/default-user-avatar.png",
    "loginsCount": 3,
    "lastLogin": "2022-07-03T02:20:30.000Z",
    "lastIp": "127.0.0.1",
    "gender": "M",
    "emailVerified": true,
    "phoneVerified": true,
    "passwordLastSetAt": "2022-07-03T02:20:30.000Z",
    "birthdate": "2022-06-03",
    "country": "CN",
    "province": "BJ",
    "city": "BJ",
    "address": "北京朝阳",
    "streetAddress": "北京朝阳区 xxx 街道",
    "postalCode": "438100",
    "externalId": "10010",
    "departmentIds": "[\"624d930c3xxxx5c08dd4986e\",\"624d93102xxxx012f33cd2fe\"]",
    "identities": {
      "identityId": "62299d8b866d2dab79a89dc4",
      "extIdpId": "6076bacxxxxxxxxd80d993b5",
      "provider": "wechat",
      "type": "openid",
      "userIdInIdp": "oj7Nq05R-RRaqak0_YlMLnnIwsvg",
      "originConnIds": "[\"605492ac41xxxxe0362f0707\"]"
    },
    "customData": {
      "school": "北京大学",
      "age": 22
    },
    "statusChangedAt": "2022-07-03T02:20:30.000Z"
  }
}

¶ 数据结构

¶ CreateUserInfoDto

名称类型必填描述
statusstring否账户当前状态。 枚举值:Suspended,Resigned,Activated,Archived
emailstring否邮箱。 示例值: test@example.com
passwordEncryptTypestring否密码加密类型,支持 sm2 和 rsa。 枚举值:sm2,rsa,none
phonestring否手机号。 示例值: 188xxxx8888
phoneCountryCodestring否手机区号。 示例值: +86
usernamestring否用户名,用户池内唯一。 示例值: bob
namestring否用户真实名称,不具备唯一性。 示例值: 张三
nicknamestring否昵称。 示例值: 张三
photostring否头像链接。 示例值: https://files.authing.co/authing-console/default-user-avatar.png
genderstring否性别。 枚举值:M,W,U
emailVerifiedboolean否邮箱是否验证。 示例值: true
phoneVerifiedboolean否手机号是否验证。 示例值: true
birthdatestring否出生日期。 示例值: 2022-06-03
countrystring否所在国家。 示例值: CN
provincestring否所在省份。 示例值: BJ
citystring否所在城市。 示例值: BJ
addressstring否所处地址。 示例值: 北京朝阳
streetAddressstring否所处街道地址。 示例值: 北京朝阳区 xxx 街道
postalCodestring否邮政编码号。 示例值: 438100
externalIdstring否第三方外部 ID。 示例值: 10010
departmentIdsarray否用户所属部门 ID 列表。 示例值: ["624d930c3xxxx5c08dd4986e","624d93102xxxx012f33cd2fe"]
customDataobject否自定义数据,传入的对象中的 key 必须先在用户池定义相关自定义字段。 示例值: [object Object]
passwordstring否密码。可选加密方式进行加密,通过 passwordEncryptType 参数进行加密方法选择,默认为未加密。 示例值: oqw5bhVmlDwF5qqeVA645bICyMVfFaV3sf3ZTrk5Npcm5dTOmBVo1anyZ5JLfHAz/P45r0QTPo8xS1YdKxIrshx4Ju+g04s9SQqW30ebdVdqcOntIJGAXU6arrkPvfcRFV3ZVTwBdgdRWHMkr5sTcnGNYdgL67P9/jHnzltkLbY=
resetPasswordOnFisrtLoginboolean否是否首次登录时重新设置密码。 示例值: false
tenantIdsarray否租户 ID。
identitiesarray否第三方身份源(建议调用绑定接口进行绑定)。嵌套类型:CreateIdentityDto。 示例值: [object Object]

¶ CreateIdentityDto

名称类型必填描述
extIdpIdstring是外部身份源的 ID。 示例值: 6076bacxxxxxxxxd80d993b5
providerstring是外部身份源类型,如 lark, wechat。 示例值: wechat
typestring是Identity 类型,如 unionid, openid, primary。 示例值: openid
userIdInIdpstring是在外部身份源的 id。 示例值: oj7Nq05R-RRaqak0_YlMLnnIwsvg
originConnIdsarray是身份来自的身份源连接 ID 列表。 示例值: ["605492ac41xxxxe0362f0707"]

¶ CreateUserOptionsDto

名称类型必填描述
keepPasswordboolean否该参数一般在迁移旧有用户数据到 GenAuth 的时候会设置。开启这个开关,password 字段会直接写入 GenAuth 数据库,GenAuth 不会再次加密此字段。如果你的密码不是明文存储,你应该保持开启,并编写密码函数计算。。
autoGeneratePasswordboolean否是否自动生成密码。
resetPasswordOnFirstLoginboolean否是否强制要求用户在第一次的时候重置密码。
departmentIdTypestring否此次调用中使用的父部门 ID 的类型。 枚举值:department_id,open_department_id
sendNotification否重置密码发送邮件和手机号选项。嵌套类型:SendCreateAccountNotificationDto。 示例值: [object Object]

¶ SendCreateAccountNotificationDto

名称类型必填描述
sendEmailNotificationboolean否创建账号之后,是否发送邮件通知。
sendPhoneNotificationboolean否创建账号之后,是否发送短信通知。
appIdstring否发送登录地址时,指定的应用 id,会将此应用的登录地址发送给用户的邮箱或者手机号。默认为用户池应用面板的登录地址。。 示例值: appid1

¶ UserDto

名称类型必填描述
userIdstring是用户 ID。 示例值: 6229ffaxxxxxxxxcade3e3d9
createdAtstring是账号创建时间。 示例值: 2022-07-03T02:20:30.000Z
updatedAtstring是账号更新时间。 示例值: 2022-07-03T02:20:30.000Z
statusstring是账户当前状态。 枚举值:Suspended,Resigned,Activated,Archived
emailstring否邮箱。 示例值: test@example.com
phonestring否手机号。 示例值: 188xxxx8888
phoneCountryCodestring否手机区号。 示例值: +86
usernamestring否用户名,用户池内唯一。 示例值: bob
namestring否用户真实名称,不具备唯一性。 示例值: 张三
nicknamestring否昵称。 示例值: 张三
photostring否头像链接。 示例值: https://files.authing.co/authing-console/default-user-avatar.png
loginsCountnumber否历史总登录次数。 示例值: 3
lastLoginstring否上次登录时间。 示例值: 2022-07-03T02:20:30.000Z
lastIpstring否上次登录 IP。 示例值: 127.0.0.1
genderstring是性别。 枚举值:M,W,U
emailVerifiedboolean是邮箱是否验证。 示例值: true
phoneVerifiedboolean是手机号是否验证。 示例值: true
passwordLastSetAtstring否用户上次密码修改时间。 示例值: 2022-07-03T02:20:30.000Z
birthdatestring否出生日期。 示例值: 2022-06-03
countrystring否所在国家。 示例值: CN
provincestring否所在省份。 示例值: BJ
citystring否所在城市。 示例值: BJ
addressstring否所处地址。 示例值: 北京朝阳
streetAddressstring否所处街道地址。 示例值: 北京朝阳区 xxx 街道
postalCodestring否邮政编码号。 示例值: 438100
externalIdstring否第三方外部 ID。 示例值: 10010
resetPasswordOnNextLoginboolean否下次登录要求重置密码。
departmentIdsarray否用户所属部门 ID 列表。 示例值: ["624d930c3xxxx5c08dd4986e","624d93102xxxx012f33cd2fe"]
identitiesarray否外部身份源。嵌套类型:IdentityDto。
customDataobject否用户的扩展字段数据。 示例值: [object Object]
statusChangedAtstring否用户状态上次修改时间。 示例值: 2022-07-03T02:20:30.000Z

¶ IdentityDto

名称类型必填描述
identityIdstring是Identity ID。 示例值: 62299d8b866d2dab79a89dc4
extIdpIdstring是外部身份源的 ID。 示例值: 6076bacxxxxxxxxd80d993b5
providerstring是外部身份源类型,如 lark, wechat。 示例值: wechat
typestring是Identity 类型,如 unionid, openid, primary。 示例值: openid
userIdInIdpstring是在外部身份源的 id。 示例值: oj7Nq05R-RRaqak0_YlMLnnIwsvg
originConnIdsarray是身份来自的身份源连接 ID 列表。 示例值: ["605492ac41xxxxe0362f0707"]
Previous article: 创建用户 Next article: 修改用户资料
  • 请求参数
  • 示例代码
  • 请求响应
  • 数据结构

User identity management

Integrated third-party login
Customized authentication process

Enterprise internal management

Single sign-on
Multi-factor authentication
Permission management

Developer

Development Documentation
GitHub (opens new window)

Company

official@genauth.ai
16th Floor, Building B, Beichen Century Center, Chaoyang District, Beijing (Total)
Room 406, 4th Floor, Block B, No. 200, Tianfu Fifth Street, High-tech Zone, Chengdu (Branch)

© Beijing Steamory Technology Co., Ltd.