Skip to main content

Limitations

Understand the constraints that apply to all interpreters, including which ntfy features are available and how input is processed.

Unsupported ntfy Headers

The proxy builds outgoing headers from the interpreter's notification object. Only 8 headers are supported:

HeaderNotification FieldDescription
X-TitletitleMessage title.
X-PrioritypriorityPriority level from 1 (min) to 5 (max).
X-TagstagsComma-separated tags and emoji shortcodes.
X-MarkdownmarkdownEnable Markdown rendering.
X-IconiconURL of a custom notification icon.
X-ActionsactionsAction buttons (view, broadcast, http).
X-AttachattachURL of a file to attach.
X-FilenamefilenameFilename for a binary attachment.

ntfy supports additional headers that the proxy does not forward: X-Click, X-Delay, X-Email, X-Call, and X-Template. Incoming request headers are not passed through — the proxy constructs all outgoing headers from the interpreter output.

The ntfy-json interpreter provides the most control, but is still limited to the 8 fields above. For the full list of ntfy-supported headers, see the ntfy publishing docs.

HTML Stripping

All interpreter output bodies have HTML tags removed and common entities decoded before delivery:

  • &&
  • &lt;<
  • &gt;>
  • &quot;"
  • &#39;'
  • &nbsp;

This applies after interpretation and before formatting, so interpreters can work with raw HTML internally.

Notification Suppression

Interpreters can return null to intentionally suppress a notification.

  • HTTP contexts — Returns {"status": "ignored"} with HTTP 200.
  • Email contexts — Silently drops the message. No response is sent to the sender.

Currently, only the statuspage interpreter uses suppression — for duplicate incident updates detected via KV and component-only updates without a bound KV namespace.

Interpreter Availability by Context Type

InterpreterHTTPEmailNotes
plain-textYesYesAvailable in CLI menu for both types.
ntfy-jsonYesNoJSON payloads only — not applicable to email.
seerrYesNoWebhook-only service.
synologyYesNoWebhook-only service.
statuspageYesNoWebhook-only service.
pfsenseNoYesEmail alerts only.
unifiNoYesEmail alerts only.