This endpoint triggers the sending of login notification emails to users who have recently logged into their accounts. It can be used to send a single test email or to process all eligible users.
Authentication
This endpoint requires API key authentication.
Query Parameters
Optional. If provided, sends a test login notification email to this address instead of to actual users.
Response
Indicates whether the operation was successful
Indicates if the endpoint was run in test mode
Status message about the operation
200 OK (Test Mode)
{
"success": true,
"count": 1,
"testMode": true,
"message": "Login email successfully sent to test address [email protected]"
}
200 OK (Production Mode)
{
"success": true,
"count": 8,
"testMode": false,
"message": "Login emails successfully sent to 8 users"
}
400 Bad Request
{
"success": false,
"message": "Invalid email format",
"error": "The provided test email address is not valid"
}
401 Unauthorized
{
"success": false,
"message": "Unauthorized. Invalid or missing API key."
}
Example Usage
// Send a test login notification email
const testLoginEmail = async () => {
const apiKey = "YOUR_API_KEY";
const response = await fetch('http://localhost:3000/api/cron/[email protected]', {
method: 'GET',
headers: {
'Authorization': `Bearer ${apiKey}`
}
});
const data = await response.json();
console.log(data);
};
// Trigger the actual job for sending login notification emails to all eligible users
const sendLoginEmails = async () => {
const apiKey = "YOUR_API_KEY";
const response = await fetch('http://localhost:3000/api/cron/send-login-email', {
method: 'GET',
headers: {
'Authorization': `Bearer ${apiKey}`
}
});
const data = await response.json();
console.log(data);
};
Email Template
The login notification email is designed to inform users about recent login activity on their accounts. It includes:
- Personalized greeting with the user’s first name
- Details of the recent login (time, location, device)
- Instructions on what to do if they don’t recognize the login activity
- Security recommendations
- Link to account security settings
- Support contact information
Implementation Notes
- This endpoint is designed to be called by a scheduled task (cron job)
- When called without a
testEmail parameter, it will find all users who logged in since the last run
- The endpoint is rate limited to prevent accidental mass emails
- In production, authentication via API key is required
- Email sending is logged for audit purposes
Standard user JWT token for authentication.
Test email address to which the email will be sent
Example:"Login email successfully sent to test address"