
AXIS P8815-2 3D People Counter
API specification
List download statistics
Returns statistics stored in the camera in JSON or plain text comma separated format (CSV)
Format:
CSV or JSON
Method:
GET
Request (CSV)
http://<servername>/a3dpc/api/export/csv?start=<date>&end=<date>&resolution=<resolut
ion>
Request (JSON)
http://<servername>/a3dpc/api/export/json?start=<date>&end=<date>&resolution=<resolu
tion>
Request parameter descriptions
Return
on success: 200 OK
Returns statistics stored in the camera in JSON or plain text comma separated format (CSV).
The first line of the CSV file contains a description of each element, and the following lines
contain the corresponding data for the chosen time interval and resolution: start, end, in,
out
on error: 400 Bad Request
"message": "Validation failed",

Examples
Retrieve statistics in JSON format from the previous day in hourly intervals
http://<servername>/a3dpc/api/export/json?start=yesterday&end=today&resolution=hour
Sample output
"start": "2020-06-23 00:00:00",
"end": "2020-06-23 01:00:00",
Retrieve statistics in CSV format for the current day in minute intervals
http://<servername>/a3dpc/api/export/csv?start=today&end=now&resolution=minute
Sample output (first 10 lines)
2020-09-23 00:00:00,2020-09-23 00:01:00,0,0
2020-09-23 00:01:00,2020-09-23 00:02:00,0,0
2020-09-23 00:02:00,2020-09-23 00:03:00,0,0
2020-09-23 00:03:00,2020-09-23 00:04:00,0,0
2020-09-23 00:04:00,2020-09-23 00:05:00,0,0
2020-09-23 00:05:00,2020-09-23 00:06:00,0,0
2020-09-23 00:06:00,2020-09-23 00:07:00,0,0
2020-09-23 00:07:00,2020-09-23 00:08:00,0,0
2020-09-23 00:08:00,2020-09-23 00:09:00,0,0
Retrieve statistics in CSV format for specific date range between 2020-08-01 until today in
daily intervals
http://<servername>/a3dpc/api/export/csv?start=20200801&end=today&resolution=day

Sample output (first 10 lines)
2020-08-01 00:00:00,2020-08-02 00:00:00,0,0
2020-08-02 00:00:00,2020-08-03 00:00:00,0,0
2020-08-03 00:00:00,2020-08-04 00:00:00,0,0
2020-08-04 00:00:00,2020-08-05 00:00:00,0,0
2020-08-05 00:00:00,2020-08-06 00:00:00,0,0
2020-08-06 00:00:00,2020-08-07 00:00:00,0,0
2020-08-07 00:00:00,2020-08-08 00:00:00,0,0
2020-08-08 00:00:00,2020-08-09 00:00:00,0,0
2020-08-09 00:00:00,2020-08-10 00:00:00,0,0
Request real-time data
Returns real-time estimated occupancy and counting statistics for primary camera and
connected secondary cameras in JSON.
Note: Occupancy mode needs to be configured and enabled within the AXIS 3D People
Counter application to use this functionality.
Format:
JSON
Method:
GET
Request
http://<servername>/a3dpc/api/occupancy
Sample output
"serial":"00:40:8c:18:82:27",
"timestamp":"2020-12-03T16:28:05+01:00",
Generic data push
Pushes statistics stored in the camera in JSON format to HTTPS endpoints.
Note: The generic data push functionality is configured within the AXIS 3D People Counter
application - the endpoint URL, send time interval, and API token (optional) are all specified
from the “Reporting” section.
Format:

JSON
Method:
POST
Server Requirements:
The remote destination must be configured with HTTPS using a valid SSL/TLS
certificate which must also be installed on the Axis network camera in order to ensure
proper handshake and encryption of the data.
Send Time Intervals:
1 minute, 5 minutes, 15 minutes
API Token:
An API token can be specified for the push, and is added to a request via the HTTP
header Authorization: Bearer <token>
Sample output:
"apiName":"Axis Retail Data",
"utcSent":"2020-12-08T12:20:12Z",
"localSent":"2020-12-08T13:20:12",
"utcFrom":"2020-12-08T12:19:00Z",
"utcTo":"2020-12-08T12:20:00Z",
"localFrom":"2020-12-08T13:19:00",
"localTo":"2020-12-08T13:20:00",
"utcFrom":"2020-12-08T12:19:00Z",
"utcTo":"2020-12-08T12:20:00Z",
"localFrom":"2020-12-08T13:19:00",
"localTo":"2020-12-08T13:20:00",

"application":"AXIS 3D People Counter",
"applicationVersion":"10.3 ",
"timeZone":"Europe/Stockholm",
"name":"axis-accc8ef3d92e",
"ipAddress":"172.25.70.165"
Name of the API being utilized
Version number of the API being
utilized
UTC date and time when the data was
delivered
Local date and time when the data was
delivered
Array containing counting data
information
UTC start date and time of the counting
data
UTC end date and time of the counting
data
Local start date and time of the
counting data
Local end date and time of the counting
data
Array containing counting data
measurements
data[ ].measurements[ ].kind
Type of data provided by the Axis
network camera
data[ ].measurements[ ].utcFrom
UTC start date and time of the counting
data for specific time interval
data[ ].measurements[ ].utcTo
UTC end date and time of the counting
data for specific time interval
data[ ].measurements[ ].localFrom
Local start date and time of the
counting data for specific time
interval
data[ ].measurements[ ].localTo
Local end date and time of the counting
data for specific time interval
data[ ].measurements[ ].items
Array containing the counting data for
specific time interval
data[ ].measurements[ ].items[
].direction
Direction of the data recorded during
specific time interval – in or out
data[ ].measurements[ ].items[ ].count
Number of counts recorded during
specific time interval
data[ ].measurements[ ].items[ ].adults
Number of adult counts recorded during
specific time interval
Array containing sensor specific
information

Type of people counter application
Selected time zone for the Axis network
camera
Device name provided from the
application
Serial number of the Axis network
camera
IP address of the Axis network camera
Generic data push – Protocol version
At the time of writing, the latest protocol version is 0.3. If the data being sent does not
correspond to the description stated in this document, it is necessary to manually modify the
version of the protocol.
Format:
JSON
Method:
PATCH
http://<servername>/a3dpc/api/settings
JSON input parameters
{"push_protocol_version":"V0_X"}
Examples
Change protocol version to 0.3
{"push_protocol_version":"V0_3"}
Return
on success: 200 OK
on error: 400 Bad Request
"message": "Validation failed",
"field": "push_protocol_version",
"reason": "not a valid value"