> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.pensar.dev/console/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.pensar.dev/console/_mcp/server.

# Slack

> Connect Slack to receive real-time security notifications from Pensar

## Overview

Pensar integrates with Slack to deliver real-time notifications about security events in your workspace. When connected, you can configure alert rules that automatically post messages to a Slack channel when issues are discovered, scans start or complete, and more.

> **Info**
>
> The Slack integration uses OAuth to connect your workspace. Pensar posts messages to a channel you select — no webhook URLs or bot tokens to manage manually.

## Connecting Slack

#### Navigate to Integrations

Go to **Settings > Integrations > Notifications** in your Pensar Console workspace and find the **Slack** section.

#### Connect Slack

Click **Connect Slack**. You'll be redirected to Slack's OAuth authorization page.

#### Authorize Pensar

Select the Slack workspace you want to connect, review the requested permissions, and click **Allow**.

#### Select a Channel

After authorization, use the channel picker to choose which Slack channel should receive notifications. You can change this at any time from the Notifications page.

> **Note**
>
> You need to be a Slack workspace admin (or have permission to install apps) to authorize the connection.

## Alert Rules

Alert rules let you control exactly which events trigger Slack notifications. Each rule defines a set of conditions — when all conditions match an event, a notification is sent to your connected channel.

### Creating Alert Rules

1. After connecting Slack, scroll down to the **Alert Rules** section of the **Slack** card
2. Click **Add Rule** to create a new alert rule
3. Configure the rule conditions:

| Condition       | Description                                                                                     |
| --------------- | ----------------------------------------------------------------------------------------------- |
| **Name**        | A descriptive name for the rule (e.g., "Critical issues in production")                         |
| **Event Types** | Which events trigger this rule. Select one or more.                                             |
| **Severities**  | Filter by issue severity. Applies to issue-related events only. Leave empty for all severities. |
| **Workspaces**  | Restrict to specific workspaces. Leave empty to match all workspaces.                           |

4. Toggle the rule on or off with the enable switch
5. Click **Save** to persist your rules

### Supported Event Types

| Event                  | Description                                                     |
| ---------------------- | --------------------------------------------------------------- |
| **New issue found**    | A new security issue was discovered during a pentest            |
| **Issue closed**       | An issue was closed (fixed, marked as false positive, etc.)     |
| **Pentest started**    | A pentest has begun                                             |
| **Pentest completed**  | A pentest has finished                                          |
| **New app discovered** | A new application was discovered during attack-surface analysis |

### How Rules Are Evaluated

* All conditions within a rule are combined with **AND** logic
* If multiple rules match the same event, a notification is sent for each matching rule
* Severity filtering only applies to issue-related events (`issue_created`, `issue_closed`). Scan events ignore the severity filter.
* An empty filter (no event types, severities, or workspaces selected) matches everything

### Example Rules

#### All critical and high issues

Get notified immediately when critical or high severity issues are found:

* **Event Types:** New issue found
* **Severities:** Critical, High
* **Workspaces:** (all)

#### Scan lifecycle for a specific workspace

Track when scans start and finish for a particular workspace:

* **Event Types:** Pentest started, Pentest completed
* **Severities:** (all)
* **Workspaces:** my-workspace

#### All events

Receive all notifications — useful for small teams or new workspaces:

* **Event Types:** (all)
* **Severities:** (all)
* **Workspaces:** (all)

## Managing the Connection

### Changing the Channel

To change which channel receives notifications, use the channel picker in the Slack integration section. The change takes effect immediately for all future notifications.

### Disconnecting Slack

To disconnect Slack from your workspace:

1. Navigate to **Settings > Integrations > Notifications**
2. Find the **Slack** section
3. Click **Unlink Slack**

This stops all Slack notifications. Your alert rules are preserved and will resume if you reconnect.

## Notification Format

Slack notifications include contextual details depending on the event type:

* **Issue notifications** include the issue name, severity, affected file location, and a direct link to the issue in the Console
* **Scan notifications** include the scan label, workspace name, and status

## Access Control

The Slack integration is configured at the workspace level. Only workspace **admins** and **owners** can connect or disconnect Slack and manage alert rules.

## Next Steps

#### [CI/CD Integration](/console/features/ci-integration)

Trigger pentests from your CI pipeline and get Slack alerts on completion.

#### [Auto-Remediation](/console/features/auto-remediation)

Get notified when issues are automatically fixed.

#### [REST API](/console/features/rest-api)

Programmatically manage issues and pentests alongside Slack notifications.

#### [Getting Started](/console/getting-started)

Set up your workspace and add your first repository.