Email provider setup
Navigate to Authenticators in the Authsignal Portal, click on Email magic link, and choose an email provider.
- Bird
- Mailjet
- Mailgun
- Mandrill
- SendGrid
- Webhook
- SMTP
- Authsignal
- Log in to your Bird account
- Get your Access key and Workspace ID from your Bird settings
- Create or locate an email channel and note the Channel ID
- Create an email template in Bird and note the Project ID/Template ID
- Publish your template and note the Published version ID
- In the Authsignal Portal, select Bird as your email provider
- Enter your Bird access key, workspace ID, channel ID, project ID/template ID, published version ID, and select your default language
Email template variables
The following template variables are available for use in your email template:The magic link URL.
The action that the user is performing.
The ID of the user.
The user agent associated with the action.
The IP address associated with the action.
Custom template variables
You can forward custom data points to your email provider as additional template variables. This is useful for personalizing emails with data specific to your application, such as a user’s account ID or a transaction amount. To configure this, navigate to your email magic link settings in the Authsignal Portal and select which custom data points to include under Custom template variables. Custom data points are prefixed by model type:- User data points are prefixed with
user_(e.g.user_accountId) - Action data points are prefixed with
action_(e.g.action_transactionAmount)
Custom data points must be registered in the Authsignal Portal before they can be selected.
Only registered data points with values set on the user or action will be included.
SDK setup
Server SDK
Initialize the SDK using your secret key from the API keys page and the API URL for your region.Web SDK
Initialize the Web SDK using your tenant ID from the API keys page and your API URL.Adaptive MFA
The following steps demonstrate how to implement adaptive MFA with email magic link - either at sign-in or as step-up authentication when the user performs a sensitive action in your app (e.g. making a payment).1. Track action
Use a Server SDK to track an action in your backend. This step can apply rules to determine if a challenge is required.- Custom UI
- Pre-built UI
signIn or createPayment).
Each action can have its own set of rules.
To learn more about using rules and handling different action states refer to our documentation on actions and rules.
2. Present challenge
If the action state isCHALLENGE_REQUIRED then you can present an email magic link challenge using the Web SDK.
- Custom UI
- Pre-built UI
3. Validate action
Use the new token obtained from the client SDK to validate the action on your backend.Next steps
- Adaptive MFA - Set up smart rules to trigger authentication based on risk
- Passkeys - Offer the most secure and user-friendly passwordless authentication

