GET
/
v1
/
alert-channels
/
{id}
Retrieve an alert channel
curl --request GET \
  --url https://api.checklyhq.com/v1/alert-channels/{id} \
  --header 'Authorization: <api-key>'
{
  "id": 1,
  "type": "SMS",
  "config": {},
  "subscriptions": [],
  "sendRecovery": true,
  "sendFailure": true,
  "sendDegraded": true,
  "sslExpiry": false,
  "sslExpiryThreshold": 30,
  "autoSubscribe": false,
  "created_at": "2023-11-07T05:31:56Z",
  "updated_at": "2023-11-07T05:31:56Z"
}

Overview

Retrieve detailed information about a specific alert channel by its ID. This endpoint returns the complete configuration for the alert channel, including type-specific settings.

Response Example

{
  "id": 123,
  "type": "WEBHOOK",
  "name": "PagerDuty Integration",
  "createdAt": "2024-01-15T10:30:00.000Z",
  "updatedAt": "2024-01-20T14:45:00.000Z",
  "config": {
    "url": "https://events.pagerduty.com/integration/abc123/enqueue",
    "method": "POST",
    "headers": [
      {
        "key": "Authorization",
        "value": "Token token=***masked***"
      },
      {
        "key": "Content-Type",
        "value": "application/json"
      }
    ],
    "queryParameters": [
      {
        "key": "routing_key",
        "value": "***masked***"
      }
    ]
  }
}

Response Examples by Type

{
  "id": 124,
  "type": "EMAIL",
  "name": "Team Email Alerts",
  "createdAt": "2024-01-15T10:30:00.000Z",
  "updatedAt": "2024-01-15T10:30:00.000Z",
  "config": {
    "address": "team@company.com"
  }
}
{
  "id": 125,
  "type": "SLACK",
  "name": "Engineering Slack",
  "createdAt": "2024-01-16T09:15:00.000Z",
  "updatedAt": "2024-01-18T16:20:00.000Z",
  "config": {
    "url": "https://hooks.slack.com/services/***masked***",
    "channel": "#monitoring"
  }
}
{
  "id": 126,
  "type": "SMS",
  "name": "On-call SMS",
  "createdAt": "2024-01-17T14:22:00.000Z",
  "updatedAt": "2024-01-17T14:22:00.000Z",
  "config": {
    "number": "+1234567890",
    "name": "Emergency SMS"
  }
}
{
  "id": 127,
  "type": "PHONE",
  "name": "Critical Phone Alerts",
  "createdAt": "2024-01-18T11:45:00.000Z",
  "updatedAt": "2024-01-19T08:30:00.000Z",
  "config": {
    "number": "+1987654321",
    "name": "Emergency Hotline"
  }
}

Security Considerations

For security reasons, sensitive values in the configuration (like API keys, tokens, or webhook URLs) may be masked in the response with ***masked***. The actual values are preserved in our system but not exposed via the API.

Code Examples

curl -X GET "https://api.checklyhq.com/v1/alert-channels/123" \
  -H "Authorization: Bearer cu_1234567890abcdef" \
  -H "X-Checkly-Account: 550e8400-e29b-41d4-a716-446655440000"

Common Use Cases

Configuration Validation

Retrieve alert channel details to verify configuration before subscribing checks

Audit Trail

Check creation and modification timestamps for compliance and tracking

Integration Management

Get current webhook URLs or settings for updating external systems

Troubleshooting

Inspect alert channel configuration when notifications aren’t working as expected

Error Scenarios

The alert channel with the specified ID doesn’t exist or you don’t have access to it.
{
  "error": "Not Found",
  "message": "Alert channel not found",
  "statusCode": 404
}
You don’t have permission to access this alert channel.
{
  "error": "Forbidden",
  "message": "Insufficient permissions to access this resource",
  "statusCode": 403
}
This endpoint is useful for retrieving the current configuration of an alert channel, especially when you need to verify settings or troubleshoot notification issues. Remember that sensitive configuration values may be masked for security.

Authorizations

Authorization
string
header
required

The Checkly Public API uses API keys to authenticate requests. You can get the API Key here.

Your API key is like a password: keep it secure!

Authentication to the API is performed using the Bearer auth method in the Authorization header and using the account ID.

For example, set Authorization header while using cURL:

curl -H "Authorization: Bearer [apiKey]" "X-Checkly-Account: [accountId]"

Headers

x-checkly-account
string

Your Checkly account ID, you can find it at https://app.checklyhq.com/settings/account/general

Path Parameters

id
integer
required

Response

Successful

id
number
required
Example:

1

type
enum<string>
required
Available options:
EMAIL,
SLACK,
WEBHOOK,
SMS,
PAGERDUTY,
OPSGENIE,
CALL
Example:

"SMS"

config
object
required

The configuration details for this alert channel. These can be very different based on the type of the channel.

subscriptions
object[]

All checks subscribed to this channel.

Example:
[]
sendRecovery
boolean
sendFailure
boolean
sendDegraded
boolean
sslExpiry
boolean
default:false

Determines if an alert should be sent for expiring SSL certificates.

sslExpiryThreshold
integer
default:30

At what moment in time to start alerting on SSL certificates.

Required range: 1 <= x <= 30
autoSubscribe
boolean
default:false

Automatically subscribe newly created checks to this alert channel.

created_at
string<date-time>
updated_at
string<date-time>