Everything it collects

Everything about every device. Macintosh and Windows.

From the CPU and disk encryption to installed apps, Wi-Fi, the logged-in user, and managed software — ReportMate captures a complete picture of every device, the same way on Mac and Windows. Here is exactly what it collects.

ReportMate device detail view with the module tab bar and inventory overview

Inventory

Asset tag, assigned owner, department, location, device name, manufacturer, model, and purchase metadata for asset reconciliation.

Installs

Managed software state from Cimian (Windows) and Munki (Macintosh): item name, target vs installed version, pending, installed, failed, plus install-session history and logs.

Applications

Installed applications with version, bundle identifier or product code, publisher, install date and size — normalized across Macintosh and Windows.

System

OS name, version & build, patch level, rapid security responses, uptime, boot time, kernel version, architecture, locale, time zone.

Management

MDM enrollment & vendor, supervision, configuration profiles, installed certificates, and managed-status — including profiles collected inline.

Identity

Console / logged-in user, full name, local and directory accounts, home directory, Entra ID / Active Directory join, and shared-device detection.

Hardware

Model & model identifier, manufacturer, serial number, CPU/SoC, performance & efficiency core counts, Neural Engine (NPU), GPU, total RAM with per-module manufacturer and type, storage devices, battery health & cycle count, thermals.

Peripherals

Displays (resolution, scaling, connection), printers (driver, default, network), and connected USB and Bluetooth devices — displays and printers collected within peripherals.

Security

FileVault / BitLocker encryption state, firewall, System Integrity Protection, Gatekeeper, secure/measured boot, TPM, XProtect, and presence of endpoint protection.

Network

Active connection, all interfaces, IPv4/IPv6, MAC addresses, DNS servers, gateways, Wi-Fi SSID with band/channel/width/protocol, signal strength, VPN status.

Real-time & event-driven

The fleet view updates as devices report in

Every client check-in is an event. The API ingests it, writes the module documents to PostgreSQL, and pushes an update to connected dashboards over SignalR/WebSocket — so what you see reflects reality without polling.

  • Scheduled collection: launchd on Macintosh, service + scheduled task on Windows
  • Event payloads over HTTPS, authenticated per client
  • Raw payloads retained and retrievable per event for audit and debugging
event stream
POST /api/v1/events 202 Accepted
device C02XL0ABJGH7 · module documents received
stored in PostgreSQL
pushed to dashboards over WebSocket
fleet view updated 0.4s

A documented REST API for everything

FastAPI with a full OpenAPI specification — 40+ versioned endpoints under /api/v1. Authenticated with X-Client-Passphrase, an internal secret for service-to-service, or Azure Managed Identity.

Devices

Per-device detail, fast info, events, install logs, usage history, and any single module document.

GET /api/v1/device/{serial}/modules/{module}

Fleet

Bulk analytics across the whole fleet: hardware, applications, installs, identity, inventory, plus distributions and filters.

GET /api/v1/devices/hardware

Events

Ingest device check-ins and retrieve the event stream and raw payloads.

POST /api/v1/events

Statistics

Pre-aggregated dashboard data and install statistics for at-a-glance fleet health.

GET /api/v1/dashboard

Settings

Tenant settings and dynamic inventory key discovery.

GET /api/v1/settings

Health

Liveness checks and the SignalR negotiate endpoint that powers real-time updates.

GET /api/v1/negotiate

Architecture

Client agents

  • Macintosh: native Swift binary, launchd-scheduled, osquery + system APIs
  • Windows: C#/.NET binary, Windows service + scheduled task, osquery integration
  • Collection is a single self-contained binary — quick to deploy, nothing to maintain

Server stack

  • API: FastAPI with versioned REST endpoints and OpenAPI docs
  • Frontend: Next.js, server-rendered, reader-only with real-time updates
  • Database: PostgreSQL with JSONB, one document per module
  • Infrastructure: Terraform modules for Azure and AWS

See how the layers connect on the architecture diagram.

On the roadmap

Coming soon

Native dashboard apps

First-party Macintosh and Windows apps for browsing your fleet natively, built on the same REST API.

Coming soon

Self-service cloud portal

Sign up, provision a managed tenant, and manage billing without leaving the browser.

Coming soon

Command-line interface

Query devices, pull module data, and script your fleet straight from the terminal against the REST API.

Coming soon

MCP server

A Model Context Protocol server so AI assistants can query your fleet and answer questions in natural language.

Exploring

More integrations

Webhooks and turnkey connectors for CMDB, SIEM, and asset systems on top of the existing API.