node-red-contrib-unifi-ultimate 1.0.9
Node-RED nodes for Ubiquiti UniFi integrations, including UniFi Protect, UniFi Access, and UniFi Network.
node-red-contrib-unifi-ultimate
Control and monitor your UniFi Network, UniFi Protect, and UniFi Access devices directly from Node-RED — no technical knowledge required.
Install
In Node-RED:
- Open
Manage palette. - Select
Install. - Search for
node-red-contrib-unifi-ultimate. - Install the package.
Quick Start
- Add a config node for your UniFi product: Unifi Network Config, Unifi Protect Config, or Unifi Access Config.
- Enter your UniFi controller address and login credentials.
- Add the matching node to your flow.
- Select the device you want to control or monitor.
- Select the action.
- Click Deploy.
- Send any message into the node to run the action.
Tip: For most actions, the incoming message is just a trigger — the node uses the device and action you configured in the editor.
The only exception is Clients Control with a controlled by msg.payload action: sendtrueto enable (PoE or the port) andfalseto disable it, on every target in its list.
Custom port: Each config node has an optional Port field. Leave it empty to use the default (
443for Network/Protect,12445for Access). Set it when your controller listens on a custom port — for example a UniFi OS server that uses11443. A port written directly in the controller address (host:port) takes precedence over this field.
Self-signed certificates: Each config node has an Allow self-signed certificate option, enabled by default. UniFi controllers almost always present a self-signed certificate, so keep it checked for UniFi OS / UXG setups. Uncheck it only if your controller uses a certificate signed by a trusted certificate authority and you want strict verification.
Use Network nodes to work with:
- sites
- UniFi devices such as switches and access points
- connected clients such as phones, computers, and IoT devices
- switch ports and PoE control
- client presence detection
Things you can do:
- Check whether a device or phone is connected to your network.
- Re-send the current presence state at a fixed interval with the Presence node's Resend field (e.g. to keep a dashboard or home-automation system in sync).
- Count how many clients are currently online.
- Create guest Wi-Fi vouchers.
- Read CPU usage, memory, and uptime from a switch or access point.
- Read the temperature of a switch (where supported).
- Restart a UniFi device.
- Control a list of clients/ports at once with the Clients Control node: pick targets by switch+port or by client (its uplink switch/port is resolved automatically) and apply one action to all of them, getting a single summary message back.
- Switch PoE on/off or power-cycle it, and enable/disable the whole switch port (the UniFi Port State toggle), driven by the editor or by
msg.payload. - Let Clients Control automatically find which switch port a client is connected to.
- Restart a whole list of switches/APs at once, or power-cycle all their active PoE ports, with the Restart node.
Use Protect nodes to work with:
- cameras
- sensors (motion, contact, temperature, humidity, leak)
- lights
- chimes
- viewers
- NVR
Things you can do:
- Receive motion, ring, contact, tamper, leak, and low-battery alerts.
- Read the current state of a camera or sensor.
- Take a camera snapshot.
- Control PTZ cameras (move to preset, start/stop patrol).
- Display a custom message on a doorbell screen.
- Switch a viewer to a different live feed.
Use Access nodes to work with:
- doors
- Access devices (hubs, intercoms)
- door events (unlock, ring, DPS, emergency)
- lock rules and schedules
- doorbell actions
Things you can do:
- Unlock a door remotely.
- Set a temporary unlock window with a custom duration.
- Enable lockdown or evacuation mode.
- Receive door events in real time.
- Trigger or cancel an intercom doorbell.
Outputs
Every node has two outputs:
| Output | When it fires |
|---|---|
| 1 — result | The action completed successfully. The result is available in msg.payload. |
| 2 — error | Something went wrong (connection problem, timeout, unsupported action). |
When an error occurs, the node status turns red and the error message comes out of the second output. Connect it to a debug node to see what happened, or wire it to any notification logic in your flow.
Repeat periodically — for read actions, you can tick Emit periodically in the node editor to have the node send the result automatically at a fixed interval, without needing an Inject node. The Presence Detection node offers a similar Resend (s) field: set it above 0 to re-emit the last known presence value on that cadence (even when unchanged). Resent messages carry msg.eventName = "repeat" so you can tell them apart from real state changes; leave it at 0 to disable.
Example Flows
Import from examples/:
| Flow file | What it demonstrates |
|---|---|
| examples/unifi-protect-info.json | Read the state of a Protect camera |
| examples/unifi-protect-sensor-observe.json | Receive sensor events (motion, temperature, humidity, …) |
| examples/unifi-protect-camera-actions.json | Take snapshots, move PTZ, show doorbell messages |
| examples/unifi-access-door-control.json | Door state, remote unlock, temporary lock rule |
| examples/unifi-access-intercom-doorbell.json | Intercom — receive ring, trigger and cancel doorbell |
Notes
- You need valid login credentials for the UniFi application you want to use.
- Some actions are only available on specific device models.
- UniFi behavior can vary between application versions.