Skip to main content
Deep Packet Inspection (DPI) gives you visibility into what applications and services are consuming bandwidth on your network. These tools let your AI assistant answer questions like “which applications are using the most bandwidth today?”, “what is this specific client doing?”, and “what DPI application categories does UniFi recognize?” — without you needing to log into the console.

DPI statistics

get_dpi_statistics

Returns a full DPI breakdown for a site: every identified application and category, sorted by total bytes transferred, for the selected time window.
string
required
The site identifier.
string
The time window to aggregate statistics over. Accepted values: 1h, 6h, 12h, 24h, 7d, 30d. Defaults to 24h.
Example response

list_top_applications

Returns the top N applications by total bytes transferred. This is a convenience wrapper around get_dpi_statistics that trims the result for you.
string
required
The site identifier.
integer
Number of top applications to return. Defaults to 10.
string
Time window. Accepted values: 1h, 6h, 12h, 24h, 7d, 30d. Defaults to 24h.
Example response

get_client_dpi

Returns a per-application traffic breakdown for a single client identified by MAC address. Results include each application’s upload bytes, download bytes, and percentage share of that client’s total traffic.
string
required
The site identifier.
string
required
The client’s MAC address (e.g., "aa:bb:cc:dd:ee:ff").
string
Time window. Accepted values: 1h, 6h, 12h, 24h, 7d, 30d. Defaults to 24h.
integer
Maximum number of applications to return.
integer
Number of applications to skip (for pagination).
Example response

DPI reference data

These tools return static reference data from UniFi about available DPI categories and applications. They are useful for understanding what application IDs and category names to use when building filters or ACL rules.

list_dpi_categories

Returns all DPI categories recognized by UniFi (e.g., Streaming, Social Media, Gaming, Video Conferencing). No parameters required beyond the server-level settings.

list_dpi_applications

Returns all DPI application definitions that UniFi can identify. Each application includes its category and an application ID you can reference in traffic rules.
integer
Maximum number of results to return.
integer
Number of results to skip (for pagination).
string
A filter expression to narrow the list (e.g., filter by category name).

Countries reference

list_countries

Returns the list of countries available for use in UniFi configuration and localization settings. No parameters required.

Example: finding top bandwidth users

This workflow identifies which applications and clients are consuming the most bandwidth over the past 7 days, then drills into the heaviest-using client.
Combine list_top_applications with get_client_dpi to answer the question “who is responsible for all this streaming traffic?” — first find the dominant category, then identify which clients are driving it.