• Create user handler

    Parameters

    • authAPI: Pick<AuthDefaultAdapterAPI, "generateOnetimeToken">

      Authentication API

      • generateOnetimeToken
    • verifyEmailConfig: PasswordEmailConfig & {
          mailService?: MailService;
          sender: string;
      }

      Verify email config

      • enabled : boolean to enable/disable verify email feature
      • sender : email sender address
      • mailService : Mail service from backend-sdk external module
      • vendorTemplate : email template for vendor {bodyTemplate, subject, urlTemplate}
      • customerTemplate : email template for customer {bodyTemplate, subject, urlTemplate}
    • userService: Pick<UserDataService, "createUser" | "getUserById">

      injected service use to handle the user related operations

      • createUser
      • getUserById
    • logger: Logger

      injected logger used to handle the logging

    • context: AdapterHandlerContext

      request context [headers, body, params, query]. Note:

      • body is required

    Returns Promise<adapter.AdapterHandlerResponse>

    201 Status Created

    • data: normalize user object

    Description

    This handler will create user by applying the following steps in sequence:

    1. Create user (userService.createUser)

    2. Check verify email configuration enabled, if yes continue next step else go to step 6

    3. Get email template config based on typeId

    4. Generate onetime token (authAPI.generateOnetimeToken)

    5. Send verification email (verifyEmailConfig.mailService.sendMail)

    6. Return created user

Generated using TypeDoc