> ## 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.

# PagerdutyAlertChannel Construct

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

> [!TIP]
>
> For general information about alerting, see our docs on [the Pagerduty integration](https://www.checklyhq.com/docs/integrations/incident-management/pagerduty.md) and [alerting with Checkly](https://www.checklyhq.com/docs/communicate/alerts/overview.md).

Sends an alert notification to a specific service in your Pagerduty account.

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

const pagerdutyChannel = new PagerdutyAlertChannel('pagerduty-channel-1', {
  account: 'ACME',
  serviceName: 'ACME products',
  serviceKey: '872b9b58ff4a9n06d0dl9f20487bbqwew'
})
```

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

const pagerdutyChannel = new PagerdutyAlertChannel('pagerduty-channel-1', {
  account: 'ACME',
  serviceName: 'ACME products',
  serviceKey: '872b9b58ff4a9n06d0dl9f20487bbqwew',
  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

### Pagerduty Alert Channel Options

**account** `string` *required*

The name of your Pagerduty account.

**serviceName** `string` *required*

The name of your service defined in Pagerduty under which the alerts should be nested.

**serviceKey** `string` *required*

The API key created by installing the Checkly integration in Pagerduty. We advise you to [install the Pagerduty alert channel first from the UI](https://app.checklyhq.com/alerts/settings/channels/new/pagerduty/) to grab the `serviceKey`.

### 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.