parse-server-aws-ses-mail-adapter
v1.2.2
Published
AWS SES Mail Adapter for Parse Server
Maintainers
Readme
Parse Server AWS SES Mail Adapter
This is an AWS SES mail adapter for Parse Server.
Installation
npm install parse-server-aws-ses-mail-adapterUsage
const ParseServer = require('parse-server').ParseServer;
const awsSesMailAdapter = require('parse-server-aws-ses-mail-adapter');
const mailAdapter = awsSesMailAdapter({
region: 'YOUR_AWS_REGION',
accessKeyId: 'YOUR_AWS_ACCESS_KEY_ID',
secretAccessKey: 'YOUR_AWS_SECRET_ACCESS_KEY',
from: '[email protected]'
});
const api = new ParseServer({
// ... other configurations
emailAdapter: mailAdapter
});Configuration Options
region: AWS RegionaccessKeyId: AWS Access Key IDsecretAccessKey: AWS Secret Access Keyfrom: Sender's email address
Custom Email Templates
You can customize the content and subject of verification emails. Add the following options when initializing the adapter:
const mailAdapter = awsSesMailAdapter({
// ... other configurations
verificationBody: 'Dear %username%,\n\n' +
'Please verify your email address %email%\n' +
'Click the following link to verify:\n' +
'%link%\n\n' +
'Thank you!\n' +
'%appname%',
verificationSubject: '%appname% - Please Verify Your Email',
// Password reset email settings
passwordResetBody: 'Dear %username%,\n\n' +
'You have requested to reset your password.\n' +
'Click the following link to reset your password:\n' +
'%link%\n\n' +
'If you did not request this, please ignore this email.\n\n' +
'Thank you!\n' +
'%appname%',
passwordResetSubject: '%appname% - Password Reset Request'
});Available variables:
%username%: Username%email%: Email address%appname%: Application name%link%: Verification link (for email verification) or reset link (for password reset)%token%: Token extracted from the link's query parameter (useful for two-step verification)
If no custom templates are provided, the system will use default English templates.
Two-Step Verification
To prevent email servers from automatically visiting verification links (which would trigger verification unintentionally), you can use the %token% variable to implement two-step verification:
verificationBody: 'Hi %username%,\n\n' +
'Please verify your email address.\n\n' +
'Click here to open the verification page:\n' +
'https://yourapp.com/verify?username=%username%&token=%token%\n\n' +
'Then click the confirmation button to complete verification.',This approach:
- Sends users to your custom verification page with the username and token
- Users must click a button on your page to trigger the actual verification
- Your page then calls the original
%link%to complete the verification - Prevents automatic link scanning by email servers from triggering verification
License
ISC
