mirror of
https://github.com/binwiederhier/ntfy.git
synced 2024-12-14 11:47:33 +00:00
update docs
This commit is contained in:
parent
867cf28080
commit
03737dbf5c
1 changed files with 12 additions and 7 deletions
|
@ -3559,27 +3559,32 @@ ntfy server plays the role of the Push Gateway, as well as the Push Provider. Un
|
|||
|
||||
### Message and Title Templates
|
||||
Some services let you specify a webhook URL but do not let you modify the webhook body (e.g., Grafana). Instead of using a separate
|
||||
bridge program to parse the webhook body into the format ntfy expects, you can include a message template and/or a title template
|
||||
bridge program to parse the webhook body into the format ntfy expects, you can include a templated message and/or a templated title
|
||||
which will be populated based on the fields of the webhook body (so long as the webhook body is valid JSON).
|
||||
|
||||
Send the message template with the header `X-Template-Message`, `Template-Message`, or `tpl-m`. Send the title template with the
|
||||
header `X-Template-Title`, `Template-Title`, or `tpl-t`. (No other fields can be filled with a template at this time).
|
||||
|
||||
In the template, include paths to the appropriate JSON fields surrounded by `${` and `}`. See an example below.
|
||||
Enable templating by setting the `X-Template` header (or its aliases `Template` or `tpl`) to "yes". Then, include templates
|
||||
in your message and/or title (no other fields can be filled with a template at this time) by including paths to the
|
||||
appropriate JSON fields surrounded by `${` and `}`. See an example below.
|
||||
See [GJSON docs](https://github.com/tidwall/gjson/blob/master/SYNTAX.md) for supported JSON path syntax.
|
||||
[https://gjson.dev/](https://gjson.dev/) is a great resource for testing your templates.
|
||||
|
||||
=== "HTTP"
|
||||
``` http
|
||||
POST /mytopic HTTP/1.1
|
||||
Host: ntfy.sh
|
||||
X-Template-Message: Error message: ${error.desc}
|
||||
X-Template-Title: ${hostname}: A ${error.level} error has occurred
|
||||
X-Message: Error message: ${error.desc}
|
||||
X-Title: ${hostname}: A ${error.level} error has occurred
|
||||
X-Template: yes
|
||||
|
||||
{"hostname": "philipp-pc", "error": {"level": "severe", "desc": "Disk has run out of space"}}
|
||||
```
|
||||
|
||||
The example above would send a notification with a title "philipp-pc: A severe error has occurred" and a message "Error message: Disk has run out of space".
|
||||
|
||||
For Grafana webhooks, you might find it helpful to use the headers `X-Title: Grafana alert: ${title}` and `X-Message: ${message}`.
|
||||
Alternatively, you can include the params in the webhook URL. For example, by
|
||||
appending `?template=yes&title=Grafana alert: ${title}&message=${message}` to the URL.
|
||||
|
||||
## Public topics
|
||||
Obviously all topics on ntfy.sh are public, but there are a few designated topics that are used in examples, and topics
|
||||
that you can use to try out what [authentication and access control](#authentication) looks like.
|
||||
|
|
Loading…
Reference in a new issue