Mit ZBXalert Benachrichtigungen senden

1. Sender Account registrieren

Einen Account zu registrieren ist ganz einfach über die API möglich. Dazu mit einem beliebigen Tool folgenden Request mit Ihren eigenen Daten per HTTP-POST an
https://api.zbxalert.com/v1/user

  1. {
  2. "email": "demo@zbxalert.com",
  3. "firstname": "First name",
  4. "lastname": "Last name",
  5. "password": "1SecurePassword!"
  6. }

Als Antwort bekommen Sie den Status des Requests, sowie bei Erfolg Ihre AccountID und Ihren API-Token:

  1. {
  2. "status": "ok",
  3. "statusDetail": "User successfully created",
  4. "requestId": "2b1a6bf0-465b-11e8-a691-55a1dd521900",
  5. "user": {
  6. "email": "demo@zbxalert.com",
  7. "firstname": "First name",
  8. "lastname": "Last name",
  9. "accountId": "21342c36-337a-5699-a1z3-483dd4fj763c",
  10. "token": "kytffZ4patSkaGgSkmylf1BnHAkSKP2cDsauvrSA6Oad1dR1WEcwpVFPXJ8rgOOI7TXvjAeW7NrHFZ61cfDe1MI5y9TtBAHCJl5EkA4Mc1d6GbsuXrEdDrcUqJolABd2"
  11. }
  12. }
Device

2. E-Mail bestätigen

An die angegebene E-Mail-Adresse wurde eine Validierungsmail gesendet. Durch den Aufruf des Links darin, wird die E-Mail-Adresse bestätigt.

3. AccountIDs der Empfänger

Um an einen Empfänger eine Benachrichtigung senden zu können, benötigen Sie dessen AccountID. Die AccountID kann der Empfänger innerhalb der App unter Einstellungen - Empfänger Informationen finden, und dem Absender mitteilen.
Hier kann der Empfänger auch seinen PublicKey finden, welcher für eigene Verschlüsselungstools notwendig sein kann.

4. Benachrichtigung senden

Das Senden der Benachrichtigung funktioniert ebenfalls wieder über die API. Hierzu wird ein HTTP-POST Request an https://api.zbxalert.com/v1/message/send mit folgenden durch Ihre Daten ersetzte Angaben gesendet:

Header: X-API-KEY

  1. {
  2. "senderToken": "2KvcX7yfpQfrH8HUvKJVox5ZcCrcCaO5gIV63u9x7EYA4pAu7jyCqRAA4QEIIWjn",
  3. "recipient": "52ababa5-9ca9-4a0a-8db7-b0de5ea960be",
  4. "identifier": "km1",
  5. "eventid": 20006,
  6. "status": 1,
  7. "severity": 2,
  8. "title": "Free disk space is less than 15% on volume /srv",
  9. "text": "Item values:\n\n1. Free disk space on /srv (percentage) (grey031 (Customer 12):vfs.fs.size[/export,pfree]): 2.75 %\n\n2. Free disk space on /export (percentage) (grey031 (Customer 12):vfs.fs.size[/export,pfree]): 2.75 %\n\n3. *UNKNOWN* (*UNKNOWN*:*UNKNOWN*): *UNKNOWN*\n\nTrigger Description:\nThe free disk space for this volume is lower than 3% for at least 10 minutes.",
  10. "hostname": "grey031",
  11. "hostgroup": "webserver",
  12. "hosttype": "linux"
  13. }

Als Antwort bekommen Sie wieder den Status des Requests, sowie die ID der gesendeten Nachricht:

  1. {
  2. "status": "ok",
  3. "statusDetail": "Message successfully sent",
  4. "requestId": "90db711a-4fb7-11e8-814a-39667866b640",
  5. "messageId": "-LBfxwhKDXm0gYij29Jy"
  6. }

Bedeutung der Parameter

# Parameter Bedeutung Erforderlich
1 senderToken API-Token des Absenders. Wurde beim Registrieren des Benutzers angezeigt ja
2 recipient AccountID des Empfängers ja
3 identifier Eine Art InstanzID des Absenders. Damit kann eine EventID einer bestimmten Instanz zugeordnet werden. Nötig bei z.B. mehreren Monitoring Systemen, die mit dem selben Absender Account senden. ja
4 eventid Die eindeutige ID des Events aus dem Monitoring ja
5 status Der Status des Events. 0 = OK, 1 = PROBLEM ja
6 severity Die Einstufung des Events. 0 = Not Classified, 1 = Information, 2 = Warning, 3 = Average, 4 = High, 5 = Disaster ja
7 title Der Titel des Events ja
8 text Der Meldungstext des Events ja
9 hostname Der Hostname der Maschine für dieses Event ja
10 hostgroup Die (eine) Hostgruppe der Maschine für dieses Event ja
11 hosttype Der Hosttyp der Maschine. Also z.B. Linux, Windows oder MacOS ja