15.3 Alerts and Notifications
Stay ahead of problems by building custom alert workflows that notify you when something important happens in your Taibles.
Overview: How Alerts Work in Taibles
Traditional Monitoring vs. Taibles
Traditional monitoring tools:
- Fixed dashboard with preset alerts
- Limited customization options
- One-size-fits-all thresholds
- Separate from your workflow
Taibles:
- Build your own alert workflows using columns
- Use any notification channel (Email, Slack, Telegram, etc.)
- Completely customizable alert logic
- Integrated directly into your data processing
Key concept: In Taibles, alerts are just columns that send messages when certain conditions are met. You have complete control over when and how they trigger.
What You Can Build
Alert types available today:
✅ Error alerts - Get notified when a column fails ✅ Threshold alerts - Alert when metrics exceed limits (error rate >10%) ✅ Cost alerts - Know when spending exceeds budget ✅ Inactivity alerts - Detect when data stops flowing ✅ SLA alerts - Catch service level breaches ✅ Custom alerts - Any condition you can define
Notification channels:
- ✅ Email (SMTP)
- ✅ Slack
- ✅ Telegram
- ✅ Microsoft Teams
- ✅ SMS (via Twilio)
- ✅ Webhooks (connect to any service)
Part 1: Setting Up Your First Alert
Let's start with a simple example: get an email when a column fails.
Step 1: Connect Your Email Account
Before you can send alerts, you need to connect an email account.
Navigate to Settings → Accounts → Add Account
Create SMTP Email Account
SMTP Server Settings
Authentication
Tip: For Gmail, use an App Password instead of your regular password. Learn more
Sender Information
What you're configuring:
- Account Name: A label to identify this email account (e.g., "Company Alerts")
- SMTP Server: Your email provider's server (gmail uses smtp.gmail.com)
- Port: Usually 587 for TLS or 465 for SSL
- Security: Choose TLS (recommended) for encrypted connection
- Username/Password: Your email login credentials
- From Address: The email address that will send alerts
- From Name: How the sender name appears
Gmail Users
For Gmail accounts, you'll need to create an "App Password" instead of using your regular password. Go to your Google Account settings → Security → App Passwords to generate one.
Step 2: Add an Email Alert Column
Now add a column that sends an email when another column fails.
In your Taible, click "Add Column" → Browse → Communication → SMTP Email
Configure Email Alert
Choose which email account to send from
Email will be sent to admin@company.com when this column runs
Configuration explained:
- Email Account: Select the account you just created
- To: Who receives the alert (can be multiple addresses separated by commas)
- Subject: The email subject line - make it clear and actionable
- Message: The email body with all the context needed to investigate
Using data placeholders:
Instead of showing technical template syntax, you can insert data using simple placeholders:
[Column Name]- Insert the value from any column[Customer Email]- Insert customer information[Error Message]- Insert the error that occurred
The system automatically replaces these with actual data when the email is sent.
Step 3: Configure When to Send
You don't want alerts every time - only when there's actually an error.
In the same configuration, scroll down to "Run Configuration"
When to Send Alert
Alert will only be sent if the condition evaluates to true
[Company Enrichment] is emptyAdvanced: Edit condition expression directly
How conditions work:
Enable the condition toggle - Turn on conditional execution
Build your condition - Use the visual builder to create rules like:
- When Company Enrichment → is empty or has error
- When Lead Score → is greater than → 80
- When Email Validation → equals → invalid
The alert checks first - Before sending, it evaluates the condition
Only sends if true - If the condition is false, the alert is skipped
Prevent Alert Fatigue
Always use conditions to limit when alerts fire. Getting too many alerts makes people ignore them - only alert on what truly matters!
Step 4: Set Dependencies
Tell the alert which column to watch.
In Run Configuration → Dependencies
- Click "Add Dependency"
- Select the column you want to monitor (e.g., "Company Enrichment")
- Choose "Once" for run mode (alert only runs once when the column completes)
How it works:
- When the monitored column finishes running, your alert column automatically checks
- If the condition is met, the email is sent
- If not, nothing happens
Part 2: Alert Patterns for Common Scenarios
Pattern 1: Simple Error Alerts
Use case: Get notified immediately when any column fails
Simple Error Alert Flow
ALERT: Lead enrichment has failed
Row Details:
• Lead Email: john@example.com
• Company: Acme Corp
Error Details:
• Column: Company Enrichment
• Error: API rate limit exceeded
Please investigate immediately.
Setup summary:
- Add Email or Slack column
- Set condition:
[Column Name] is emptyor[Column Name] has error - Add the column you want to monitor as a dependency
- Set run mode to "Once"
Best for: Critical operations that can't fail (payment processing, customer notifications)
Pattern 2: Error Rate Threshold Alerts
Use case: Alert when too many failures occur (e.g., >10% error rate)
This pattern requires a separate monitoring Taible that checks your main Taible periodically.
How it works:
- Create a "Monitor" Taible - A separate Taible just for monitoring
- Add a CRON trigger - Runs every 15 minutes to check
- Add columns that:
- Pull data from your main Taible
- Calculate error rate (failed cells / total cells)
- Check if rate exceeds threshold
- Send alert if threshold exceeded
Visual flow:
Every 15 minutes
→ Check main Taible
→ Calculate: 15 failed / 100 total = 15% error rate
→ 15% > 10% threshold
→ Send Slack alert to #teamBest for: Detecting systemic problems vs. individual failures
Pattern 3: Slack Alerts for Critical Failures
Use case: Instant team notification in Slack for high-priority issues
Configure Slack Alert
Choose which channel receives the alert
Setup steps:
- Settings → Accounts → Add Account → Choose Slack
- Authorize your Slack workspace (you'll be redirected to Slack)
- Add Column → Slack in your Taible
- Select channel where alerts should go (e.g., #alerts, #support)
- Write your message with formatting:
- Use
**bold**for emphasis - Use
*italic*for details - Use
@channelto notify everyone (use sparingly!) - Use emojis for severity: 🚨 critical, ⚠️ high, ⚡ medium
- Use
Best for: Team coordination on time-sensitive issues
Pattern 4: Cost Threshold Alerts
Use case: Get notified when daily spending exceeds your budget
Setup approach:
- Create a Cost Monitor Taible with a daily CRON trigger
- Add a column that checks your usage from Settings → Usage History
- Calculate if current spending exceeds your daily budget
- If yes, send alert via Email or Slack
Example alert:
💰 DAILY COST ALERT
Date: 2024-11-19
Tokens Used: 150,000
Estimated Cost: $45.00
Budget: $30.00
Exceeded by: $15.00
Action: Review usage in Settings → Usage HistoryBest for: Budget control and preventing surprise bills
Pattern 5: Inactivity Alerts
Use case: Detect when a trigger stops receiving data (webhook broken, integration disconnected)
Setup approach:
- Create a Trigger Health Monitor Taible with CRON (runs every 6 hours)
- Add columns that:
- Pull the most recent row from your trigger-driven Taible
- Calculate hours since last update
- Check if hours > 24 (your threshold)
- Send alert if inactive too long
Example alert:
⚠️ TRIGGER INACTIVITY ALERT
Taible: Form Submissions
Trigger: Typeform Webhook
Last Activity: 28 hours ago
Expected: New data every 1-2 hours
Possible Issues:
- Webhook disconnected at source
- Trigger configuration problem
- No new submissions (verify at source)
Action: Check trigger status and webhook configurationBest for: Ensuring critical data pipelines stay healthy
Pattern 6: SLA Breach Alerts
Use case: Alert when support tickets exceed response time limits
Setup in Support Tickets Taible:
- Add column: Time Since Received (calculates hours since ticket arrived)
- Add column: SLA Breached (checks if time > your SLA limit)
- Add Slack alert column:
- Condition:
[SLA Breached] equals true - Dependency: SLA Breached column
- Run mode: "Always" (re-checks whenever ticket is updated)
- Message mentions the assigned person:
@[Assigned To]
- Condition:
Why "Always" run mode?
The alert needs to check every time the ticket is updated. If a ticket has been open for 3 hours and someone adds a note, the alert should check again to see if it's still breached.
Best for: Maintaining service quality and catching overdue items
Part 3: Managing Notification Channels
Email Alerts (SMTP)
When to use Email:
- ✅ Formal notifications requiring documentation
- ✅ Alerts to non-technical stakeholders
- ✅ Detailed reports with formatting
- ✅ External recipients who aren't in your team chat
Best practices:
- Clear subject lines: Include Taible name, severity, and issue type
- Full context in body: All information needed to investigate
- Direct links: Link to the specific row in Taibles
- Multiple recipients: CC relevant team members
- Avoid spam: Use conditions to limit frequency
Example subject lines:
- ✅
🚨 CRITICAL: Payment Failed - Order #12345 - ✅
⚠️ High Error Rate Alert - Lead Processing - ❌
Error(too vague) - ❌
Something went wrong(not actionable)
Slack Alerts
When to use Slack:
- ✅ Real-time team notifications
- ✅ Alerts requiring immediate discussion
- ✅ High-frequency updates (handled better than email)
- ✅ Collaborative troubleshooting
Formatting tips:
🚨 **CRITICAL: Payment Processing Failure**
**Order**: #ORD-12345
**Customer**: John Smith (john@example.com)
**Amount**: $299.99
**Error**: Credit card declined (insufficient funds)
**Time**: 2024-11-19 14:23:45
**Action Required**: Contact customer for alternate payment
[View Order in Taibles]
@sales-teamBest practices:
- Use emojis for severity: 🚨 critical, ⚠️ high, ⚡ medium, ℹ️ info
- Use bold for important info
- Include direct links to investigate
- @mention specific people or teams
- Save @channel for true emergencies
Telegram Alerts
When to use Telegram:
- ✅ Mobile-first notifications
- ✅ Personal alerts for individual users
- ✅ Lower-volume, high-priority messages
- ✅ International teams (Telegram widely available)
Setup process:
- Create a Telegram bot via @BotFather
- Get your bot token (looks like:
110201543:AAHdqTcvCH1vG...) - Get your chat ID by messaging your bot and visiting:
https://api.telegram.org/bot<YOUR_TOKEN>/getUpdates - Add account in Taibles with token and chat ID
- Add Telegram column and configure your message
Webhook Alerts
When to use Webhooks:
- ✅ Connect to services not directly supported (PagerDuty, Opsgenie)
- ✅ Custom internal dashboards
- ✅ Integration with existing monitoring tools
- ✅ Trigger actions in other systems
Setup:
- Add Column → Web (HTTP Request)
- Method: POST
- URL: Your webhook endpoint
- Headers: Add authentication (Authorization, API keys)
- Body: JSON with alert details
Example webhook body:
{
"alert_type": "error",
"severity": "critical",
"taible": "Order Processing",
"row_id": "[Row ID]",
"error_message": "[Error Message]",
"timestamp": "[Current Time]"
}Part 4: Alert Management Best Practices
Practice 1: Avoid Alert Fatigue
The problem: Too many alerts → people ignore them → real issues get missed
Solutions:
1. Use severity levels
🚨 CRITICAL: Immediate action required
→ @channel in Slack
→ Email to manager
→ High-priority notification sound
⚠️ HIGH: Urgent but not emergency
→ @here in Slack
→ Email to team
→ Standard notification
⚡ MEDIUM: Should review soon
→ Normal Slack message
→ No email
ℹ️ INFO: For awareness only
→ Log to monitoring Taible
→ No notification2. Batch similar alerts
❌ Bad: 50 individual alerts for 50 failed cells
✅ Good: 1 alert: "50 cells failed in last hour - error rate 25%"3. Use time windows
Alert once when threshold exceeded
Wait 1 hour before next alert
Even if problem continues4. Create escalation paths
0-10 min: Log to monitoring Taible
10-30 min: Send Slack message
30-60 min: Email to team lead
60+ min: Page on-call engineerPractice 2: Include Actionable Context
❌ Bad alert:
Error occurredWhy it's bad: No information to act on
✅ Good alert:
Payment Processing Failed
Order: #12345
Customer: john@example.com
Error: Credit card declined (insufficient funds)
Amount: $299.99
Payment Method: Visa ending in 1234
Action: Contact customer for alternate payment method
[View Order in Taibles]Why it's good: Complete context, clear action, direct link
Practice 3: Test Your Alerts
Before going live:
- ✅ Create test row in your Taible
- ✅ Manually trigger the alert condition
- ✅ Verify delivery to the correct channel
- ✅ Check formatting looks correct (no broken placeholders)
- ✅ Verify links work and go to the right place
- ✅ Test at different times (business hours and off-hours)
- ✅ Confirm escalation works as designed
Testing checklist:
- □ Alert sends to correct recipient/channel
- □ Subject/title is clear and descriptive
- □ Message includes all necessary context
- □ Data placeholders are replaced correctly
- □ Links work and are accessible
- □ Formatting displays correctly (bold, emoji, etc.)
- □ Alert only fires when condition is met
- □ Alert doesn't fire when condition is false
Practice 4: Document Alert Response
For each alert, write down:
What it means:
This alert fires when payment processing fails due to declined cardWhat to check first:
1. Is it a customer-side issue (insufficient funds) or system issue (API down)?
2. Check payment processor status page
3. Review recent similar failures for patternsHow to resolve:
If customer-side:
→ Email customer with payment update link
→ Log issue in CRM
If system-side:
→ Check payment processor API status
→ Verify API credentials are valid
→ Contact payment processor supportWho to escalate to:
Business hours: @payment-team
After hours: On-call engineer (via PagerDuty)
If unresolved after 1 hour: Engineering managerPractice 5: Regular Alert Review
Monthly review checklist:
- □ Alert frequency: Are we getting too many? Too few?
- □ False positives: Any alerts that weren't actually actionable?
- □ Missed issues: Any problems that didn't trigger alerts but should have?
- □ Response times: How fast are we responding to alerts?
- □ Alert accuracy: Are messages providing enough context?
- □ Channel appropriateness: Right alerts going to right places?
- □ Threshold adjustments: Do alert thresholds need tuning?
Adjust based on findings:
- Increase thresholds if getting too many false positives
- Decrease thresholds if missing real issues
- Change channels if alerts going to wrong audience
- Update message templates if context is insufficient
- Add new alerts if gaps are discovered
Part 5: Common Alert Patterns Reference
Quick Pattern Table
| Alert Type | When It Runs | Check Frequency | Channel | Use For |
|---|---|---|---|---|
| Cell Failure | When cell completes | Per row | Email/Slack | Critical operations |
| Error Rate >10% | CRON schedule | Every 15 min | Slack @channel | System health |
| Cost Threshold | CRON schedule | Daily | Email/Slack | Budget control |
| Processing Delay | When cell completes | Per row | Slack | Performance issues |
| Trigger Inactive | CRON schedule | Every 6 hours | Data pipeline health | |
| SLA Breach | When ticket updates | Per update | Slack @user | Service quality |
| Low Inventory | When inventory changes | Per row | Stock management | |
| Daily Summary | CRON schedule | Daily 6pm | Status reports |
Part 6: Alert Dashboard Overview
Here's what a well-configured alert system looks like in action:
Active Alerts
Lead Enrichment Failed
activeEmailHigh Error Rate Alert
activeSlackDaily Cost Alert
inactiveEmailSLA Breach Warning
activeSlackRecent Alert Activity
Dashboard features:
- Overview statistics: Alerts sent, response times, success rate
- Active alerts list: All configured alerts with status
- Recent activity: Recent deliveries and any failures
- Performance metrics: Track alert effectiveness
Monitoring your alerts:
- Check success rate (should be >95%)
- Review response times (are team responding quickly?)
- Look for delivery failures (SMTP errors, API issues)
- Track alert volume trends (increasing or stable?)
Summary: Alerts and Notifications
You now understand how to build effective alerting workflows:
✅ Alert setup:
- Connect notification accounts (Email, Slack, Telegram)
- Configure alert columns with clear messages
- Set conditions to control when alerts fire
- Add dependencies to monitor specific columns
✅ Alert patterns:
- Simple error alerts (immediate notification)
- Threshold alerts (aggregate metrics)
- Slack team alerts (collaboration)
- Cost monitoring (budget control)
- Inactivity detection (health monitoring)
- SLA breach alerts (service quality)
✅ Best practices:
- Avoid alert fatigue with severity levels and batching
- Include actionable context in every alert
- Test thoroughly before going live
- Document response procedures
- Review and adjust regularly
✅ Notification channels:
- Email: Formal, detailed, external recipients
- Slack: Real-time, collaborative, team coordination
- Telegram: Mobile-first, personal alerts
- Webhooks: Integration with external services
✅ Key techniques:
- Use conditions to prevent unnecessary alerts
- Set up monitoring Taibles for complex checks
- Use CRON triggers for periodic monitoring
- Create escalation paths for critical issues
- Batch similar alerts to reduce noise
Next Steps
You've completed Section 15.3: Alerts and Notifications!
Continue to: Chapter 16: Maintenance and Troubleshooting → Learn how to keep your automations running smoothly and resolve issues effectively.
Keep your systems monitored and your team informed! 🔔