UniFi Protect: List Events
unifi_protect_list_eventsSearch recorded UniFi Protect events over any time range to find motion, smart detections, doorbell rings, and camera connection changes, filtered by camera or event type.
Instructions
Search recorded events over any time range — motion, smart detections (person, vehicle, animal, package, licence plate), doorbell rings, and camera connection changes. This is the tool for questions like "what happened at the front door last night". Each result carries its camera's NAME as well as its id, so no second lookup is needed. Smart detections also say what was seen: people (how many people that one event tracked) and vehicles (each with its licence plate, colour and type where read). Times may be given in the console's own local clock ("1am"), which is what a question about last night means. READ ANY warnings IN THE RESULT BEFORE REPORTING A COUNT: a camera with the detector switched off returns zero matches, which is not the same as nothing having happened, and this tool says which case it is. Narrow with types, smartDetectTypes and cameraIds wherever you can: a busy system logs thousands of motion events a day.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | End of the search window. Accepts ISO 8601 ("2026-08-29T22:00:00Z"), a relative expression ("2h ago", "30m", "7d"), or "now". Local times ("1am", "2026-08-30 01:00") are read in the console's own time zone. Converted to the millisecond epoch the console requires — do not pass Unix seconds, which would silently query 1970 and return nothing. | |
| limit | No | Maximum number of items to return (1-500). Defaults to 50. A busy system logs thousands of motion events a day, so raise this deliberately. | |
| order | No | Which end of the window to return first. | newest |
| start | No | Beginning of the search window. Accepts ISO 8601 ("2026-08-29T22:00:00Z"), a relative expression ("2h ago", "30m", "7d"), or "now". Local times ("1am", "2026-08-30 01:00") are read in the console's own time zone. Converted to the millisecond epoch the console requires — do not pass Unix seconds, which would silently query 1970 and return nothing. | |
| types | No | Event types to include. Defaults to motion, smart detections and rings. `smartDetectZone` is the object-detection type — pair it with smartDetectTypes to ask for people or vehicles specifically. | |
| cameraId | No | Restrict to one camera — the `id` from unifi_protect_list_cameras. Omit for all cameras. Use cameraIds for several. | |
| location | No | A configured place name, e.g. "front". Resolves to the cameras covering it — the console has no idea where anything is, so this comes from UNIFI_PROTECT_LOCATIONS. Read unifi-protect://locations to see what is defined. | |
| cameraIds | No | Restrict to several cameras by id. Filtering happens on the console, so a narrow camera list over a long window returns that camera's events rather than whatever survived a fleet-wide limit. | |
| smartDetectTypes | No | What the camera classified, e.g. ["person"] or ["vehicle","licensePlate"]. Only meaningful for smartDetectZone / smartDetectLine events; the alrm* values are audio detections. Cameras without smart detection never produce these. |