@GeorgeB I have been considering some uses for a potential security camera API.
I think there is a large potential in the loss prevention space in retail (aka detecting theft). It is not uncommon for some retail chains to use 10 to 20 cameras per store (for loss prevention) which can quickly add up to thousands of cameras for individual retail brands.
The biggest potential I can think of is around integrating other data sources, such as POS data, which what the cameras can see. Loss prevention would then go from reactive - looking at reported incidents - to proactive - where the system searches for issues.
Lets take a specific case, a fast food chain. Lets say via the dashboard for each camera I can draw several rectangles of interest and tag them. For example, Staff at counter, POS terminal, cash drawer, drinks machine, ice cream machine, fries machine, etc. Then via the API I send what I consider to be normal "motion". For example, a customer buys french fries, a drink, and pays via credit card. Via the API, I say I expect (or perhaps I should use the term "search" for) motion between the tagged zones "french-fries", "drink-machine", "pos-terminal" between 12:03 and 12:06. Anything other than this is ab-normal. So for example I want to be notified if motion occurred between the staff-zone and the "ice-cream-machine" zone, or between the "cash-drawer" and the staff-zone. Ideally I could then review all the anomalies across the entire organisation. But even just being able to have an API to search between tagged zones would be powerful.
The motion rules should be able to apply across cameras in a single network (aka store). So one camera might have the "credit-card" and "cash-drawer" zones, and another might have the "drinks-machine" zone, etc. Even if it could only be done with a single camera to begin with it would allow power business rules of normal operation to be established.
Lets take another example, the Meraki bike rack. There might be three tagged zones, "outside-entry", "bike-racks", "door-into-building". You might use the API to say normal behaviour might might be from the "outside-entry" to "bike-racks" and from the "bike-racks" to "door-into-building" - and the converse for people leaving. This would then cause someone entering from outside going to the bike racks and then going back to the outside as abnormal behaviour needing review (aka potentially stealing a bike).
Lets take a school. Normal behaviour might be motion from a hall way into a class room at the beginning of class, and the reverse at the end. Anything else would be called abnormal and flagged for review.
I guess the more I think about it, having an API to allow for searching for motion within and between tagged zones during specific time ranges would be very powerfull.