- Development Integration
- /
- SDK
- /
- Python
- /
Authentication Module
- /
Register
- /
- Register
¶ Register
This document is automatically generated based on https://github.com/authing/authing-docs-factory based on https://api-explorer.genauth.ai V3 API, and is consistent with API parameters and return results. If the description of this document is incorrect, please refer to V3 API.
This endpoint currently supports the following registration methods based on:
Based on password (PASSWORD): username + password, email + password.
Based on one-time temporary verification code (PASSCODE): mobile phone number + verification code, email + verification code. You need to call the send SMS or send email interface to get the verification code first.
For social login and other external identity source "registration", please use the Login interface directly, and we will create a new account for it when it logs in for the first time.
¶ Method name
AuthenticationClient.sign_up
¶ Request parameters
| Name | Type | Is it required | Default value | Description | Sample value |
|---|---|---|---|---|---|
| connection | string | Yes | - | Registration method: - PASSWORD: Email password method- PASSCODE: Email/mobile phone verification code method | PASSWORD |
| passwordPayload | SignUpByPasswordDto | No | - | This parameter is required when the registration method is PASSWORD. | {"email":"test@example.com","password":"passw0rd"} |
| passCodePayload | SignUpByPassCodeDto | No | - | This parameter is required when the authentication method is PASSCODE | {"email":"test@example.com","passCode":"passw0rd"} |
| profile | SignUpProfileDto | No | - | User profile | |
| options | SignUpOptionsDto | No | - | Optional parameters |
¶ Request response
Type: UserSingleRespDto
| Name | Type | Description |
|---|---|---|
| statusCode | number | Business status code, which can be used to determine whether the operation is successful. 200 means success. |
| message | string | Description |
| apiCode | number | Segmented error code, which can be used to get the specific error type. |
| requestId | string | Request ID. It will be returned when the request fails. |
| data | UserDto | Response data |
Sample result:
{
"statusCode": 200,
"message": "Operation successful",
"requestId": "934108e5-9fbf-4d24-8da1-c330328abd6c",
"data": {
"userId": "6229ffaxxxxxxxxcade3e3d9",
"createdAt": "2022-07-03T02:20:30.000Z",
"updatedAt": "2022-07-03T02:20:30.000Z",
"status": "Activated",
"externalId": "10010",
"email": "test@example.com",
"phone": "188xxxx8888",
"phoneCountryCode": "+86",
"username": "bob",
"name": "Zhang San",
"nickname": "San Zhang",
"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.000 Z",
"birthdate": "2022-06-03",
"country": "CN",
"province": "BJ",
"city": "BJ",
"address": "Beijing Chaoyang",
"streetAddress ": "xxx Street, Chaoyang District, Beijing",
"postalCode": "438100",
"company": "steamy",
"browser": "Mozilla/5.0 (Linux; Android 10; V2001A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/87.0.4280.141 Mobile Safari/537.36 VivoBrowser/10.2.10.0",
"device": "iOS",
"givenName": "San",
"familyName": "Zhang",
"userSourceType": "register",
"passwordSecurityLevel": 1,
"departmentIds": "[\"624d930c3xxxx5c08dd4986e\",\"624d93102xxxx012f33cd2fe\"]",
"identities": {
"identityId": "62299d8b866d2dab79a89dc4",
"extIdpId": "6076bacxxxxxxxxd80d993b5",
"provider": "wechat",
"type": "openid",
"userIdInIdp": "oj7Nq05R-RRaqak0_YlMLnnIwsvg",
"originConnIds": "[\"605492ac41xxxxe0362f0707\"]"
},
"customData": { "school": "Peking University", "age": 22 },
"statusChangedAt": "2022-07-03T02:20:30.000Z"
}
}
¶ Data structure
¶ SignUpProfileDto
| Name | Type | Is it required? | Description | Sample value |
|---|---|---|---|---|
| nickname | string | No | Nickname | |
| company | string | No | Company | GenAuth .Inc |
| photo | string | No | Photo | https://www.genauth.ai/demo.jpg |
| device | string | No | Device | iOS |
| browser | string | No | Browser | Edge |
| name | string | No | Name | Mike |
| givenName | string | No | First name | Zhou |
| familyName | string | No | Last name | Jay |
| middleName | string | No | Middle name | Jane |
| profile | string | No | Profile | this is my profile |
| preferredUsername | string | No | Preferred username | Mike |
| website | string | No | Website | https://www.genauth.ai |
| gender | string | No | Gender | M |
| birthdate | string | No | Birthday | 2020.2.2 |
| zoneinfo | string | No | Zoneinfo | HongKong |
| locale | string | No | Locale | EN-US |
| address | string | No | Address | Hai Dian XX |
| formatted | string | No | Formatted | |
| streetAddress | string | No | Street address | Hai Dian Street 1 |
| locality | string | No | Locality | BeiJing HaiDian |
| region | string | No | Region | china |
| postalCode | string | No | Postal code | 3500000 |
| country | string | No | Country | china |
| string | No | help@genauth.ai | ||
| phone | string | No | Phone | 114114114 |
| customData | object | No | User custom data | {"name":"H"} |
¶ SignUpOptionsDto
| Name | Type | Is it required? | Description | Sample value |
|---|---|---|---|---|
| clientIp | string | No | Client IP | 192.168.0.1 |
| phonePassCodeForInformationCompletion | string | No | SMS verification code for information completion | 1234 |
| emailPassCodeForInformationCompletion | string | No | Email verification code for information completion | 1234 |
| context | object | Yes | Additional parameters passed when logging in/registering, will be stored in user custom fields | {"phoneNumber":"188xxxx8888","phoneCountryCode":"+86"} |
| passwordEncryptType | string | No | Password encryption type, supports sm2 and rsa. Default is not encrypted. - none: Do not encrypt the password, use plaintext for transmission.- rsa: Use RSA256 algorithm to encrypt the password, you need to use the RSA256 public key of GenAuth service for encryption, please read the Introduction section to learn how to obtain the RSA256 public key of GenAuth service.- sm2: Use the SM2 algorithm (opens new window) to encrypt the password, you need to use the SM2 public key of GenAuth service for encryption, please read the Introduction section to learn how to obtain the SM2 public key of GenAuth service. | sm2 |
¶ UserDto
| Name | Type | Is it required? | Description | Sample value |
|---|---|---|---|---|
| userId | string | Yes | User unique identifier, can be user ID, username, email, phone number, external ID, or ID in external identity source. | 6229ffaxxxxxxxxcade3e3d9 |
| createdAt | string | Yes | Creation time | 2022-07-03T02:20:30.000Z |
| updatedAt | string | Yes | Update time | 2022-07-03T02:20:30.000Z |
| status | string | Yes | Account current status | Suspended |
| externalId | string | No | Third-party external ID | 10010 |
| string | No | Email, not case-sensitive | test@example.com | |
| phone | string | No | Phone number, without area code. If it is an international phone number, please specify the area code in the phoneCountryCode parameter. | 188xxxx8888 |
| phoneCountryCode | string | No | Phone area code, not required for mainland China phone numbers. GenAuth SMS service does not support international phone numbers by default, you need to configure the corresponding international SMS service in the GenAuth console. Complete list of phone area codes can be found at https://en.wikipedia.org/wiki/List_of_country_calling_codes. | +86 |
| username | string | No | Username, unique in user pool | bob |
| name | string | No | User real name, not unique | San Zhang |
| nickname | string | No | Nickname | San Zhang |
| photo | string | No | Avatar link | https://files.authing.co/authing-console/default-user-avatar.png |
| loginsCount | number | No | Total login count | 3 |
| lastLogin | string | No | Last login time | 2022-07-03T02:20:30.000Z |
| lastIp | string | No | Last login IP | 127.0.0.1 |
| gender | string | Yes | Gender: - M: male- F: female- U: unknown | M |
| emailVerified | boolean | Yes | Email verification | true |
| phoneVerified | boolean | Yes | Phone number verification | true |
| passwordLastSetAt | string | No | User last password modification time | 2022-07-03T02:20:30.000Z |
| birthdate | string | No | Birthday | 2022-06-03 |
| country | string | No | Country | CN |
| province | string | No | Province | BJ |
| city | string | No | City | BJ |
| address | string | No | Address | xxx |
| streetAddress | string | No | Street address | xxx |
| postalCode | string | No | Postal code | 438100 |
| company | string | No | Company | steamory |
| browser | string | No | Browser | Mozilla/5.0 (Linux; Android 10; V2001A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/87.0.4280.141 Mobile Safari/537.36 VivoBrowser/10.2.10.0 |
| device | string | No | Device | iOS |
| givenName | string | No | First name | San |
| familyName | string | No | Last name | Zhang |
| middleName | string | No | Middle name | |
| profile | string | No | Profile | |
| preferredUsername | string | No | Preferred Username | |
| website | string | No | Website | |
| zoneinfo | string | No | Time zone information | |
| locale | string | No | Locale | |
| formatted | string | No | Standardized full address | |
| region | string | No | Region | |
| userSourceType | string | Yes | Source type: - excel: Imported through excel- register: User self-registration- adminCreated: Manual creation by the administrator backend (including creating users using the management API)- syncTask: Synchronization task of the synchronization center | excel |
| userSourceId | string | No | Application ID or synchronization task ID | |
| lastLoginApp | string | No | User last login application ID | |
| mainDepartmentId | string | No | User main department ID | |
| lastMfaTime | string | No | User last MFA authentication time | |
| passwordSecurityLevel | number | No | User password security strength level | 1 |
| resetPasswordOnNextLogin | boolean | No | Next login requires password reset | |
| departmentIds | array | No | User department ID list | ["624d930c3xxxx5c08dd4986e","624d93102xxxx012f33cd2fe"] |
| identities | array | No | External identity source IdentityDto. | |
| customData | object | No | User extended field data | {"school":"xxxx","age":22} |
| statusChangedAt | string | No | User status last modified time | 2022-07-03T02:20:30.000Z |
¶ IdentityDto
| Name | Type | Is it required? | Description | Sample value |
|---|---|---|---|---|
| identityId | string | Yes | Identity ID | 62299d8b866d2dab79a89dc4 |
| extIdpId | string | Yes | Identity Connection ID | 6076bacxxxxxxxxd80d993b5 |
| provider | string | yes | External identity source type: - wechat: WeChat- qq: QQ- wechatwork: WeChat for Business- dingtalk: DingTalk- weibo: Weibo- github: GitHub- alipay: Alipay- baidu: Baidu- lark: Feishu- welink: Welink- yidun: NetEase Yidun- qingcloud: Qingyun- google: Google- gitlab: GitLab- gitee: Gitee- twitter: Twitter- facebook: Facebook- slack: Slack- linkedin: Linkedin- instagram: Instagram- oidc: OIDC-based enterprise identity source- oauth2: OAuth2-based enterprise identity source- saml: SAML-based enterprise identity source- ldap: LDAP-based enterprise identity source- ad: AD-based enterprise identity source- cas: CAS-based enterprise identity source- azure-ad: Azure AD-based enterprise identity source | oidc |
| type | string | yes | Identity type, such as unionid, openid, primary | openid |
| userIdInIdp | string | yes | ID in the external identity source | oj7Nq05R-RRaqak0_YlMLnnIwsvg |
| originConnIds | array | yes | Identity source connection from which the identity comes ID List | ["605492ac41xxxxe0362f0707"] |
