Email Integration (Maileroo)#
Connect Maileroo to Outeract for transactional email messaging with delivery tracking.
Overview#
| Property | Value |
|---|
| Platform Type | EMAIL |
| Provider | Maileroo |
| Authentication | API Key |
| Webhook Type | Dedicated |
Prerequisites#
- Maileroo account (sign up)
- Verified sending domain
- API key
Setup Guide#
Step 1: Get Maileroo API Key#
- Log in to Maileroo Dashboard
- Go to API Keys
- Create a new API key
- Copy the key
Step 2: Verify Your Domain#
- In Maileroo, go to Domains
- Add your sending domain
- Add the DNS records:
- SPF record
- DKIM record
- DMARC record (optional but recommended)
- Verify the domain
mutation {
createPlatformConnection(
platformName: EMAIL
name: "Maileroo Email"
config: {
api_key: "your-api-key"
from_email: "noreply@yourdomain.com"
from_name: "Your Company"
}
) {
id
webhookUrl
}
}
- In Maileroo Dashboard, go to Webhooks
- Add a new webhook
- Enter your Outeract webhook URL
- Select events to receive:
- Delivered
- Bounced
- Opened
- Clicked
- Save the webhook
Step 5: Test the Connection#
mutation {
testPlatformConnection(id: "pc_email_123") {
success
message
}
}
Supported Features#
Message Types#
| Type | Send | Receive | Notes |
|---|
| Text | ✓ | ✓ | Plain text emails |
| HTML | ✓ | ✓ | Rich HTML formatting |
| Attachments | ✓ | ✓ | Documents, images |
Capabilities#
- Transactional emails
- HTML templates
- Attachment support
- Delivery tracking
- Open/click tracking
Sending Messages#
Basic Email#
mutation {
sendMessage(
platformConnectionId: "pc_email_123"
toExternalId: "user@example.com"
message: "Hello from Outeract!"
metadata: {
subject: "Welcome to Our Service"
}
) {
id
status {
success
}
}
}
HTML Email#
mutation {
sendMessage(
platformConnectionId: "pc_email_123"
toExternalId: "user@example.com"
message: "<h1>Welcome!</h1><p>Thanks for signing up.</p>"
metadata: {
subject: "Welcome",
content_type: "text/html"
}
) {
id
}
}
Email with Attachment#
mutation {
sendMessage(
platformConnectionId: "pc_email_123"
toExternalId: "user@example.com"
message: "Please find the report attached."
fileIds: ["file_xyz789"]
metadata: {
subject: "Monthly Report"
}
) {
id
}
}
Email addresses in standard format:
| Format | Example |
|---|
| Email | user@example.com |
| With name | John Doe <john@example.com> |
Webhook Events#
Inbound Email#
{
"event_id": "evt_abc123",
"event_type": "message.inbound",
"payload": {
"message": {
"text": "Hello!",
"html": "<p>Hello!</p>",
"subject": "Question"
},
"platform": "email"
},
"edges": {
"sent_by": {
"external_id": "sender@example.com"
}
}
}
Delivery Status#
{
"event_id": "evt_xyz789",
"event_type": "message.status",
"payload": {
"status": "delivered",
"external_message_id": "msg_123"
}
}
Email Deliverability#
Authentication Records#
For best deliverability, configure:
| Record | Purpose |
|---|
| SPF | Authorize sending IPs |
| DKIM | Sign emails cryptographically |
| DMARC | Policy for authentication failures |
Best Practices#
- Use a consistent From address
- Include unsubscribe links for marketing emails
- Monitor bounce rates and remove invalid addresses
- Warm up new domains gradually
- Avoid spam triggers in subject lines and content
Troubleshooting#
“Email not delivered”#
- Check Maileroo dashboard for delivery status
- Verify recipient email is valid
- Check spam folders
- Review bounce messages
“Authentication failed”#
- Verify API key is correct
- Check API key has send permissions
- Ensure key isn’t expired
“Domain not verified”#
- Check DNS records are properly configured
- Wait for DNS propagation (up to 48 hours)
- Re-verify in Maileroo dashboard
“High bounce rate”#
- Clean your email list
- Use double opt-in for subscriptions
- Remove addresses that bounce
Rate Limits#
Rate limits depend on your Maileroo plan:
| Plan | Daily Limit |
|---|
| Free | 1,000 |
| Pro | 50,000+ |
| Enterprise | Unlimited |
Security#
- API keys are stored encrypted
- Webhook signatures are validated
- TLS encryption for all API calls
Resources#