Skip to main content
This guide shows you how to set up email, SMS, and other notification channels step by step.

Quick Setup (5 Minutes)

The fastest way to start receiving alerts.
1

Add Your Email

  1. Go to SettingsIntegrations
  2. Click ”+ Add Integration”
  3. Select “Email”
  4. Enter your email address
  5. Click “Create”
You’ll receive a verification email. Click the link to confirm.
2

Create Notification Profile

  1. Go to SettingsNotification Profiles
  2. Click ”+ Create Profile”
  3. Name it “My Alerts”
  4. Select your email integration
  5. Enable all events
  6. Click “Create”
3

Assign to Monitor

  1. Go to Monitors
  2. Click on any monitor
  3. Click “Edit”
  4. Select “My Alerts” profile
  5. Click “Save”
You’re now set up! You’ll receive email alerts when this monitor has incidents.

Understanding the Alert System

UptimeIO uses a two-tier system:
Monitor → Notification Profile → Integrations → You
Integrations: Individual channels (email, SMS, Slack) Notification Profiles: Groups of integrations with event rules Monitors: Assigned one or more profiles
This separation lets you reuse the same notification setup across multiple monitors.

Setting Up Email Alerts

Email is the most common notification channel.
1

Navigate to Integrations

Go to SettingsIntegrations and click ”+ Add Integration”.
2

Select Email

Choose “Email” from the integration types.
3

Configure Email

Name: Team Email
Email Address: [email protected]
Name: Descriptive name for this integration Email: Valid email address
4

Configure Events

Choose which events this email should receive:
  • ✅ Monitor failures
  • ✅ Monitor recoveries
  • ✅ SSL certificate expiry
  • ✅ DNS errors
  • ✅ Slow response alerts
  • ❌ Slow response resolved (optional)
Start with all events enabled. You can fine-tune later.
5

Create Integration

Click “Create” and check your inbox for verification email.
6

Verify Email

Click the verification link in the email.
Email integration is now active and ready to receive alerts.

Email Notification Example

From: [email protected]
To: [email protected]
Subject: [UptimeIO] Monitor Down: API Server

Monitor: API Server
URL: https://api.example.com/health
Status: DOWN
Started: 2024-01-15 10:30:00 UTC

Error Details:
- Error: Connection timeout after 10000ms
- Region: US East
- Status Code: N/A

Verification:
✓ 3 failed checks from 2 different regions
✓ Regions: US East, Europe, Asia

View Incident: https://app.uptimeio.com/incidents/inc_123
Manage Monitor: https://app.uptimeio.com/monitors/mon_abc

Setting Up SMS Alerts

SMS alerts are perfect for critical services that need immediate attention.
1

Check SMS Credits

Go to SettingsBilling to view your SMS credits:
  • Free plan: 0 credits
  • Solo Basic: 3 credits/month
  • Solo Pro: 5 credits/month
  • Team: 10 credits/month
  • Organization: 25-100 credits/month
  • Paid plans: Included monthly credits
SMS is not available on the Free plan. Upgrade to Solo or higher.
2

Add SMS Integration

  1. Go to SettingsIntegrations
  2. Click ”+ Add Integration”
  3. Select “SMS”
3

Configure SMS

Name: On-Call Phone
Phone Number: +1234567890
Phone format: E.164 format with country code
  • US: +1234567890
  • UK: +441234567890
  • India: +911234567890
Always include the + and country code.
4

Configure Events

For SMS, be selective to avoid alert fatigue:
  • ✅ Monitor failures (critical)
  • ❌ Monitor recoveries (email is enough)
  • ✅ SSL certificate expiry (important)
  • ❌ DNS errors (email is enough)
  • ❌ Slow response alerts (too noisy)
SMS should only be for critical events that need immediate action.
5

Create Integration

Click “Create”. No verification needed for SMS.

SMS Notification Example

[UptimeIO] DOWN: API Server
https://api.example.com/health
Error: Connection timeout
View: https://uptimeio.com/i/inc_123
SMS messages are concise to fit within SMS length limits (160 characters).

Setting Up Slack Alerts

Get alerts in your team’s Slack workspace.
1

