Quividi has been offering a Real Time API from its early days. This RT API consists of a series of code samples (under PHP, Java, C++, Python) and a complete documentation to let developers and integrators collect the live anonymous audience and trafic information that the VidiReports software generates in real time.

For every detected and tracked person, VidiReports will broadcast a number of low-level information on a socket port:

  • the anonymous ID of the viewer (during the viewing session)
  • the cumulated attention time and dwell time
  • the number of glances
  • the position and distance to the camera
And optionally, since VidiReports 6.4, and only on the websocket:
  • The orientation of the face
  • Clothing color

This either happens up to 10 times per second, or once the person has left the field of view of the camera.

With this information, an integrator can easily put together a number of value-added features:

  • pick up a specific content upon some conditions (eg if an adult woman is approaching, is now within 2 meters and has been looking for more than 3 seconds, then play a specific ad; or if no person is watching, turn off the sound or screen).
  • append the audience information to a log file being written by a local software. The typical application is enriching a proof of performance file for a digital signage screen with audience data, so that it comes possible to have audience statistics by content. It could also serve to register the demographic profile of a person who has just purchased a product on a vending machine.
The documentation for the RT API protocols is available in this article.

Quividi also provides a Cloud API to the VidiCenter back-office service. With the audience and trafic data already in Quividi’s back-office, this Cloud API lets other back-office applications query that data to be displayed into their own interface.

The integrator is given an API token to authenticate queries to VidiCenter than can either be fulfilled by immediately returning:

  • the data values which feed a chart of the Charts module, eg. the values of the 7 days of an average weekly chart. Note that there must be a chart or table first created for this method to apply.
  • all of the anonymous audience or traffic records for a single day. VidiCenter will then return as many lines as there are records in the base for that day. Of course, multiple queries can be passed to cover more than a day at once.

The typical usage of the Cloud API is for an integrator to keep a unified user experience from within its own back office environment, while leveraging the solid VidiCenter platform, an in particular its data integrity and all of the interim computation.

So, in short, consider the RT API if you want to do real time applications or if you want to enrich some files you produce on the client side; and use the Cloud API of you want to just display data into your own environment.

Note that the access to both the RT API and the Cloud API requires to subscribe to the Pro or Expert version of the Quividi solution, and the signature of a specific Developer licensing agreement.

The Cloud API documentation is available on this page.