<?xml version="1.0" encoding="UTF-8"?>
<zabbix_export><version>5.0</version><date>2021-11-21T22:00:35Z</date><groups><group><name>Templates</name></group></groups><templates><template><template>App Pi-Hole</template><name>App Pi-Hole</name><description>## Description

Domains Blocked DNS Queries Today Ads Blocked Today Ads Blocked Percentage Today Clients Ever Seen Unique Clients Reply NODATA Reply NXDOMAIN Reply CNAME Reply IP

## Overview

**Pi-Hole API**


**Auth integration:**  
Simply execute this command on Pi-Hole to retrieve API Token:



```
sudo cat /etc/pihole/setupVars.conf | grep PASSWORD | cut -d &quot;=&quot; -f2
```

  
Or go in the Pi-Hole WebUI &gt; Settings &gt; tab Api / Web Interface &gt; button Show API Token.


Report the value in Zabbix:  
Configuration &gt; Hosts &gt; [your Pi-Hole] &gt; Macros Tab &gt; new macro:


* Macro: {$WEBPASSWORD}
* Value: [the result of the command executed on your Pi-Hole]


  
 **Changelog:** 

*****Update 2022.26.12 (v1.4):****- added Auth support for summaryRaw:
- added auth support to summaryRaw (https://pi-hole.net/blog/2022/11/17/upcoming-changes-authentication-for-more-api-endpoints-required/)

****Update 2020.8.3 (v1.4):****- added getQueryTypes dependent items + graph:


* MX
* DS
* RRSIG
* DNSKEY
* OTHER


  
******Update 2020.7.9 (v1.3):******- added Auth support  
  
****Update 2020.7.8 (v1.2):****- bugfixes in existing items (preprocessing stuff)  
- switch to &quot;summaryRaw&quot; URL (http://{HOST.IP}/admin/api.php?summaryRaw)  
- link this page to Pi-Hole API FAQ  
- template graphics  
- new API metrics: http://{HOST.IP}/admin/api.php?getQueryTypes  
  
getQueryTypes dependent items:


* A (IPv4)
* AAAA (IPv6)
* ANY
* NAPTR
* PTR
* SOA
* SRV
* TXT


**Initiale release (v1.1):**  
API SummaryRaw (no auth needed): http://{HOST.IP}/admin/api.php?summaryRaw  
API Dependent items:


* Ads blocked today
* Ads percentage today
* DNS queries all types
* DNS queries today
* Domains being blocked
* Queries cached
* Queries forwarded
* Reply CNAME
* Reply IP
* Reply NODATA
* Reply NXDOMAIN
* Clients ever seen
* Unique clients
* Unique domain


## Author

Undefined_ID

</description><groups><group><name>Templates</name></group></groups><applications><application><name>DNS</name></application></applications><items><item><name>API_SummaryRaw</name><type>HTTP_AGENT</type><key>json.pihole</key><trends>0</trends><value_type>TEXT</value_type><applications><application><name>DNS</name></application></applications><url>http://{HOST.IP}/admin/api.php</url><query_fields><query_field><name>summaryRaw</name></query_field><query_field><name>auth</name><value>{$WEBPASSWORD}</value></query_field></query_fields></item><item><name>Ads blocked today</name><type>DEPENDENT</type><key>json.pihole.ads_blocked_today</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.ads_blocked_today</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>Ads percentage today</name><type>DEPENDENT</type><key>json.pihole.ads_percentage_today</key><delay>0</delay><value_type>FLOAT</value_type><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.ads_percentage_today</params></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>Clients ever seen</name><type>DEPENDENT</type><key>json.pihole.clients_ever_seen</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.clients_ever_seen</params></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>DNS queries all types</name><type>DEPENDENT</type><key>json.pihole.dns_queries_all_types</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.dns_queries_all_types</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>DNS queries today</name><type>DEPENDENT</type><key>json.pihole.dns_queries_today</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.dns_queries_today</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>Domains being blocked</name><type>DEPENDENT</type><key>json.pihole.domains_being_blocked</key><delay>0</delay><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.domains_being_blocked</params></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>Queries cached</name><type>DEPENDENT</type><key>json.pihole.queries_cached</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.queries_cached</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>Queries forwarded</name><type>DEPENDENT</type><key>json.pihole.queries_forwarded</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.queries_forwarded</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>API_getQueryTypes</name><type>HTTP_AGENT</type><key>json.pihole.querytypes</key><trends>0</trends><value_type>TEXT</value_type><applications><application><name>DNS</name></application></applications><url>http://{HOST.IP}/admin/api.php</url><query_fields><query_field><name>getQueryTypes</name></query_field><query_field><name>auth</name><value>{$WEBPASSWORD}</value></query_field></query_fields></item><item><name>A (IPv4)</name><type>DEPENDENT</type><key>json.pihole.querytypes.a</key><delay>0</delay><value_type>FLOAT</value_type><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['A (IPv4)']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>AAAA (IPv6)</name><type>DEPENDENT</type><key>json.pihole.querytypes.aaaa</key><delay>0</delay><value_type>FLOAT</value_type><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['AAAA (IPv6)']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>ANY</name><type>DEPENDENT</type><key>json.pihole.querytypes.any</key><delay>0</delay><value_type>FLOAT</value_type><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['ANY']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>DNSKEY</name><type>DEPENDENT</type><key>json.pihole.querytypes.dnskey</key><delay>0</delay><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['DNSKEY']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>DS</name><type>DEPENDENT</type><key>json.pihole.querytypes.ds</key><delay>0</delay><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['DS']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>MX</name><type>DEPENDENT</type><key>json.pihole.querytypes.mx</key><delay>0</delay><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['MX']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>NAPTR</name><type>DEPENDENT</type><key>json.pihole.querytypes.naptr</key><delay>0</delay><value_type>FLOAT</value_type><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['NAPTR']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>OTHER</name><type>DEPENDENT</type><key>json.pihole.querytypes.other</key><delay>0</delay><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['OTHER']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>PTR</name><type>DEPENDENT</type><key>json.pihole.querytypes.ptr</key><delay>0</delay><value_type>FLOAT</value_type><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['PTR']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>RRSIG</name><type>DEPENDENT</type><key>json.pihole.querytypes.rrsig</key><delay>0</delay><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['RRSIG']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>SOA</name><type>DEPENDENT</type><key>json.pihole.querytypes.soa</key><delay>0</delay><value_type>FLOAT</value_type><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['SOA']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>SRV</name><type>DEPENDENT</type><key>json.pihole.querytypes.srv</key><delay>0</delay><value_type>FLOAT</value_type><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['SRV']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>TXT</name><type>DEPENDENT</type><key>json.pihole.querytypes.txt</key><delay>0</delay><value_type>FLOAT</value_type><units>!</units><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$['querytypes']['TXT']</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole.querytypes</key></master_item></item><item><name>Reply CNAME</name><type>DEPENDENT</type><key>json.pihole.reply_CNAME</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.reply_CNAME</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>Reply IP</name><type>DEPENDENT</type><key>json.pihole.reply_IP</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.reply_IP</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>Reply NODATA</name><type>DEPENDENT</type><key>json.pihole.reply_NODATA</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.reply_NODATA</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>Reply NXDOMAIN</name><type>DEPENDENT</type><key>json.pihole.reply_NXDOMAIN</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.reply_NXDOMAIN</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>Unique clients</name><type>DEPENDENT</type><key>json.pihole.unique_clients</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.unique_clients</params></step></preprocessing><master_item><key>json.pihole</key></master_item></item><item><name>Unique domains</name><type>DEPENDENT</type><key>json.pihole.unique_domains</key><delay>0</delay><applications><application><name>DNS</name></application></applications><preprocessing><step><type>JSONPATH</type><params>$.unique_domains</params></step><step><type>SIMPLE_CHANGE</type><params/></step></preprocessing><master_item><key>json.pihole</key></master_item></item></items></template></templates><graphs><graph><name>Ads percentage today</name><ymin_type_1>FIXED</ymin_type_1><graph_items><graph_item><color>F63100</color><yaxisside>RIGHT</yaxisside><item><host>App Pi-Hole</host><key>json.pihole.ads_percentage_today</key></item></graph_item><graph_item><sortorder>1</sortorder><color>00BFFF</color><item><host>App Pi-Hole</host><key>json.pihole.domains_being_blocked</key></item></graph_item></graph_items></graph><graph><name>Clients</name><ymin_type_1>FIXED</ymin_type_1><graph_items><graph_item><color>199C0D</color><item><host>App Pi-Hole</host><key>json.pihole.clients_ever_seen</key></item></graph_item><graph_item><sortorder>1</sortorder><color>F63100</color><item><host>App Pi-Hole</host><key>json.pihole.unique_clients</key></item></graph_item></graph_items></graph><graph><name>DNS queries</name><type>STACKED</type><graph_items><graph_item><color>FFFFFF</color><item><host>App Pi-Hole</host><key>json.pihole.dns_queries_today</key></item></graph_item><graph_item><sortorder>1</sortorder><color>00FF00</color><item><host>App Pi-Hole</host><key>json.pihole.queries_cached</key></item></graph_item><graph_item><sortorder>2</sortorder><color>9C27B0</color><item><host>App Pi-Hole</host><key>json.pihole.queries_forwarded</key></item></graph_item><graph_item><sortorder>3</sortorder><color>FC6EA3</color><item><host>App Pi-Hole</host><key>json.pihole.unique_domains</key></item></graph_item></graph_items></graph><graph><name>DNS replies</name><type>STACKED</type><graph_items><graph_item><color>199C0D</color><item><host>App Pi-Hole</host><key>json.pihole.reply_CNAME</key></item></graph_item><graph_item><sortorder>1</sortorder><color>F63100</color><item><host>App Pi-Hole</host><key>json.pihole.reply_IP</key></item></graph_item><graph_item><sortorder>2</sortorder><color>2774A4</color><item><host>App Pi-Hole</host><key>json.pihole.reply_NODATA</key></item></graph_item><graph_item><sortorder>3</sortorder><color>F7941D</color><item><host>App Pi-Hole</host><key>json.pihole.reply_NXDOMAIN</key></item></graph_item></graph_items></graph><graph><name>Query Types</name><type>STACKED</type><graph_items><graph_item><color>199C0D</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.a</key></item></graph_item><graph_item><sortorder>1</sortorder><color>F63100</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.aaaa</key></item></graph_item><graph_item><sortorder>2</sortorder><color>2774A4</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.any</key></item></graph_item><graph_item><sortorder>3</sortorder><color>C7A72D</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.srv</key></item></graph_item><graph_item><sortorder>4</sortorder><color>6C59DC</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.soa</key></item></graph_item><graph_item><sortorder>5</sortorder><color>FC6EA3</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.ptr</key></item></graph_item><graph_item><sortorder>6</sortorder><color>BA2A5D</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.txt</key></item></graph_item><graph_item><sortorder>7</sortorder><color>F7941D</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.naptr</key></item></graph_item><graph_item><sortorder>8</sortorder><color>F230E0</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.mx</key></item></graph_item><graph_item><sortorder>9</sortorder><color>5CCD18</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.ds</key></item></graph_item><graph_item><sortorder>10</sortorder><color>BB2A02</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.rrsig</key></item></graph_item><graph_item><sortorder>11</sortorder><color>AC41A5</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.dnskey</key></item></graph_item><graph_item><sortorder>12</sortorder><color>89ABF8</color><item><host>App Pi-Hole</host><key>json.pihole.querytypes.other</key></item></graph_item></graph_items></graph></graphs></zabbix_export>
