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
Development Integration
  • API

  • SDK

    • Java

      • Installation and use
      • User authentication module

        • Login

        • Logout

        • Manage Token

        • Register

        • User information

        • Account Binding

        • MFA Factor Management

          • Initiate binding MFA Authentication factor request
          • Bind MFA authentication factor
          • Unbind MFA authentication factor
          • Get all bound MFA authentication factors
          • Get a bound MFA authentication factor
          • Get bindable MFA authentication factors
        • User-related resources

        • Message service

        • Authentication

        • Others

        • OIDC module
        • OAuth module
        • SAML module
        • CAS module
        • Events
      • Management module

    • Node.js

    • Python

  • Error Codes
  1. Development Integration
  2. /
  3. SDK
  4. /
  5. Java
  6. /
  7. User authentication module

  8. /
  9. MFA Factor Management

  10. /
  11. Initiate binding MFA Authentication factor request

¶ Initiate a request to bind an MFA authentication factor

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

This document is automatically generated based on https://github.com/authing/authing-docs-factory based on the https://api-explorer.genauth.ai V3 API, and is consistent with the API parameters and return results. If the description of this document is incorrect, please refer to the V3 API.

When the user has not bound an MFA authentication factor, you can initiate a request to bind an MFA authentication factor. Different types of MFA authentication factor binding requests require different parameters, see profile parameters for details. After initiating the verification request, the GenAuth server will use different means to request verification based on the corresponding authentication factor type and the passed parameters. This interface will return the enrollmentToken, you need to bring this enrollmentToken when requesting the "Bind MFA Authentication Factor" interface and provide the corresponding credentials.

¶ Method Name

AuthenticationClient.sendEnrollFactorRequest

¶ Request Parameters

NameType
Is it required
Default Value
Description
Example Value
profileFactorProfileYes-MFA authentication element details{"phoneNumber":"188xxxx8888","phoneCountryCode":"+86"}
factorTypestringYes-MFA authentication factorType:
- OTP: OTP
- SMS: SMS
- EMAIL: Email
- FACE: Face
SMS

¶ Sample Code

package test.authentication;

import cn.authing.sdk.java.client.AuthenticationClient;
import cn.authing.sdk.java.dto.FactorProfile;
import cn.authing.sdk.java.dto.SendEnrollFactorRequestDto;
import cn.authing.sdk.java.dto.SendEnrollFactorRequestRespDto;
import cn.authing.sdk.java.model.AuthenticationClientOptions;
import cn.authing.sdk.java.util.JsonUtils;

public class SendEnrollFactorRequestTest {
    // Need to be replaced with your GenAuth App ID
    private static final String APP_ID = "AUTHING_APP_ID";
    // Need to be replaced with your GenAuth App Secret
    private static final String APP_SECRET = "AUTHING_APP_SECRET";
    // Need to be replaced with your GenAuth App Host
    private static final String APP_HOST = "AUTHING_APP_HOST";
    // Need to be replaced with your GenAuth Access Token
    private static final String ACCESS_TOKEN = "AUTHING_ACCESS_TOKEN";

    public static void main(String[] args) throws Throwable {
        AuthenticationClientOptions clientOptions = new AuthenticationClientOptions();
        clientOptions.setAppId(APP_ID);
        clientOptions.setAppSecret(APP_SECRET);
        clientOptions.setAppHost(APP_HOST);
        clientOptions.setAccessToken(ACCESS_TOKEN);

        AuthenticationClient client = new AuthenticationClient(clientOptions);

        SendEnrollFactorRequestDto reqDto = new SendEnrollFactorRequestDto();
        reqDto.setFactorType(SendEnrollFactorRequestDto.FactorType.EMAIL);
        FactorProfile profile = new FactorProfile();
        profile.setEmail("123@qq.com");
        reqDto.setProfile(profile);
        SendEnrollFactorRequestRespDto response = client.sendEnrollFactorRequest(reqDto);
        System.out.println(JsonUtils.serialize(response));
    }
}

¶ Request Response

