Send email notification with React Email template
Send email notifications using React Email templates with automatic HTML and plain text rendering.
**Features:**
- 🎨 **Professional Templates**: Pre-built React Email templates (OTP, Welcome, Invite)
- 📧 **Automatic Rendering**: Templates rendered to both HTML and plain text
- 👥 **Multiple Recipients**: Send to multiple email addresses
- 📊 **Tracking**: Optional delivery tracking by userId
- 🏷️ **Tagging**: Categorize emails with tags
- ⚡ **Priority**: Set delivery priority (high/normal)
**Available Templates:**
1. **OTP Template** (`templateType: "otp"`)
- Props: `{ otpCode, userName?, expiryMinutes?, companyName?, supportEmail? }`
- Use case: Authentication, verification codes
- Example OTP code display with security tips
2. **Welcome Template** (`templateType: "welcome"`)
- Props: `{ userName?, userEmail?, companyName?, dashboardUrl?, supportEmail? }`
- Use case: New user onboarding
- Includes getting started guide and dashboard link
3. **Invite Template** (`templateType: "invite"`)
- Props: `{ userName?, userEmail?, companyName?, inviteUrl?, supportEmail?, expiryHours?, phoneNumber? }`
- Use case: Early access / beta program invitations
- Includes onboarding steps, feature highlights, and TestFlight instructions
4. **Booking Confirmation Template** (`templateType: "booking-confirmation"`)
- Props: `{ userName?, bookingId?, experienceTitle?, experienceDate?, validUntil?, guests?, openTime?, purchasedBy?, location?, locationAddress?, partnerName?, partnerPhone?, partnerRefNumber?, viewTicketUrl?, getDirectionsUrl?, heroImageUrl?, companyName? }`
- Use case: Booking confirmation emails
- Includes reservation details, ticket info, and location
5. **Booking Cancellation Template** (`templateType: "booking-cancellation"`)
- Props: `{ userName?, bookingId?, experienceTitle?, cancellationDate?, refundMessage?, companyName?, supportEmail? }`
- Use case: Booking cancellation notifications
- Includes cancellation details and refund information
**Authentication:**
- Requires valid Bearer token
- Test tokens available for development: `test-jwt-token`, `agent-jwt-token`
**Example Request:**
```json
{
"recipients": ["user@example.com"],
"templateType": "otp",
"templateProps": {
"otpCode": "123456",
"userName": "John Doe",
"expiryMinutes": 10
},
"userId": "user-123",
"options": {
"priority": "high",
"tags": ["authentication", "login"],
"category": "general"
}
}
```
**Response Codes:**
- 200: Email sent successfully
- 400: Invalid request or email send failed
- 401: Authentication required or failed
**Best Practices:**
- Always provide `userId` for tracking
- Use `priority: "high"` for time-sensitive emails (OTP, verification)
- Add relevant tags for analytics and filtering
- Provide user context (userName, userEmail) for personalization
Authentication
AuthorizationBearer
JWT token for authentication. Use ‘test-jwt-token’ for development.
Request
This endpoint expects an object.
recipients
Array of recipient email addresses
templateType
Type of email template to use
templateProps
Props specific to the template type
userId
Optional user ID for tracking email delivery
options
Optional email configuration
Response
This endpoint returns an object.
success
data
error
