For using API based providers you should have API key or API secret. And in this post I’ll show you how to use Resend API provider for sending OTP codes to clients. For this we need only single library which named auth-verify. You can install it from NPM
npm install auth-verify
Setup
Firt of all we should configure API provider to our app:
const AuthVerify = require('auth-verify');
const auth = new AuthVerify();
// configure the otp sender
auth.otp.sender({
via: 'email',
service: 'api',
apiService: 'resend',
apiKey: 'YOUR_API_KEY_HERE'
});
You can use also Mailgun, Sendgrid. Just change the
apiService
Sending the OTP code
For sending OTP code to the client we’ll use send() method.
await auth.otp.send("johndoe@example.com", {
otpLen: 5, // length of otp codes (default: 6)
subject: "Account verification",
text: `Your OTP code is ${auth.otp.code}`
});
Verify the OTP code
For verifying OTP code which is provided by client we’ll use verify() method.
const valid = await auth.otp.verify("johndoe@example.com", "12345");
if(valid) console.log('User verified!');
else console.log('Invalid code!');
