• Send verification email handler

    Parameters

    • authAPI: Pick<AuthDefaultAdapterAPI, "generateOnetimeToken">

      injected API to handle the authentication related operations

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

      verify email configuration

      • enabled : boolean to enable/disable verification 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: UserDataService

      injected service use to handle the user related operations

      • findUsers
    • logger: Logger

      injected logger used to handle the logging

    • context: AdapterHandlerContext

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

      • params.id is required

    Returns Promise<adapter.AdapterHandlerResponse>

    204 Status No Content

    Description

    This handler will send verification email by applying the following steps in sequence:

    1. Get userId from context.params

    2. Check if verify email feature is enabled, if yes continue next step, otherwise throw 404 error

    3. Find user by userId (userService.findUsers)

    4. Generate onetime token (authAPI.generateOnetimeToken)

    5. Send email (verifyEmailConfig.mailService.sendMail)

    Throws

    400 NBError Bad Request

    • userId is not valid

    Throws

    404 NBError Not Found

    • verify email feature not defined

    Throws

    500 NBError Internal Server Error

    • multiple records found
    • verify email configuration not provided in adapter option
    • email is missing
    • send verify email failed

Generated using TypeDoc