Type: SendEnrollFactorRequestRespDto

NameTypeDescription
statusCodenumberBusiness status code. You can use this status code to determine whether the operation is successful. 200 means success.
messagestringDescription
apiCodenumberSegment error code, through which you can get the specific error type (successful request does not return). For a detailed list of error codes, see: API Code List (opens new window)
requestIdstringRequest ID. Returned when the request fails.
dataSendEnrollFactorRequestDataDtoResponse Data

Example Results:

{
  "statusCode": 200,
  "message": "Operation successful",
  "requestId": "934108e5-9fbf-4d24-8da1-c330328abd6c",
  "data": {
    "enrollmentToken": "TQoCISidM0kBji0dxRi3afSDtkvvMiUphenIgLF87y+JOw4T8fDWOsHHXIcvZ2EVESXhTrfGyh1iGf52Cg9e9byeFQvm1VZ0QWrwmzwpntFAVtf1IP9LqVhmzXhBMFvLOcU/z1Eh/n0CrwX0uHNpJoMW9lp9AqHd9HvauaGKX+Y=",
    "otpData": {
      "qrCodeUri": "otpauth://totp/userPoolName:test?secret=xxxx&period=30&digits=6&algorithm=SHA1&issuer=userPoolName",
      "qrCodeDataUrl": "data:image/png;base64,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",
      "recoveryCode": "e7ad-aaa4-da75-fa37-57d1-5141"
    }
  }
}

¶ Data Structure

¶ FactorProfile

NameType
Is it required
Description
Example Value
phoneNumberstringnoThis parameter is required when initiating the binding of the SMS authentication factor. You need to pass the phone number that the user wants to bind. The GenAuth server will send a SMS verification code to this phone number and require the user to provide the verification code during the MFA binding phase. A phone number can only be requested once within one minute.188xxxx8888
phoneCountryCodestringnoThis parameter can be set when initiating the binding of the SMS authentication factor and an international phone number needs to be bound. The default value is +86, the mobile area code of mainland China. The GenAuth SMS service does not currently support international mobile numbers. You need to configure the corresponding international SMS service in the GenAuth console. For a complete list of mobile area codes, please refer to https://en.wikipedia.org/wiki/List_of_country_calling_codes.+86
emailstringnoThis parameter is required when initiating the binding of the email verification code authentication factor. You need to pass the email address that the user wants to bind. The GenAuth server will send an email verification code to this email address, requiring the user to provide the verification code during the MFA binding phase. An email address can only request once within one minute.test@example.com

¶ SendEnrollFactorRequestDataDto

NameType
Is it required
Description
Example Value
enrollmentTokenstringYesTemporary credential enrollmentToken, valid for one minute. This parameter is required when "binding MFA authentication factors".TQoCISidM0kBji0dxRi3afSDtkvvMiUphenIgLF87y+JOw4T8fDWOsHHXIcvZ2EVESXhTrfGyh1iGf52Cg9e9byeFQvm1VZ0QWrwmzwpntFAVtf1IP9LqVhmzXhBMFvLOcU/z1Eh/n0CrwX0uHNpJoMW9lp9AqHd9HvauaGKX+Y=
otpDataNoWhen initiating binding of OTP type authentication factor, the interface will return this data. Nested Type: SendEnrollFactorRequestOtpDataDto.

¶ SendEnrollFactorRequestOtpDataDto

NameType
Is it required
Description
Example Value
qrCodeUristringYesOTP Auth Uriotpauth://totp/userPoolName:test?secret=xxxx&period=30&digits=6&algorithm=SHA1&issuer=userPoolName
qrCodeDataUrlstringYesBase64-encoded OTP QR code, which can be used by the front end to render the QR code.data:image/png;base64,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
recoveryCodestringYesOTP Recovery Codee7ad-aaa4-da75-fa37-57d1-5141
Previous article: Get the list of external identity sources enabled by the application Next article: Bind MFA authentication factor
  • Method Name
  • Request Parameters
  • Sample Code
  • Request Response
  • Data Structure

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.