---
title: "Add a notification channel"
method: POST
path: "/notification-channels"
tags: ["Notification Channels"]
---

# Add a notification channel

`POST /notification-channels`

## Request

- Base URL: `https://realuptime.io/api/v1`
- URL: `https://realuptime.io/api/v1/notification-channels`
- Auth: HTTP bearer

## Request body

- object
  - `type` 'discord' | 'msteams' | 'opsgenie' | 'incidentio' | 'firehydrant' | 'generic_json' | 'sms' | 'voice' | 'web_push' | 'mobile_push' | 'email' | 'slack', required
  - `name` string
  - `config` object

## Response `200`

type email, or a slack webhook that was already set to this URL: the built-in destination as it stands, created false.

- object
  - `channel` object, required
    - `id` string, required
    - `type` string, required
    - `name` string, required
    - `config_summary` string, required
    - `verified_at` string, nullable, required
    - `builtin` boolean
  - `created` boolean

## Other responses

- `201`: The created channel. A registry channel is unverified until a test send succeeds.
- `400`: Malformed body, a config the type's validator refused, a Slack URL that is not a Slack incoming webhook, or an email address other than the account owner's. - `RU-3007` Invalid notification channel request: https://realuptime.io/kb/errors/ru-3007
- `401`: Missing, invalid, or revoked API key. - `RU-1001` Missing API credentials: https://realuptime.io/kb/errors/ru-1001 - `RU-1002` Invalid or revoked API key: https://realuptime.io/kb/errors/ru-1002
- `403`: The account's channel ceiling is reached. This key is read-only, or this key is IP-restricted and the request came from outside its allowlist. - `RU-2007` Notification channel allowance exhausted: https://realuptime.io/kb/errors/ru-2007 - `RU-1004` API key is read-only: https://realuptime.io/kb/errors/ru-1004 - `RU-1007` API key is restricted to an IP allowlist: https://realuptime.io/kb/errors/ru-1007
- `409`: A channel with that name already exists, the account already has a different Slack webhook, or the owner's email address is not confirmed. - `RU-3009` Duplicate notification channel name: https://realuptime.io/kb/errors/ru-3009 - `RU-3015` Slack webhook already configured: https://realuptime.io/kb/errors/ru-3015 - `RU-3016` Account email address not confirmed: https://realuptime.io/kb/errors/ru-3016
- `429`: Per-key rate limit exceeded, a Free account's per-account request budget exceeded, or too many failed authentication attempts. - `RU-2003` API write rate limit exceeded: https://realuptime.io/kb/errors/ru-2003 - `RU-2001` Too many failed authentication attempts: https://realuptime.io/kb/errors/ru-2001

---

[API](https://skmtc.dev/realuptime/apis/realuptime-api-v1.md) · [All operations](https://skmtc.dev/realuptime/apis/realuptime-api-v1/llms.txt) · [OpenAPI document](https://skmtc.dev/realuptime/apis/realuptime-api-v1/revisions/51e481084700?raw)
