Skip to main content

Dashboard Configuration

Simply toggle on “Email” in the Log in & User Profile section of the dashboard.

Prerequisites

  • You need to have the Dynamic Client initialized (See this guide on how to do that).

Usage

import {
  sendEmailOTP,
  verifyOTP
} from '@dynamic-labs-sdk/client';

// With the user's email, call sendEmailOTP to get the otpVerification
// Then, once the user inputs the OTP code, call verifyOTP to verify it and complete the authentication

let otpVerification = null

const singInWithEmail = async () => {
  // Replace 'test@test.com' with the user's email address
  otpVerification = await sendEmailOTP({ email: 'test@test.com' });
  // Store the otpVerification for later use with the verifyOTP function
};

const verifyOTP = async () => {
  // Use the same otpVerification object that you got from the sendEmailOTP function
  // Replace '123456' with the OTP code entered by the user
  await verifyOTP({ otpVerification, otp: '123456' });
};

Rate Limits

Email verification is subject to the following rate limits:
  • 3 attempts per 10 minutes per email address
This is in place to protect deliverability of emails and to prevent abuse.