Skip to content

Replies & Acknowledgments

Replies are what make mailiam different - no more “no-reply@” addresses. Every email can start a real conversation.

mailiam’s reply system provides:

  • Reply-enabled emails - Customers can reply directly to form notifications
  • Automatic acknowledgments - Instant confirmation emails to form submitters
  • Conversation threading - Keep related emails together
  • Custom reply-to addresses - Professional email routing
  • Template-based responses - Branded acknowledgment emails
mailiam.config.yaml
domains:
mycompany.com:
forwarding:
# Set up replies@ address for conversations
"replies@mycompany.com": "support@company.com"
"*@mycompany.com": "general@company.com"
forms:
contact:
template: "professional"
replies: true # Enable replies
replyTo: "support@mycompany.com" # Where replies go
acknowledgment: true # Send confirmation to user
  1. User submits form → Form data sent to you
  2. System sends acknowledgment → Professional email to user from your domain
  3. User can reply → Reply goes directly to your specified address
  4. You reply back → Continues the conversation naturally

When acknowledgment: true is set, users automatically receive:

Subject: Thank you for contacting MyCompany
Hi [Name],
Thank you for reaching out to us. We received your message and will
get back to you within 24 hours.
Your message:
"[Original message text]"
Best regards,
The MyCompany Team
---
This email was sent from MyCompany.com
You can reply directly to this email.
domains:
mycompany.com:
templates:
acknowledgments:
contact:
subject: "We received your message, {{ form.name }}!"
html: |
<div style="font-family: Arial, sans-serif; max-width: 600px;">
<div style="background: #007cba; color: white; padding: 20px;">
<h1>{{ company.name }}</h1>
</div>
<div style="padding: 30px;">
<h2>Thanks for reaching out!</h2>
<p>Hi {{ form.name }},</p>
<p>We received your message and our team will review it shortly.
Here's what happens next:</p>
<div style="background: #f8f9fa; padding: 20px; border-left: 3px solid #007cba;">
<h3>Your Message:</h3>
<p>{{ form.message }}</p>
{% if form.phone %}
<p><strong>Phone:</strong> {{ form.phone }}</p>
{% endif %}
</div>
<div style="background: #e8f4f8; padding: 15px; border-radius: 5px; margin: 20px 0;">
<p><strong>⏱ Response Time:</strong> Within 4 business hours</p>
<p><strong>📞 Urgent?</strong> Call us at {{ company.phone }}</p>
<p><strong>💬 Questions?</strong> Just reply to this email</p>
</div>
<p>Best regards,<br>
The {{ company.name }} Team</p>
</div>
<div style="background: #f8f9fa; padding: 15px; text-align: center; color: #666;">
<p>{{ company.name }} | {{ company.address }}</p>
<p>You can reply directly to this email to continue the conversation.</p>
</div>
</div>
text: |
Hi {{ form.name }},
Thanks for reaching out to {{ company.name }}!
We received your message: "{{ form.message }}"
Our team will get back to you within 4 business hours.
For urgent matters, call us at {{ company.phone }}
You can reply directly to this email with any questions.
Best regards,
The {{ company.name }} Team
forms:
contact:
acknowledgment:
template: "contact" # Use custom template above
delay: "0" # Send immediately
domains:
mycompany.com:
forwarding:
"replies@mycompany.com": "support@company.com"
forms:
contact:
replies: true
replyTo: "replies@mycompany.com"
domains:
mycompany.com:
forwarding:
"support-replies@mycompany.com": "support-team@company.com"
"sales-replies@mycompany.com": "sales-team@company.com"
"billing-replies@mycompany.com": "billing-team@company.com"
forms:
support:
replies: true
replyTo: "support-replies@mycompany.com"
acknowledgment:
template: "support"
sales:
replies: true
replyTo: "sales-replies@mycompany.com"
acknowledgment:
template: "sales"
billing:
replies: true
replyTo: "billing-replies@mycompany.com"
acknowledgment:
template: "billing"
domains:
mycompany.com:
forms:
contact:
replies: true
conditionalRouting:
- condition: "form.subject contains 'support'"
replyTo: "support@mycompany.com"
acknowledgment: "support"
- condition: "form.subject contains 'sales'"
replyTo: "sales@mycompany.com"
acknowledgment: "sales"
- condition: "form.company != ''"
replyTo: "enterprise@mycompany.com"
acknowledgment: "enterprise"
- default:
replyTo: "general@mycompany.com"
acknowledgment: "general"
domains:
mycompany.com:
forms:
contact:
replies: true
threading:
enabled: true
idPrefix: "MC" # Thread IDs like MC-abc123
maxAge: "30d" # Keep threads for 30 days
subjectTemplate: "Re: {{ original.subject }}"

