---
title: "Create Notification Type"
method: POST
path: "/v1/notification-types"
tags: ["notification-types"]
---

# Create Notification Type

`POST /v1/notification-types`

## Request

- Base URL: `https://api.elaan.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.elaan.io/v1/notification-types`
- Auth: none declared

## Headers

- `authorization` string, nullable

## Request body

- CreateNotificationTypeRequest
  - `key` string, required
  - `channel_defaults` object
  - `variables` string[]
  - `allows_opt_out` boolean: Whether contacts may override this type's channel defaults. Set false for transactional notifications a recipient must not be able to switch off (email verification, password reset). This does NOT force delivery on every channel — channel_defaults still decides which channels fire; only the contact's veto is removed.

## Response `201`

Successful Response

- NotificationTypeResponse
  - `key` string, required
  - `channel_defaults` object, required
  - `variables` string[], required
  - `allows_opt_out` boolean, required
  - `is_deleted` boolean, required

## Other responses

- `409`: A live notification type with this key already exists
- `422`: Validation Error

---

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