Create Slack Webhook

  1. Go to https://api.slack.com/apps
  2. Click “Create New App”
  3. Choose “From scratch”
  4. Name it “UptimeIO” and select your workspace
  5. Click “Incoming Webhooks”
  6. Toggle “Activate Incoming Webhooks” to On
  7. Click “Add New Webhook to Workspace”
  8. Select channel (e.g., #monitoring)
  9. Click “Allow”
  10. Copy the webhook URL
2

Add Slack Integration in UptimeIO

  1. Go to SettingsIntegrations
  2. Click ”+ Add Integration”
  3. Select “Slack”
3

Configure Slack

Name: Team Slack
Webhook URL: https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXX
Paste the webhook URL you copied from Slack.
4

Configure Events

Choose which events to post to Slack:
  • ✅ Monitor failures
  • ✅ Monitor recoveries
  • ✅ SSL certificate expiry
  • ✅ DNS errors
  • ❌ Slow response alerts (can be noisy)
5

Test Integration

Click “Test” to send a test message to Slack.
You should see a test message in your Slack channel.

Creating Notification Profiles

Notification profiles group integrations and define event rules.
1

Navigate to Profiles

Go to SettingsNotification Profiles and click ”+ Create Profile”.
2

Name Your Profile

Name: Production Alerts
Description: Critical alerts for production services
Use descriptive names like:
  • “Team Frontend”
  • “Critical Only”
  • “Business Hours”
  • “After Hours On-Call”
3

Configure Profile Events

Enable events at the profile level:
Profile Events:
  on_failure: true
  on_recovery: true
  on_ssl_expiry: true
  on_dns_error: true
  on_slow_response: true
  on_slow_response_resolved: false
Events disabled here won’t trigger ANY integration in this profile.
4

Add Integrations

Select integrations to include:
  • ✅ Team Email ([email protected])
  • ✅ On-Call SMS (+1234567890)
  • ✅ Slack (#monitoring)
Each integration has its own event preferences that further filter notifications.
5

Create Profile

Click “Create Profile”.
Profile is ready to be assigned to monitors.

Example Notification Setups

Setup 1: Solo Developer

Profile: "My Alerts"
Integrations:
  - Email: [email protected]
    Events: All enabled
Use case: Single person monitoring personal projects.

Setup 2: Small Team

Profile: "Team Alerts"
Integrations:
  - Email: [email protected]
    Events: All enabled
  - Slack: #monitoring
    Events: Failures, recoveries, SSL
Use case: Team collaboration with Slack for real-time awareness.

Setup 3: Critical Production

Profile: "Production Critical"
Integrations:
  - Email: [email protected]
    Events: All enabled (audit trail)
  - SMS: +1234567890
    Events: Failures only (urgent)
  - Slack: #production
    Events: Failures, recoveries
  - PagerDuty: integration-key
    Events: Failures only
Use case: Mission-critical services requiring immediate response.

Setup 4: Different Severity Levels

Profile 1: "Critical Alerts"
  Integrations:
    - SMS: +1234567890 (failures only)
    - PagerDuty (failures only)

Profile 2: "Important Alerts"
  Integrations:
    - Email: [email protected] (all events)
    - Slack: #monitoring (failures, recoveries)

Profile 3: "Informational"
  Integrations:
    - Email: [email protected] (all events)
Assign profiles based on monitor importance:
  • Production API → Critical + Important
  • Staging → Important
  • Development → Informational

Event Filtering

UptimeIO uses a two-level cascade filter:

Level 1: Profile-Level Events

Profile: "Production Alerts"
Events:
  on_failure: true        # ✅ Enabled
  on_slow_response: false # ❌ Disabled
If disabled at profile level, NO integrations receive that event.

Level 2: Integration-Level Events

Integration: [email protected]
Events:
  on_failure: true     # ✅ Will receive
  on_recovery: false   # ❌ Won't receive
Both must be enabled for notification to send.
Enable all events at profile level, then use integration-level settings to filter. This gives maximum flexibility.

Testing Your Alerts

Always test after setup:
1

Use Test Integration

When creating an integration, click “Test” to send a test notification.
2

Use Test Now on Monitor

  1. Go to any monitor
  2. Click “Test Now”
  3. Temporarily set unrealistic expectations to trigger failure
  4. Verify notifications arrive
  5. Restore correct configuration
3

Check Notification Delivery

Go to SettingsNotification Delivery to see:
  • Delivery status
  • Failed notifications
  • Retry attempts

Troubleshooting

Check:
  1. Email is verified (check verification link)
  2. Check spam/junk folder
  3. Email integration is in notification profile
  4. Profile is assigned to monitor
  5. Events are enabled at both profile and integration levels
Check:
  1. You have SMS credits available
  2. Phone number is in E.164 format (+country code)
  3. SMS integration events are configured correctly
  4. Your plan supports SMS (not available on Free)
Check:
  1. Webhook URL is correct
  2. Slack app has permission to post to channel
  3. Test integration sends successfully
  4. Events are enabled for Slack integration
Solutions:
  1. Disable non-critical events (e.g., slow response resolved)
  2. Use SMS only for failures
  3. Create separate profiles for different severity levels
  4. Increase check intervals for non-critical monitors

Best Practices

Use multiple channels for different purposes:
  • Email: Complete audit trail (all events)
  • SMS: Critical failures only
  • Slack: Team awareness (failures, recoveries)
  • PagerDuty: Incident management
SMS should only be for events requiring immediate action:
  • ✅ Production service failures
  • ✅ SSL expiry warnings (7 days)
  • ❌ Slow response alerts
  • ❌ Recovery notifications
  • ❌ Non-critical monitors
Name integrations and profiles clearly:
  • Good: “Frontend Team - Business Hours”
  • Bad: “Profile 1”
You’ll thank yourself later when managing many profiles.
Monthly review:
  • Remove departed team members
  • Update phone numbers
  • Check notification volumes
  • Adjust event preferences
  • Delete unused profiles

Next Steps