Skip to main content
PUT
/
v1
/
notifications
/
types
/
{event_type}
/
template
Create/update the per-org template override (validates + increments version)
curl --request PUT \
  --url https://api-sandbox.featherhq.com/v1/notifications/types/{event_type}/template \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "title": "<string>",
  "body": "",
  "fields": [
    {
      "label": "<string>",
      "value": "<string>"
    }
  ],
  "link_text": "<string>",
  "link_url": "<string>"
}
'
{
  "event_type": "<string>",
  "channel_kind": "<string>",
  "source": "<string>",
  "slots": {
    "title": "<string>",
    "body": "",
    "fields": [
      {
        "label": "<string>",
        "value": "<string>"
      }
    ],
    "link_text": "<string>",
    "link_url": "<string>"
  },
  "version": 123,
  "default_slots": {
    "title": "<string>",
    "body": "",
    "fields": [
      {
        "label": "<string>",
        "value": "<string>"
      }
    ],
    "link_text": "<string>",
    "link_url": "<string>"
  },
  "variables": {}
}

Authorizations

x-api-key
string
header
required

Path Parameters

event_type
string
required

Query Parameters

channel_kind
enum<string>
default:slack

The messaging channel a destination delivers through.

slack is the only kind in v1. New kinds are additive — add a member here, a provider class, and a PROVIDER_REGISTRY entry.

Available options:
slack

Body

application/json

The four authorable slots. extra="forbid" so an operator can't smuggle unknown keys past validation (mirrors the catalog's threshold configs).

title
string
required
Required string length: 1 - 4000
body
string
default:""
Maximum string length: 4000
fields
TemplateField · object[]
Maximum array length: 10
Maximum string length: 4000
Maximum string length: 4000

Response

Successful Response

The effective template for an (org, type, channel): the slots that render, where they came from, the platform default, and the variables manifest.

event_type
string
required
channel_kind
string
required
source
string
required
slots
TemplateSlots · object
required

The four authorable slots. extra="forbid" so an operator can't smuggle unknown keys past validation (mirrors the catalog's threshold configs).

version
integer | null
required
default_slots
TemplateSlots · object
required

The four authorable slots. extra="forbid" so an operator can't smuggle unknown keys past validation (mirrors the catalog's threshold configs).

variables
Variables · object
required