• Create invitation handler

    Parameters

    • authAPI: Pick<AuthDefaultAdapterAPI, "generateOnetimeToken">

      Authentication API

      • generateOnetimeToken
    • config: InviteUserEmailConfig & {
          mailService?: MailService;
          sender: string;
      }

      Invite user email config

      • enabled : boolean to enable/disable invite user feature
      • sender : email sender address
      • template : email template consist of {bodyTemplate, subject, urlTemplate}
      • mailService : Mail service from backend-sdk external module
    • invitationService: InvitationDataService

      injected service use to handle the invitation related operations

      • createInvitation
      • getInvitation
    • 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: invitation object

    Description

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

    1. Create invitation (invitationService.createInvitation)

    2. Generate onetime token (authAPI.generateOnetimeToken)

    3. Send invitation email (config.mailService.sendMail)

    4. Return created invitation

    Throws

    404 NBError Not Found

    • Invite user feature not configured

    Throws

    500 NBError Internal Server Error

    • Missing email send config
    • Send invitation email failed

Generated using TypeDoc