Viewing system inventory data
You can query and visualize centralized system inventory data from all monitored endpoints in the IT Hygiene section on the Wazuh dashboard. This provides a unified view of your environment's status across all monitored endpoints.
The IT Hygiene section organizes data into multiple categories:
Dashboard: View an overview of key metrics and a summary of your environment.
System: Analyze operating system and hardware information.
Software: Review installed packages and software vendors.
Processes: Monitor running processes.
Network: Inspect network configurations, interfaces, and traffic.
To access the IT hygiene section, navigate to Security operations > IT Hygiene on the Wazuh dashboard.
Dashboard
Shows a consolidated view of the system inventory data across multiple or selected monitored endpoints. It visualizes key metrics such as operating system families, package types, installed packages, running packages, operating systems, host CPUs, source ports, and process start times.

System
Provides a detailed breakdown of the operating systems and hardware in your environment.
The OS tab provides an operating system and hardware information breakdown across all monitored endpoints.
The Hardware tab displays top CPU models, CPU cores, the most used memory, and a summary data table.
Software
Contains an overview of software packages and Windows KBs on monitored endpoints.
The Packages tab displays package data, including top software vendors, the number of installed packages, the types of packages, and a summary data table.
The Windows KBs tab displays the Windows Knowledge Base data, including the most and least common Knowledge Bases.
Processess
Displays running processes, process start times, and a summary data table containing process details for the monitored endpoints.

Network
Contains the Addresses, Interfaces, Protocols, Services, and Traffic tabs.
The Addresses tab provides a detailed view of network types, unique network IP addresses, interface names, and a summary data table containing detailed network address information.
The Interfaces tab offers a detailed view of network interfaces, displaying average packet loss, interface states, interface types, and a summary data table of interface-level details.
The Protocols tab offers a detailed view of network types, network metrics, and DHCP status, and a summary table with more protocol-level details.
The Services tab presents a detailed view of source ports, transport protocols, processes, and a summary data table for each endpoint.
The Traffic tab provides a detailed view of active listening ports, including source ports, destination ports, transport protocols, processes, and a summary data table for each endpoint.
Query the agent inventory database
The Syscollector module runs periodic scans and sends the updated data in JSON format to the Wazuh server. The Wazuh server analyzes and stores this data in a separate database for each endpoint. The databases contain tables that store each type of system information. You can query the database for specific information using the Wazuh API or the SQLite
tool.
Using the Wazuh API
You can query the Wazuh inventory data using the Wazuh API, which retrieves nested data in JSON format. You can use the Wazuh API GUI on the dashboard or a command line tool like cURL
to query the inventory database.
Wazuh API GUI
On the Wazuh dashboard, navigate to Server management > Dev Tools. On the Console, type the following:
GET /syscollector/<AGENT_ID>/
Where <AGENT_ID>
corresponds to the agent ID of the endpoint.
The Wazuh dashboard will suggest a list of available tables that you can query via the API.

For example, you can use the command GET /syscollector/<AGENT_ID>/packages
to query the inventory data for installed packages on the endpoint. After typing, click the play icon to run the query.
Furthermore, you can query the inventory data for specific information about any property. For example, the command below queries the package inventory to check for the wazuh-agent
package:
GET /syscollector/<AGENT_ID>/packages?pretty=true&name=wazuh-agent
Where:
packages
reference the package table in the inventory database, which stores information about the currently installed software on an endpoint. You can reference the table of your interest.name=wazuh-agent
specifies thewazuh-agent
package name. You can use different properties and values.pretty=true
ensures the output is properly formatted and easy to read.

