5 Zabbix sender protocol

Overview

Zabbix server and Zabbix proxy use a JSON-based communication protocol for receiving data from Zabbix sender. Data can be received with the help of a trapper item, or an HTTP agent item with trapping enabled.

Request and response messages must begin with header and data length.

Zabbix sender request

{  "request": "sender data",  "data": [  {  "host": "<hostname>",  "key": "trap",  "value": "test value"  }  ] }

Zabbix server response

{  "response": "success",  "info": "processed: 1; failed: 0; total: 1; seconds spent: 0.060753" }

Zabbix sender request with a timestamp

Alternatively, Zabbix sender can send a request with a timestamp and nanoseconds.

{  "request": "sender data",  "data": [  {  "host": "<hostname>",  "key": "trap",  "value": "test value",  "clock": 1516710794,  "ns": 592397170  },  {  "host": "<hostname>",  "key": "trap",  "value": "test value",  "clock": 1516710795,  "ns": 192399456  }  ],  "clock": 1516712029,  "ns": 873386094 }

Zabbix server response

{  "response": "success",  "info": "processed: 2; failed: 0; total: 2; seconds spent: 0.060904" }