Monitors
Automated, scheduled deliverability testing to continuously track your email health and catch issues before they impact your campaigns.
Why use monitors? Email deliverability can change at any time due to DNS changes, provider policy updates, or domain reputation shifts. Monitors automatically run tests on a schedule and alert you when something goes wrong.
How Monitors Work
Scheduled Tests
Monitors run deliverability tests automatically at your specified interval (hourly, daily, weekly).
Trend Tracking
View historical data to identify patterns and trends in your deliverability over time.
Automatic Alerts
Get notified via webhook, email, or Slack when scores drop or authentication fails.
Creating a Monitor
Create a monitor to automatically test deliverability for a verified domain:
curl -X POST https://api.reachscore.co/v1/monitors \
-H "Authorization: Bearer $REACHSCORE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"domain_id": "dom_7xK2mN9pQrT4v",
"name": "Daily newsletter check",
"from_address": "newsletter@yourcompany.com",
"subject": "Monitor test email",
"schedule": "daily",
"schedule_time": "09:00",
"timezone": "America/New_York",
"alert_threshold": 80
}'The response includes the monitor configuration and next scheduled run:
{
"id": "mon_9aB4cD5eF6gH",
"name": "Daily newsletter check",
"domain_id": "dom_7xK2mN9pQrT4v",
"from_address": "newsletter@yourcompany.com",
"schedule": "daily",
"schedule_time": "09:00",
"timezone": "America/New_York",
"alert_threshold": 80,
"status": "active",
"last_run_at": null,
"last_score": null,
"next_run_at": "2024-01-16T14:00:00Z",
"created_at": "2024-01-15T10:30:00Z"
}Schedule Options
| Schedule | Description | Best For |
|---|---|---|
| hourly | Runs every hour at the specified minute | Critical transactional emails |
| daily | Runs once per day at the specified time | Most use cases, newsletters |
| weekly | Runs once per week on the specified day and time | Low-volume senders |
| custom | Cron expression for custom schedules | Complex scheduling needs |
Custom Cron Expression
For custom schedules, use a cron expression in the cron field:
{
"schedule": "custom",
"cron": "0 9,17 * * 1-5" // 9am and 5pm on weekdays
}Alert Configuration
Configure when and how you receive alerts about monitor results:
Score Threshold
Alert when the deliverability score drops below a threshold:
{
"alert_threshold": 80,
"alert_on_drop": 10
}Alerts when score < 80 or drops by 10+ points
Authentication Failures
Alert when any authentication check fails:
{
"alert_on_auth_failure": true,
"alert_checks": ["spf", "dkim", "dmarc"]
}Alerts if SPF, DKIM, or DMARC fails
Viewing Monitor Results
Get the history of tests run by a monitor:
curl https://api.reachscore.co/v1/monitors/mon_9aB4cD5eF6gH/runs \ -H "Authorization: Bearer $REACHSCORE_API_KEY"
Returns a list of test results with scores and trends:
{
"data": [
{
"id": "test_aB1cD2eF3gH4",
"monitor_id": "mon_9aB4cD5eF6gH",
"score": 94,
"grade": "A",
"score_change": +2,
"auth_results": {
"spf": "pass",
"dkim": "pass",
"dmarc": "pass"
},
"completed_at": "2024-01-16T14:01:23Z"
},
{
"id": "test_zY9xW8vU7tS6",
"monitor_id": "mon_9aB4cD5eF6gH",
"score": 92,
"grade": "A",
"score_change": -1,
"auth_results": {
"spf": "pass",
"dkim": "pass",
"dmarc": "pass"
},
"completed_at": "2024-01-15T14:01:18Z"
}
],
"has_more": true
}Monitor Status
Best Practices
Monitor each sending stream separately
Create separate monitors for transactional emails, marketing emails, and newsletters since they may have different deliverability profiles.
Use realistic test content
Configure monitors with subject lines and content similar to your actual emails for accurate spam scoring.
Set appropriate alert thresholds
Start with a threshold of 80 and adjust based on your baseline scores. Too sensitive thresholds cause alert fatigue.
Connect webhooks for real-time alerts
Configure webhook endpoints to receive monitor.alert events for immediate notification.
Domain Verification Required
Monitors require a verified domain. Complete domain verification before creating monitors.