> ## Documentation Index
> Fetch the complete documentation index at: https://www.checklyhq.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# SlackAlertChannel Construct

> Learn how to configure Slack alert channels with the Checkly CLI.

> [!WARNING]
>
> The Slack webhook based alert channel is deprecated in favour of the more modern [Slack App alert channel](https://www.checklyhq.com/docs/constructs/slack-app-alert-channel.md)

Sends alert notifications to a Slack channel via an incoming webhook.

```ts Basic Example theme={null}
import { SlackAlertChannel } from 'checkly/constructs'

const slackChannel = new SlackAlertChannel('slack-channel-1', {
  url: new URL('https://hooks.slack.com/services/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'),
  channel: '#ops'
})
```

```ts Advanced Example theme={null}
import { SlackAlertChannel } from 'checkly/constructs'

const slackChannel = new SlackAlertChannel('slack-channel-1', {
  url: new URL('https://hooks.slack.com/services/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'),
  channel: '#ops',
  sendRecovery: true,
  sendFailure: true,
  sendDegraded: true,
  sslExpiry: true,
  sslExpiryThreshold: 30,
})
```

> [!NOTE]
>
> If you need to reference existing alert channels that were created outside of your CLI project, use [`fromId()`](https://www.checklyhq.com/docs/constructs/alert-channel#using-fromid-to-reference-an-existing-channel).

## Configuration

### Slack Alert Channel Options

**url** `URL` *required*

The Slack incoming webhook URL where Checkly will send alert notifications.

```ts highlight={2} theme={null}
new SlackAlertChannel('slack-channel-1', {
  url: new URL('https://hooks.slack.com/services/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'),
  channel: '#ops'
})
```

**channel** `string`

Target Slack channel or user for notifications. You can specify the target channel to override the default channel configured in the webhook.

### General Alert Channel Options

These options are valid for all alert channels types.

**sendRecovery** `boolean`

Whether to send notifications when checks recover from a [failed or degraded state](https://www.checklyhq.com/docs/communicate/alerts/overview.md#alert-channels). Default value is `true`.

**sendFailure** `boolean`

Whether to send notifications when checks [fail](https://www.checklyhq.com/docs/communicate/alerts/overview.md#alert-channels). Default value is `true`.

**sendDegraded** `boolean`

Whether to send notifications when checks [become degraded](https://www.checklyhq.com/docs/communicate/alerts/overview.md#alert-channels). Default value is `false`.

**sslExpiry** `boolean`

Whether to send notifications when a SSL/TLS certificate is about to expire. Default value is `false`.

```ts highlight={3} theme={null}
new EmailAlertChannel("email-channel-1", {
  address: "alerts@acme.com",
  sslExpiry: true,
  sslExpiryThreshold: 30, // Alert 30 days before expiry
})
```

[Learn more about SSL alerts.](https://www.checklyhq.com/docs/communicate/alerts/ssl-expiration.md)

**sslExpiryThreshold** `number`

Number of days before the SSL/TLS certificate expiry date to send notifications. Only relevant when `sslExpiry` is enabled. Default value is `30`.

```ts highlight={4} theme={null}
new EmailAlertChannel("email-channel-1", {
  address: "alerts@acme.com",
  sslExpiry: true,
  sslExpiryThreshold: 30, // Alert 30 days before expiry
})
```

[Learn more about SSL alerts.](https://www.checklyhq.com/docs/communicate/alerts/ssl-expiration.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.