---
title: "Create a notification channel"
method: POST
path: "/notification_channels"
tags: ["Notifications"]
---

# Create a notification channel

`POST /notification_channels`

Creates a new notification channel defining where notifications are delivered, and returns the created channel.

## Request body

- NotificationChannel — A Notification Channel
  - `id` string — A UUID.
  - `notification_profile_id` string — A UUID reference to the associated Notification Profile.
  - `channel_type_id` 'sms' | 'voice' | 'email' | 'webhook' — A Channel Type ID
  - `channel_destination` string — The destination associated with the channel type.
  - `created_at` string, date-time — ISO 8601 formatted date indicating when the resource was created.
  - `updated_at` string, date-time — ISO 8601 formatted date indicating when the resource was updated.

## Response `200`

A Notification Channel response

- object
  - `data` NotificationChannel — A Notification Channel
    - `id` string — A UUID.
    - `notification_profile_id` string — A UUID reference to the associated Notification Profile.
    - `channel_type_id` 'sms' | 'voice' | 'email' | 'webhook' — A Channel Type ID
    - `channel_destination` string — The destination associated with the channel type.
    - `created_at` string, date-time — ISO 8601 formatted date indicating when the resource was created.
    - `updated_at` string, date-time — ISO 8601 formatted date indicating when the resource was updated.

## Other responses

- `400` — Bad request, the request was unacceptable, often due to missing a required parameter.
- `422` — Unprocessable entity. Check the 'detail' field in response for details.
- `500` — Unexpected error

## Changes

> 93 revisions in range; 1 not diffed.

- **2026-09-16** `a6a61a29ecdd` — 6 breaking
  - the `errors/items/code` response's property type changed from `string` to `integer`, and format from no format to `int32` for status `400`
  - the `errors/items/code` response's property type changed from `string` to `integer`, and format from no format to `int32` for status `422`
  - the `errors/items/code` response's property type changed from `string` to `integer`, and format from no format to `int32` for status `500`
  - the `errors/items/source/pointer` response's property format changed from `json-pointer` to no format for status `400`
  - …2 more
- **2026-08-17** `1571b0380bd7` — 3 breaking
  - the `errors/items/code` response's property type changed from `integer` to `string`, and format from `int32` to no format for status `400`
  - the `errors/items/code` response's property type changed from `integer` to `string`, and format from `int32` to no format for status `422`
  - the `errors/items/code` response's property type changed from `integer` to `string`, and format from `int32` to no format for status `500`
- …earlier changes not shown

[Full history](https://skmtc.dev/team-telnyx/apis/telnyx-api-2/changes/notification_channels/post.md)

---

[API](https://skmtc.dev/team-telnyx/apis/telnyx-api-2.md) · [All operations](https://skmtc.dev/team-telnyx/apis/telnyx-api-2/llms.txt) · [OpenAPI document](https://skmtc.dev/team-telnyx/apis/telnyx-api-2/revisions/88481995b4ca?raw)
