Documentation Index
Fetch the complete documentation index at: https://mintlify.com/pixlcore/xyops/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Notification Channels bundle multiple notification targets and follow-up actions under a single reusable name. Instead of configuring individual emails, webhooks, or event launches everywhere, reference a channel and xyOps executes all configured actions together.Channels streamline incident response by grouping related notifications into a single action.
Key Features
Reusable Bundles
Define once, reference from events, workflows, and alerts
Multi-Action
Email, webhook, event launch, and in-app notifications in one
Rate Limiting
Optional per-day caps to prevent notification floods
Rich Context
Templated payloads with job logs, metadata, and direct links
Use Cases
Channels excel at standardizing incident response:Severity 1 Incidents
- Emails on-call and NOC teams
- Sends external email addresses
- Posts to Slack via webhook
- Launches auto-remediation event
- Plays audible alert in UI for connected users
- Caps at 100 invocations per day
Team Notifications
Creating Channels
Channel Actions
When invoked, channels execute these actions in parallel:- User emails are looked up from account settings
- External addresses receive identical content
- Email templates include job context or alert details
Web Hook
Fires configured webhook with rich, templated payload:- For jobs: Job ID, title, status, log excerpts, output data, direct link
- For alerts: Server details, alert name, current value, threshold, direct link
Run Event
Launches follow-up or remediation event:- Job actions: Parent job’s output data and files passed to child
- Alert actions: Alert metadata included in child job’s input data
In-App Notification
Sends UI notification to all channel users with optional sound:- Notifications appear as popups for connected users
- Sound files must be
.mp3format - Links directly to triggering job or alert
Using Channels
Reference channels via actions on events, workflows, or alerts:Event Action
Job Error Notification
sev1 channel executes all configured actions.
Alert Action
Alert Fired Notification
Workflow Action
Workflow Completion
Rate Limiting
Prevent notification fatigue with per-day caps:- Counter resets daily at midnight (server timezone)
- When limit is reached, channel actions are skipped
- Skip event is recorded in job activity log or alert history
- Set to
0for unlimited invocations
Behavior Details
Parallel Execution
All channel actions execute concurrently:- Email is sent
- Webhook is fired
- Event is launched
- In-app notifications appear
Action Deduplication
xyOps deduplicates actions by type and target:- Multiple references to the same channel run only once per trigger
- Actions within a channel execute once as part of the bundle
- Deduplication happens at the job/alert level
Disabled Channels
When a channel is disabled:- Actions referencing it are skipped
- A message is recorded in activity logs
- No notifications are sent
Templates
Email and webhook payloads use standard templates:- Job context: Job ID, title, category, status, elapsed time, log excerpts, output data
- Alert context: Server hostname, alert name, current value, threshold, duration
API Reference
List All Channels
Get Single Channel
Create Channel
Request Body
ch<random>. Optionally provide your own ID.
Update Channel
Request Body
Delete Channel
Request Body
Auditing
Channel execution is fully auditable:Job Actions
Results appear in the job’s Activity log:- Channel invocation timestamp
- Each sub-action result (email sent, webhook fired, event launched)
- Rate limit status
- Any errors or warnings
Alert Actions
Results are stored with the alert’s action history:- Timestamp and condition
- Channel details
- Sub-action outcomes
Permissions
These privileges control channel management:create_channels- Create new channelsedit_channels- Modify existing channelsdelete_channels- Remove channels
Using a channel in an action doesn’t require special privileges. Only managing channel definitions requires privileges.
Best Practices
One Channel Per Severity
One Channel Per Severity
Create separate channels for different incident severities:
sev1- Page on-call, escalate immediatelysev2- Notify team, no immediate actionsev3- Log only, no notifications
Team-Based Channels
Team-Based Channels
Organize channels by team ownership:
team_ops- Operations teamteam_security- Security teamteam_data- Data engineering team
Use Rate Limits Wisely
Use Rate Limits Wisely
Set rate limits based on expected frequency:
- High-frequency alerts: 50-100 per day
- Moderate alerts: 20-50 per day
- Critical incidents: 200+ per day (don’t miss important alerts)
Idempotent Remediation Events
Idempotent Remediation Events
If your channel launches a remediation event, ensure the event is:
- Safe to run multiple times
- Checks current state before taking action
- Doesn’t cause cascading failures
Test Before Production
Test Before Production
Create test channels and validate:
- Email delivery
- Webhook payloads
- Event launches
- In-app notifications
Available Sounds
The UI provides curated.mp3 alert sounds:
attention-1.mp3- Short beepattention-2.mp3- Double beepattention-3.mp3- Triple beepalert-1.mp3- Rising tonealert-2.mp3- Urgent tone