mailiam automatically:

  1. Generates unique thread IDs for each conversation
  2. Adds proper email headers for threading
  3. Maintains conversation history in your email client
  4. Routes follow-up emails to the same handler
Initial Form → MC-abc123 → "Contact Form Submission"
First Reply → MC-abc123 → "Re: Contact Form Submission"
Your Response → MC-abc123 → "Re: Contact Form Submission"
Their Reply → MC-abc123 → "Re: Contact Form Submission"
domains:
mycompany.com:
forms:
support:
replies: true
autoResponders:
# Out of office style responses
- trigger: "received"
condition: "business_hours == false"
response:
template: "after-hours"
delay: "0"
# Escalation after time
- trigger: "no_response"
condition: "elapsed_time > 4h"
response:
template: "escalation"
notify: "manager@company.com"
# Keywords trigger responses
- trigger: "content_match"
condition: "message contains ['urgent', 'emergency', 'asap']"
response:
template: "priority"
priority: "high"
forms:
contact:
replies: true
analytics:
trackReplies: true
trackResponseTime: true
trackResolution: true
reportingEmail: "analytics@company.com"

View reply metrics:

Terminal window
# Reply statistics
mailiam analytics replies contact --last 30d
# Response time metrics
mailiam metrics response-time contact
# Conversation completion rates
mailiam analytics conversations --completion-rate
# Form submission data
form:
name: "John Doe"
email: "john@example.com"
message: "Original message text"
phone: "555-123-4567"
# ... any custom fields
# Company information
company:
name: "MyCompany Inc."
email: "contact@mycompany.com"
phone: "555-987-6543"
address: "123 Business St"
website: "https://mycompany.com"
# Thread information
thread:
id: "MC-abc123"
created: "2024-01-15T10:30:00Z"
url: "https://app.mailiam.dev/threads/MC-abc123"
# System information
submission:
id: "sub_123456789"
timestamp: "2024-01-15T10:30:00Z"
ip: "192.168.1.1"
userAgent: "Mozilla/5.0..."
# Custom variables
responseTime: "4 hours"
priority: "normal"
department: "support"
<!-- Professional support acknowledgment -->
<div style="font-family: 'Helvetica Neue', Arial, sans-serif; max-width: 600px;">
<div style="background: #2c3e50; color: white; padding: 25px; text-align: center;">
<h1>{{ company.name }} Support</h1>
<p>Ticket #{{ thread.id }}</p>
</div>
<div style="padding: 30px; background: white;">
<h2>Hi {{ form.name }},</h2>
<p>Your support request has been received and assigned ticket number <strong>{{ thread.id }}</strong>.</p>
<div style="background: #f8f9fa; padding: 20px; border: 1px solid #dee2e6; border-radius: 5px;">
<h3>Your Request:</h3>
<p><strong>Subject:</strong> {{ form.subject | default:"General Support" }}</p>
<p><strong>Priority:</strong> {{ priority | title }}</p>
<p><strong>Message:</strong></p>
<p>{{ form.message }}</p>
</div>
<div style="background: #d4edda; padding: 15px; border-radius: 5px; margin: 20px 0;">
<h3>What happens next:</h3>
<ol>
<li>Our support team will review your request within 2 hours</li>
<li>We'll investigate and work on a solution</li>
<li>You'll receive updates as we make progress</li>
<li>We'll notify you when your issue is resolved</li>
</ol>
</div>
<p>You can reply directly to this email to add more information or ask questions about your request.</p>
<div style="text-align: center; margin: 30px 0;">
<a href="{{ company.website }}/support/ticket/{{ thread.id }}"
style="background: #007cba; color: white; padding: 12px 24px; text-decoration: none; border-radius: 5px;">
View Ticket Online
</a>
</div>
<p>Best regards,<br>
{{ company.name }} Support Team</p>
</div>
</div>
<!-- Sales-focused acknowledgment -->
<div style="font-family: Arial, sans-serif; max-width: 600px;">
<div style="background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 30px; text-align: center;">
<h1>Thanks for your interest!</h1>
<p>{{ company.name }} Sales Team</p>
</div>
<div style="padding: 30px;">
<h2>Hi {{ form.name }},</h2>
<p>Thank you for reaching out to {{ company.name }}. We're excited to learn more about your needs!</p>
{% if form.company %}
<p>We see you're with <strong>{{ form.company }}</strong> - we love working with companies in your space.</p>
{% endif %}
<div style="background: #f8f9fa; padding: 20px; border-left: 4px solid #667eea;">
<h3>Your inquiry:</h3>
<p>{{ form.message }}</p>
</div>
<div style="background: #e8f5e8; padding: 20px; border-radius: 5px; margin: 20px 0;">
<h3>Next steps:</h3>
<p>📞 One of our sales specialists will call you within 24 hours</p>
<p>📧 We'll send you relevant case studies and pricing information</p>
<p>📅 We'll schedule a demo that fits your calendar</p>
</div>
<p><strong>Questions before we connect?</strong> Just reply to this email!</p>
<div style="text-align: center; margin: 30px 0;">
<a href="{{ company.website }}/calendar"
style="background: #667eea; color: white; padding: 15px 30px; text-decoration: none; border-radius: 5px; font-weight: bold;">
Schedule a Demo Now
</a>
</div>
<p>Looking forward to speaking with you!</p>
<p>Best regards,<br>
{{ sales.rep.name | default:"The Sales Team" }}<br>
{{ company.name }}</p>
</div>
</div>
Terminal window
# Enable replies for a form
mailiam forms update contact --replies true --reply-to support@mycompany.com
# Set up acknowledgment template
mailiam forms update contact --acknowledgment true --acknowledgment-template professional
# Test reply configuration
mailiam forms test-reply contact john@test.com
Terminal window
# Create acknowledgment template
mailiam templates create acknowledgment-contact --type acknowledgment
# Test acknowledgment template
mailiam templates test acknowledgment-contact --data test-form.json
# Deploy templates
mailiam templates deploy --type acknowledgment
Terminal window
# View reply analytics
mailiam analytics replies --last 30d
# Check response times
mailiam metrics reply-time --average
# View conversation threads
mailiam conversations list --active
  • Always acknowledge form submissions
  • Set clear expectations for response times
  • Provide alternative contact methods
  • Include relevant company information
  • Make it easy to reply with clear instructions
  • Route by department based on form type
  • Use dedicated reply addresses for different teams
  • Set up proper forwarding for all reply addresses
  • Monitor reply address deliverability
  • Keep it branded but not overwhelming
  • Include the original message for context
  • Provide clear next steps
  • Make it mobile-friendly
  • Test across email clients
  • Enable threading for ongoing conversations
  • Set reasonable thread expiry times
  • Monitor response times and set SLAs
  • Have escalation procedures for urgent matters

Replies not being received:

Terminal window
# Check reply forwarding
mailiam domains test mycompany.com replies@mycompany.com
# Verify MX records
mailiam domains dns-config mycompany.com --type mx
# Test reply routing
mailiam forms test-reply contact --verbose

Acknowledgments not sending:

Terminal window
# Check acknowledgment configuration
mailiam forms show contact --include-acknowledgment
# Test acknowledgment template
mailiam templates test acknowledgment-contact
# View acknowledgment logs
mailiam logs acknowledgments --last 1h

Threading not working:

Terminal window
# Verify threading configuration
mailiam forms show contact --include-threading
# Check thread headers
mailiam conversations show MC-abc123 --headers
# Test email client threading
mailiam conversations test-threading contact

Reply-enabled emails transform impersonal form submissions into the beginning of real customer relationships. That’s the power of professional email infrastructure.