# Send Elementary alerts to Slack

This template creates a schedule to execute your dbt™ models and tests, then sends Elementary data observability alerts to Slack. It helps data teams monitor data quality issues and pipeline failures with automated notifications directly in their Slack channels.

{% hint style="success" %}
**Key Benefits**

* Automated data quality monitoring with Elementary's comprehensive observability
* Real-time alerts delivered directly to Slack channels
* Catch data issues early with integrated testing and alerting workflow
* Centralized team collaboration around data incidents
  {% endhint %}

{% hint style="warning" %}
**Prerequisites**

* Scheduler Environment is connected to your data warehouse provider
* Elementary dbt package installed in your project
* Slack bot token configured
* Environment variable `$SLACK_TOKEN` configured in Paradime
* Slack channel name specified
  {% endhint %}

### Default Configuration

**Schedule Settings**

<table><thead><tr><th>Setting</th><th width="262">Value</th><th>Explanation</th></tr></thead><tbody><tr><td><strong>Schedule Type</strong></td><td><code>Standard</code></td><td>Ensures consistent execution for production workloads with integrated alerting</td></tr><tr><td><strong>Schedule Name</strong></td><td><code>elementary slack alerts</code></td><td>Descriptive name indicating Elementary alerting to Slack</td></tr><tr><td><strong>Git Branch</strong></td><td><code>main</code></td><td>Uses your default production branch for stable monitoring</td></tr></tbody></table>

**Command Settings**

The template uses a sequence of commands that test, and monitor your data pipeline:

* `dbt test`: Runs configured data tests including Elementary's anomaly detection
* `edr monitor --slack-token $SLACK_TOKEN --slack-channel <slack_channel_to_post_at>`: Sends Elementary alerts to your Slack channel

{% hint style="info" %}
**Environment Variable Configuration**

Before using this template, you must configure the `$SLACK_TOKEN` environment variable and specify your Slack channel:

1. Navigate to Settings > Environment Variables in Paradime
2. Add a new variable named `SLACK_TOKEN`
3. Set the value to your Slack bot token
4. Save the configuration
5. Replace `<slack_channel_to_post_at>` in the command with your actual Slack channel name (e.g., `#data-alerts`)

For detailed Slack app setup and token generation instructions, see our [Slack alerts guide](/app-help/documentation/integrations/observability/elementary-data/sending-alerts/slack-alerts.md).
{% endhint %}

**Trigger Type**

* **Type**: Scheduled Run (Cron)
* **Cron Schedule**: `0 */2 * * *` (Every 2 hours for regular monitoring)

{% hint style="info" %}
For custom Trigger configurations, see [Trigger Types](/app-help/documentation/bolt/creating-schedules/trigger-types.md) documentation.
{% endhint %}

**Notification Settings**

* **Email Alerts**:
  * **Success**: Confirms pipeline completion (Elementary alerts sent separately to Slack)
  * **Failure**: Alerts when the schedule fails to complete
  * **SLA Breach**: Warns when execution exceeds expected duration

{% hint style="info" %}
Elementary alerts are sent directly to Slack and are separate from Bolt's email notifications.
{% endhint %}

***

{% hint style="info" %}
For advanced Elementary configurations and test types, refer to the [Elementary documentation](https://docs.elementary-data.com/).
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.paradime.io/app-help/documentation/bolt/creating-schedules/templates/observability-templates/send-elementary-alerts-to-slack.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
