Pretty-prints API responses as colored ANSI tables in iex.
Handles both raw lists and wrapped responses (%{"data" => [...]}).
Examples
{:ok, devices} = UnifiApi.Network.Devices.list(client, site_id)
UnifiApi.Formatter.devices(devices)
{:ok, clients} = UnifiApi.Network.Clients.list(client, site_id)
UnifiApi.Formatter.clients(clients)
Summary
Functions
Shortcut: prints alarms from UnifiApi.Network.Alarms.list/3 as a
table with severity colour-coding.
Shortcut: prints anomalies from UnifiApi.Network.Anomalies.list/3.
Shortcut: prints cameras as a pre-configured table.
Shortcut: prints clients as a pre-configured table.
Shortcut: prints live wireless clients from
UnifiApi.Network.ClientsLive.list/2.
Prints a single map as a colored key-value detail view.
Shortcut: prints devices as a pre-configured table.
Shortcut: prints events from UnifiApi.Network.Events.list/3 as a
table with subsystem colour-coding.
Shortcut: prints networks as a pre-configured table.
Shortcut: prints sites as a pre-configured table.
Prints a list of maps as a colored ANSI table.
Functions
Shortcut: prints alarms from UnifiApi.Network.Alarms.list/3 as a
table with severity colour-coding.
Shortcut: prints anomalies from UnifiApi.Network.Anomalies.list/3.
Shortcut: prints cameras as a pre-configured table.
Examples
{:ok, cameras} = UnifiApi.Protect.Cameras.list(client)
UnifiApi.Formatter.cameras(cameras)
Shortcut: prints clients as a pre-configured table.
Examples
{:ok, clients} = UnifiApi.Network.Clients.list(client, site_id)
UnifiApi.Formatter.clients(clients)
Shortcut: prints live wireless clients from
UnifiApi.Network.ClientsLive.list/2.
Prints a single map as a colored key-value detail view.
Handles wrapped responses (%{"data" => %{...}}).
Examples
{:ok, device} = UnifiApi.Network.Devices.get(client, site_id, device_id)
UnifiApi.Formatter.detail(device)
{:ok, nvr} = UnifiApi.Protect.NVR.get(client)
UnifiApi.Formatter.detail(nvr, title: "NVR Info")
Shortcut: prints devices as a pre-configured table.
Examples
{:ok, devices} = UnifiApi.Network.Devices.list(client, site_id)
UnifiApi.Formatter.devices(devices)
Shortcut: prints events from UnifiApi.Network.Events.list/3 as a
table with subsystem colour-coding.
Examples
{:ok, events} = UnifiApi.Network.Events.list(authed, "default", within_hours: 1)
UnifiApi.Formatter.events(events)
Shortcut: prints networks as a pre-configured table.
Examples
{:ok, networks} = UnifiApi.Network.Networks.list(client, site_id)
UnifiApi.Formatter.networks(networks)
Shortcut: prints sites as a pre-configured table.
Examples
{:ok, sites} = UnifiApi.Network.Sites.list(client)
UnifiApi.Formatter.sites(sites)
Prints a list of maps as a colored ANSI table.
Accepts a plain list or a wrapped response (%{"data" => [...]}).
Options
:title— optional title printed above the table:colors— map of column names to color atoms (e.g.%{"state" => :state})
Examples
UnifiApi.Formatter.table(devices, ["name", "macAddress", "state"], title: "Devices")
UnifiApi.Formatter.table(clients, ["name", "ipAddress", "type"],
title: "Connected Clients",
colors: %{"type" => :type}
)