Protect Streams Utility

How to use the Protect Streams Utility

The utility does the tedious part for you: point it at your UniFi Protect console, give it an API key, and it enumerates every camera, enables the streams, and hands back a clean table of stream and snapshot URLs, ready to paste into Crestron Home (or any control system that takes RTSP/RTSPS). Two things you set up once on the console before you run it: a local API key and, for snapshots, each camera's recovery password.

← Back to Protect Streams Utility

Screenshots are on the way. The steps below are final; we're shooting the console screenshots against a live UniFi OS build next and will drop them into the placeholders as they're ready.

Before you start

  • A Windows desktop that can reach your UniFi Protect console over the network.
  • Admin access to the UniFi OS console that runs Protect (CloudKey, UDM/UDM-Pro, or UNVR).
  • About 5 minutes.

Step 1: Create a local API key

The utility talks straight from your machine to your Protect console using a local API key. The key never leaves your machine: it's held for the session only, unless you choose to save the site in the app, in which case it's stored on that PC encrypted with Windows DPAPI.

  1. Sign in to your UniFi OS console in a browser (the device address, not the Protect app directly).
  2. Open the API key / Integrations area of your UniFi OS console and create a new local API key with Protect access. The exact menu location varies by UniFi OS version; look for an “API keys” or “Integrations” entry in the console's settings.
  3. Give it a recognizable name (e.g. protect-streams-utility) and copy the key now; the console shows it only once.
Screenshot coming soon The console page where the API key is created
Screenshot coming soon The “copy key” moment (key value blurred)

Step 2: Get each camera's recovery password (only needed for snapshots)

Stream URLs work from the API key alone. Snapshot URLs additionally need the per-camera recovery password, the credential that lets the utility pull a still image directly from each camera.

  1. In the console, open the camera's settings and find its recovery password in the Manual Recovery section. The exact layout varies by firmware, so use the screenshot below as your guide once it's posted.
  2. Note it next to the camera name; the utility asks for it per camera.
Screenshot coming soon Where a camera's recovery password is shown

If you only need stream URLs right now, you can skip this and add snapshots later; the utility simply leaves the snapshot column blank for cameras without a recovery password.

Step 3: Run the utility

  1. Launch the Protect Streams Utility.
  2. Enter your console address and the API key from Step 1, then connect. The utility enumerates every camera automatically.
  3. It enables RTSPS streams and builds the URL list in one pass.
  4. For snapshots, paste each camera's recovery password from Step 2 when prompted.
  5. When it finishes, you get a clean, labeled table: each camera with its stream URL(s) and snapshot URL.
Screenshot coming soon The connect screen (address + API key fields)
Screenshot coming soon The finished URL table

Step 4: Paste into your control system

Copy the stream and snapshot URLs straight into your control system's native camera settings. In Crestron Home, the camera device's stream/snapshot fields. No driver or certification is required to use the utility; it outputs standard RTSPS/RTSP and snapshot URLs that any control system can consume.

Screenshot coming soon (optional) The URLs pasted into a Crestron Home camera page

If something doesn't work

The utility is built to tell you exactly what's wrong, not just fail:

“API key invalid / unauthorized”
The key was mistyped, or it doesn't have Protect access. Recreate it in Step 1.
“Console unreachable”
The machine can't reach the console address. Check the address and that you're on the same network / VPN.
A camera shows no snapshot URL
It has no recovery password entered (Step 2), or the camera is offline.
A camera is missing from the list
It's offline or not adopted in Protect.

Still stuck? Email [email protected] with your Protect firmware version and, if you can, the utility's log export, which lets us triage before we reply.