cURL
Follow the steps below to query the endpoint database from the command line using cURL
:
Generate a JSON Web Token (JWT) for authenticating to the Wazuh server by running the following command. The default API credentials are
wazuh:wazuh
. Replace<WAZUH_SERVER_IP>
with your Wazuh server IP address.TOKEN=$(curl -u <USER>:<PASSWORD> -k -X GET "https://<WAZUH_SERVER_IP>:55000/security/user/authenticate?raw=true")
Run the command
echo $TOKEN
to confirm that you successfully generated the token. The output should be like this:eyJhbGciOiJFUzUxMiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ3YXp1aCIsImF1ZCI6IldhenVoIEFQSSBSRVNUIiwibmJmIjoxNjQzMDExMjQ0LCJleHAiOjE2NDMwMTIxNDQsInN1YiI6IndhenVoIiwicnVuX2FzIjpmYWxzZSwicmJhY19yb2xlcyI6WzFdLCJyYmFjX21vZGUiOiJ3aGl0ZSJ9.Ad6zOZvx0BEV7K0J6s3pIXAXTWB-zdVfxaX2fotLfZMQkiYPMkwDaQHUFiOInsWJ_7KZV3y2BbhEs9-kBqlJAMvMAD0NDBPhEQ2qBd_iutZ7QWZECd6eYfIP83xGqH9iqS7uMI6fXOKr3w4aFV13Q6qsHSUQ1A-1LgDnnDGGaqF5ITYo
Query the endpoint information of interest using a command which takes the following format:
curl -k -X GET "https://<WAZUH_SERVER_IP>:55000/syscollector/<AGENT_ID>/<SYSCOLLECTOR_PROPERTY>?pretty=true" -H "Authorization: Bearer $TOKEN"
For example, to retrieve information about the applications installed on an endpoint with agent ID of
010
, the command will be:curl -k -X GET "https://<WAZUH_SERVER_IP>:55000/syscollector/010/packages?pretty=true" -H "Authorization: Bearer $TOKEN"
The other inventory properties are
hardware
,hotfixes
,netaddr
,netiface
,netproto
,os
,ports
, andprocesses
. These all correspond to the tables in the inventory database. You can learn more about these options in our API documentation.{ "data": { "affected_items": [ { "scan": { "id": 0, "time": "2022-09-27T09:16:45+00:00" }, "priority": "optional", "multiarch": "foreign", "format": "deb", "vendor": "Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>", "size": 12219, "version": "0.4.9-2", "description": "encoding data for the poppler PDF rendering library", "section": "misc", "name": "poppler-data", "architecture": "all", "agent_id": "010" }, { "scan": { "id": 0, "time": "2022-09-27T09:16:45+00:00" }, "priority": "optional", "multiarch": "foreign", "format": "deb", "vendor": "Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>", "size": 31, "version": "3.20-4", "description": "data tables pertaining to HTML", "section": "perl", "name": "libhtml-tagset-perl", "architecture": "all", "agent_id": "010" }, { "scan": { "id": 0, "time": "2022-09-27T09:16:45+00:00" }, "priority": "optional", "multiarch": "same", "format": "deb", "vendor": "Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>", "size": 426, "version": "1.17-6ubuntu4.1", "description": "MIT Kerberos runtime libraries - krb5 GSS-API Mechanism", "section": "libs", "source": "krb5", "name": "libgssapi-krb5-2", "architecture": "amd64", "agent_id": "010" }, …
Furthermore, you can query the inventory data to find specific information about any property. For example, the command below queries the package inventory to check if the
wazuh-agent
package is present.curl -k -X GET "https://<WAZUH_SERVER_IP>:55000/syscollector/001/packages?pretty=true&name=wazuh-agent" -H "Authorization: Bearer $TOKEN"
{ "data": { "affected_items": [ { "scan": { "id": 0, "time": "2025-08-18T16:50:06+00:00" }, "name": "wazuh-agent", "section": "System Environment/Daemons", "architecture": "x86_64", "description": "Wazuh helps you to gain security visibility into your infrastructure by monitoring\nhosts at an operating system and application level. It provides the following capabilities:\nlog analysis, file integrity monitoring, intrusions detection and policy and compliance monitoring", "location": " ", "source": " ", "format": "rpm", "install_time": "1755535740", "version": "4.12.0-1", "size": 30461944, "priority": " ", "vendor": "Wazuh, Inc <info@wazuh.com>", "agent_id": "001" } ], "total_affected_items": 1, "total_failed_items": 0, "failed_items": [] }, "message": "All specified syscollector information was returned", "error": 0 }
Using SQLite
The location of the database for each monitored endpoint is on the Wazuh server at /var/ossec/queue/db/
. You can query each database directly. To connect to the database of an endpoint, use the command below:
$ sqlite3 /var/ossec/queue/db/<AGENT_ID>.db
Where <AGENT_ID>
corresponds to the agent ID of the monitored endpoint.
SQLite version 3.7.17 2013-05-20 00:56:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
After connecting to the database, you can query the list of tables in it using the command below:
sqlite>.tables
ciscat_results sca_scan_info sys_osinfo
fim_entry scan_info sys_ports
metadata sync_info sys_processes
pm_event sys_hotfixes sys_programs
sca_check sys_hwinfo vuln_cves
sca_check_compliance sys_netaddr vuln_metadata
sca_check_rules sys_netiface
sca_policy sys_netproto
You can further query the tables for any information you are interested in. For example, if you want to know if a particular software is present on an endpoint, you can query the sys_programs
table using sqlite>select * from sys_programs where name="<SOFTWARE_NAME>";
. The command below checks whether the wazuh-agent
program is present on a monitored Linux endpoint and shows the captured details:
sqlite>select * from sys_programs where name="wazuh-agent";
0|2023/01/06 13:48:56|rpm|wazuh-agent||System Environment/Daemons|25988677|Wazuh, Inc <info@wazuh.com>|1673012221|4.3.10-1|x86_64|||Wazuh helps you to gain security visibility into your infrastructure by monitoring hosts at an operating system and application level. It provides the following capabilities: log analysis, file integrity monitoring, intrusions detection and policy and compliance monitoring||1|||1cf5a056a0ff5b6201939eba76ef68f6d860af36|5747279dac052d61c6d3ec87b475edddb84e9dd1