Skip to content

User Activity Statistics

User activity statistic reports. Data for these reports is available from 2017-01-23 onwards.

Organization level API's

These endpoints return data aggregated in organization level.

User presence count API Quarter hour granularity

Get aggregated statistics about total count of users that have been present in given time range for whole organization. Results will be returned for each 15 minute timeslot per day in the time range. Note that timeslots where present user count is zero will be omitted to keep response smaller.

GET https://api.giosg.com/api/reporting/v1/orgs/<organization_id>/user-presence-counts/quarter-hourly?start_date=<start_date>&end_date=<end_date>

An example request

1
GET https://api.giosg.com/api/reporting/v1/orgs/b0a1d32b-e82c-11e4-b081-6c4008adf7e8/user-presence-counts/quarter-hourly?start_date=2016-09-10&end_date=2016-09-15

An example response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
{
  "organization_id": "b88ccf85-f1c3-11e6-9805-6c4008adf7e8",
  "start_date": "2017-02-13",
  "end_date": "2017-02-14",
  "max_user_count": 43,
  "average_user_count": "29.00",
  "quarter_hourly": [
    {
      "date": "2017-02-13",
      "user_count": 34,
      "minute_of_day": 0
    },
    {
      "date": "2017-02-13",
      "user_count": 43,
      "minute_of_day": 90
    },
    {
      "date": "2017-02-13",
      "user_count": 41,
      "minute_of_day": 180
    },
    {
      "date": "2017-02-14",
      "user_count": 7,
      "minute_of_day": 900
    },
    {
      "date": "2017-02-14",
      "user_count": 20,
      "minute_of_day": 915
    }
  ]
}
Attribute Type Description
organization_id ID Organization ID for which the report was generated, e.g. b0a1d32b-e82c-11e4-b081-6c4008adf7e8
start_date string Start date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-01
end_date string End date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-30
max_user_count integer Maximum number of users present during the requested time range.
average_user_count string Average number of users present during the requested time range. Takes into account only timeslots where at least one user has been present. Value is decimal number as string, eg. "45.00"
quarter_hourly array Array containing data for each 15 minute timeslot available. See object schema below.

Schema for objects in quarter hourly data list

Attribute Type Description
date string Date that this row belongs to. The value is ISO 8601 date string, e.g. 2016-01-01
user_count integer Count of unique users that were present during this hour.
minute_of_day integer Minute of the day. Integer from 0 to 1439. Note that this is in organizations timezone.

User online count API Quarter hour granularity

Get aggregated statistics about total count of users that have been online in given time range for whole organization. Results will be returned for each 15 minute timeslot per day in the time range. Note that timeslots where online user count is zero will be omitted to keep response smaller.

GET https://api.giosg.com/api/reporting/v1/orgs/<organization_id>/user-online-counts/quarter-hourly?start_date=<start_date>&end_date=<end_date>

An example request

1
GET https://api.giosg.com/api/reporting/v1/orgs/b0a1d32b-e82c-11e4-b081-6c4008adf7e8/user-online-counts/quarter-hourly?start_date=2016-09-10&end_date=2016-09-15

An example response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
{
  "organization_id": "b88ccf85-f1c3-11e6-9805-6c4008adf7e8",
  "start_date": "2017-02-13",
  "end_date": "2017-02-14",
  "max_user_count": 43,
  "average_user_count": "29.00",
  "quarter_hourly": [
    {
      "date": "2017-02-13",
      "user_count": 34,
      "minute_of_day": 0
    },
    {
      "date": "2017-02-13",
      "user_count": 43,
      "minute_of_day": 90
    },
    {
      "date": "2017-02-13",
      "user_count": 41,
      "minute_of_day": 180
    },
    {
      "date": "2017-02-14",
      "user_count": 7,
      "minute_of_day": 900
    },
    {
      "date": "2017-02-14",
      "user_count": 20,
      "minute_of_day": 915
    }
  ]
}
Attribute Type Description
organization_id ID Organization ID for which the report was generated, e.g. b0a1d32b-e82c-11e4-b081-6c4008adf7e8
start_date string Start date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-01
end_date string End date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-30
max_user_count integer Maximum number of users online during the requested time range.
average_user_count string Average number of users online during the requested time range. Takes into account only timeslots where at least one user has been online. Value is decimal number as string, eg. "45.00"
quarter_hourly array Array containing data for each 15 minute timeslot available. See object schema below.

Schema for objects in quarter hourly data list

Attribute Type Description
date string Date that this row belongs to. The value is ISO 8601 date string, e.g. 2016-01-01
user_count integer Count of unique users that were online during this hour.
minute_of_day integer Minute of the day. Integer from 0 to 1439. Note that this is in organizations timezone.

Room level API's

These endpoints return data aggregated in room level.

User presence count API

Get aggregated statistics about total count of users that have been present in given time range. Results will be returned for each hour per day in the time range. Note that hours where present user count is zero will be omitted to keep response smaller.

GET https://api.giosg.com/api/reporting/v1/rooms/<room_id>/user-presence-counts/?start_date=<start_date>&end_date=<end_date>

An example request

1
GET https://api.giosg.com/api/reporting/v1/rooms/b0a1d32b-e82c-11e4-b081-6c4008adf7e8/user-presence-counts/?start_date=2016-09-10&end_date=2016-09-15

An example response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
{
  "room_id": "b88ccf85-f1c3-11e6-9805-6c4008adf7e8",
  "start_date": "2017-02-13",
  "end_date": "2017-02-14",
  "max_user_count": 43,
  "average_user_count": "29.00",
  "hourly": [
    {
      "date": "2017-02-13",
      "user_count": 34,
      "hour_of_day": 2
    },
    {
      "date": "2017-02-13",
      "user_count": 43,
      "hour_of_day": 9
    },
    {
      "date": "2017-02-13",
      "user_count": 41,
      "hour_of_day": 18
    },
    {
      "date": "2017-02-14",
      "user_count": 7,
      "hour_of_day": 9
    },
    {
      "date": "2017-02-14",
      "user_count": 20,
      "hour_of_day": 22
    }
  ]
}
Attribute Type Description
room_id ID Room ID for which the report was generated, e.g. b0a1d32b-e82c-11e4-b081-6c4008adf7e8
start_date string Start date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-01
end_date string End date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-30
max_user_count integer Maximum number of users present during the requested time range.
average_user_count string Average number of users present during the requested time range. Takes into account only hours where at least one user has been present. Value is decimal number as string, eg. "45.00"
hourly array Array containing data for each hour available. See object schema below.

Schema for objects in hourly data list

Attribute Type Description
date string Date that this row belongs to. The value is ISO 8601 date string, e.g. 2016-01-01
user_count integer Count of unique users that were present during this hour.
hour_of_day integer Hour of the day. Integer from 0 to 23. Note that this is in companys timezone.

Quarter hour granularity

Data presented in 15 minute timeslots.

GET https://api.giosg.com/api/reporting/v1/rooms/<room_id>/user-presence-counts/quarter-hourly?start_date=<start_date>&end_date=<end_date>

An example request

1
GET https://api.giosg.com/api/reporting/v1/rooms/b0a1d32b-e82c-11e4-b081-6c4008adf7e8/user-presence-counts/quarter-hourly?start_date=2016-09-10&end_date=2016-09-15

An example response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
{
  "room_id": "b88ccf85-f1c3-11e6-9805-6c4008adf7e8",
  "start_date": "2017-02-13",
  "end_date": "2017-02-14",
  "max_user_count": 43,
  "average_user_count": "29.00",
  "quarter_hourly": [
    {
      "date": "2017-02-13",
      "user_count": 34,
      "minute_of_day": 0
    },
    {
      "date": "2017-02-13",
      "user_count": 43,
      "minute_of_day": 90
    },
    {
      "date": "2017-02-13",
      "user_count": 41,
      "minute_of_day": 180
    },
    {
      "date": "2017-02-14",
      "user_count": 7,
      "minute_of_day": 900
    },
    {
      "date": "2017-02-14",
      "user_count": 20,
      "minute_of_day": 915
    }
  ]
}
Attribute Type Description
room_id ID Room ID for which the report was generated, e.g. b0a1d32b-e82c-11e4-b081-6c4008adf7e8
start_date string Start date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-01
end_date string End date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-30
max_user_count integer Maximum number of users present during the requested time range.
average_user_count string Average number of users present during the requested time range. Takes into account only timeslots where at least one user has been present. Value is decimal number as string, eg. "45.00"
quarter_hourly array Array containing data for each 15 minute timeslot available. See object schema below.

Schema for objects in quarter hourly data list

Attribute Type Description
date string Date that this row belongs to. The value is ISO 8601 date string, e.g. 2016-01-01
user_count integer Count of unique users that were present during this hour.
minute_of_day integer Minute of the day. Integer from 0 to 1439. Note that this is in organizations timezone.

User online count API

Get aggregated statistics about total count of users that have been online in given time range. Results will be returned for each hour per day in the time range. Note that hours where online user count is zero will be omitted to keep response smaller.

GET https://api.giosg.com/api/reporting/v1/rooms/<room_id>/user-online-counts/?start_date=<start_date>&end_date=<end_date>

An example request

1
GET https://api.giosg.com/api/reporting/v1/rooms/b0a1d32b-e82c-11e4-b081-6c4008adf7e8/user-online-counts/?start_date=2016-09-10&end_date=2016-09-15

An example response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
{
  "room_id": "b88ccf85-f1c3-11e6-9805-6c4008adf7e8",
  "start_date": "2017-02-13",
  "end_date": "2017-02-14",
  "max_user_count": 43,
  "average_user_count": "29.00",
  "hourly": [
    {
      "date": "2017-02-13",
      "user_count": 34,
      "hour_of_day": 2
    },
    {
      "date": "2017-02-13",
      "user_count": 43,
      "hour_of_day": 9
    },
    {
      "date": "2017-02-13",
      "user_count": 41,
      "hour_of_day": 18
    },
    {
      "date": "2017-02-14",
      "user_count": 7,
      "hour_of_day": 9
    },
    {
      "date": "2017-02-14",
      "user_count": 20,
      "hour_of_day": 22
    }
  ]
}
Attribute Type Description
room_id ID Room ID for which the report was generated, e.g. b0a1d32b-e82c-11e4-b081-6c4008adf7e8
start_date string Start date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-01
end_date string End date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-30
max_user_count integer Maximum number of users online during the requested time range.
average_user_count string Average number of users online during the requested time range. Takes into account only hours where at least one user has been online. Value is decimal number as string, eg. "45.00"
hourly array Array containing data for each hour available. See object schema below.

Schema for objects in hourly data list

Attribute Type Description
date string Date that this row belongs to. The value is ISO 8601 date string, e.g. 2016-01-01
user_count integer Count of unique users that were online during this hour.
hour_of_day integer Hour of the day. Integer from 0 to 23. Note that this is in companys timezone.

Quarter hour granularity

Data presented in 15 minute timeslots.

GET https://api.giosg.com/api/reporting/v1/rooms/<room_id>/user-online-counts/quarter-hourly?start_date=<start_date>&end_date=<end_date>

An example request

1
GET https://api.giosg.com/api/reporting/v1/rooms/b0a1d32b-e82c-11e4-b081-6c4008adf7e8/user-online-counts/quarter-hourly?start_date=2016-09-10&end_date=2016-09-15

An example response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
{
  "room_id": "b88ccf85-f1c3-11e6-9805-6c4008adf7e8",
  "start_date": "2017-02-13",
  "end_date": "2017-02-14",
  "max_user_count": 43,
  "average_user_count": "29.00",
  "quarter_hourly": [
    {
      "date": "2017-02-13",
      "user_count": 34,
      "minute_of_day": 0
    },
    {
      "date": "2017-02-13",
      "user_count": 43,
      "minute_of_day": 90
    },
    {
      "date": "2017-02-13",
      "user_count": 41,
      "minute_of_day": 180
    },
    {
      "date": "2017-02-14",
      "user_count": 7,
      "minute_of_day": 900
    },
    {
      "date": "2017-02-14",
      "user_count": 20,
      "minute_of_day": 915
    }
  ]
}
Attribute Type Description
room_id ID Room ID for which the report was generated, e.g. b0a1d32b-e82c-11e4-b081-6c4008adf7e8
start_date string Start date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-01
end_date string End date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-30
max_user_count integer Maximum number of users online during the requested time range.
average_user_count string Average number of users online during the requested time range. Takes into account only timeslots where at least one user has been online. Value is decimal number as string, eg. "45.00"
quarter_hourly array Array containing data for each 15 minute timeslot available. See object schema below.

Schema for objects in quarter hourly data list

Attribute Type Description
date string Date that this row belongs to. The value is ISO 8601 date string, e.g. 2016-01-01
user_count integer Count of unique users that were online during this hour.
minute_of_day integer Minute of the day. Integer from 0 to 1439. Note that this is in organizations timezone.

User presence times API

Get aggregated statistics about total user presence time in given time range. Results will be returned for each user seen in given day in the time range. Note that users that were not seen in any given day will be omitted to keep response smaller.

GET https://api.giosg.com/api/reporting/v1/rooms/<room_id>/user-presence-times/?start_date=<start_date>&end_date=<end_date>

An example request

1
GET https://api.giosg.com/api/reporting/v1/rooms/b88ccf85-f1c3-11e6-9805-6c4008adf7e8/user-presence-times/?start_date=2017-01-10&end_date=2017-01-12

An example response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{
  "room_id": "b88ccf85-f1c3-11e6-9805-6c4008adf7e8",
  "start_date": "2017-01-10",
  "end_date": "2017-01-12",
  "max_seconds": 430,
  "average_seconds": "386.33",
  "by_date": [
    {
      "seconds": 430,
      "user_id": "1be552ea-eb89-4723-a9c6-7bef1c698d29",
      "date": "2017-01-10"
    },
    {
      "seconds": 366,
      "user_id": "20126833-f43d-11e6-b3ec-6c4008adf7e8",
      "date": "2017-01-10"
    },
    {
      "seconds": 363,
      "user_id": "d1bc1b54-f434-11e6-b929-6c4008adf7e8",
      "date": "2017-01-12"
    }
  ]
}
Attribute Type Description
room_id ID Room ID for which the report was generated, e.g. b0a1d32b-e82c-11e4-b081-6c4008adf7e8
start_date string Start date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-01
end_date string End date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-30
max_seconds integer Maximum seconds any single user was present during requested time range.
average_seconds string Average seconds users were present during requested time range. Value is decimal number as string, eg. "45.00"
by_date array Array containing data by date. This will contain objects for each day and unique user for that day in requested time range. See schema below.

Daily data object

Each daily data object will contain data for single user that was present during that day. Note that if user was not present during that day then there wont be object for that user id.

Schema for daily data object

Attribute Type Description
date string Date of this data row. The value is ISO 8601 date string, e.g. 2016-01-01
user_id ID User ID, e.g. b0a1d32b-e82c-11e4-b081-6c4008adf7e8
seconds integer Total seconds this user was present during the day.

User online times API

Get aggregated statistics about total user online time in given time range. Results will be returned for each user that has been online in given day in the time range. Note that users that were not online in any given day will be omitted to keep response smaller.

GET https://api.giosg.com/api/reporting/v1/rooms/<room_id>/user-online-times/?start_date=<start_date>&end_date=<end_date>

An example request

1
GET https://api.giosg.com/api/reporting/v1/rooms/b88ccf85-f1c3-11e6-9805-6c4008adf7e8/user-online-times/?start_date=2017-01-10&end_date=2017-01-12

An example response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{
  "room_id": "b88ccf85-f1c3-11e6-9805-6c4008adf7e8",
  "start_date": "2017-01-10",
  "end_date": "2017-01-12",
  "max_seconds": 430,
  "average_seconds": "386.33",
  "by_date": [
    {
      "seconds": 430,
      "user_id": "1be552ea-eb89-4723-a9c6-7bef1c698d29",
      "date": "2017-01-10"
    },
    {
      "seconds": 366,
      "user_id": "20126833-f43d-11e6-b3ec-6c4008adf7e8",
      "date": "2017-01-10"
    },
    {
      "seconds": 363,
      "user_id": "d1bc1b54-f434-11e6-b929-6c4008adf7e8",
      "date": "2017-01-12"
    }
  ]
}
Attribute Type Description
room_id ID Room ID for which the report was generated, e.g. b0a1d32b-e82c-11e4-b081-6c4008adf7e8
start_date string Start date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-01
end_date string End date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-30
max_seconds integer Maximum seconds any single user was online during requested time range.
average_seconds string Average seconds users were online during requested time range. Value is decimal number as string, eg. "45.00"
by_date array Array containing data by date. This will contain objects for each day and unique user for that day in requested time range. See schema below.

Daily data object

Each daily data object will contain data for single user that was online during that day. Note that if user was not online during that day then there wont be object for that user id.

Schema for daily data object

Attribute Type Description
date string Date of this data row. The value is ISO 8601 date string, e.g. 2016-01-01
user_id ID User ID, e.g. b0a1d32b-e82c-11e4-b081-6c4008adf7e8
seconds integer Total seconds this user was online during the day.

Room online times API

Get statistics about room online time in given time range. Room online time means time when there was at least one user online on that room. Results will be returned for each day for given date range that there was online time. Note that days when there wasn't online time will be omitted to keep response smaller.

GET https://api.giosg.com/api/reporting/v1/rooms/<room_id>/room-online-times/?start_date=<start_date>&end_date=<end_date>

An example request

1
GET https://api.giosg.com/api/reporting/v1/rooms/b88ccf85-f1c3-11e6-9805-6c4008adf7e8/room-online-times/?start_date=2017-01-10&end_date=2017-01-12

An example response

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
{
  "room_id": "b88ccf85-f1c3-11e6-9805-6c4008adf7e8",
  "start_date": "2017-12-12",
  "end_date": "2017-12-15",
  "total_online_seconds": 63429,
  "average_seconds_per_day": "15857.00",
  "average_seconds_per_day_when_online": "21143.00",
  "by_date": [
    {
      "online_seconds": 45000,
      "date": "2017-12-12",
      "ranges": [
        {
          "start": 12000,
          "end": 13000
        },
        {
          "start": 22000,
          "end": 56000
        },
        {
          "start": 66000,
          "end": 76000
        }
      ]
    },
    {
      "online_seconds": 2000,
      "date": "2017-12-14",
      "ranges": [
        {
          "start": 11000,
          "end": 13000
        }
      ]
    },
    {
      "online_seconds": 16429,
      "date": "2017-12-15",
      "ranges": [
        {
          "start": 104,
          "end": 11533
        },
        {
          "start": 15000,
          "end": 20000
        }
      ]
    }
  ]
}
Attribute Type Description
room_id ID Room ID for which the report was generated, e.g. b0a1d32b-e82c-11e4-b081-6c4008adf7e8
start_date string Start date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-01
end_date string End date of time range used to get the statistics. The value is ISO 8601 date string, e.g. 2016-01-30
total_online_seconds integer Total seconds room was online during requested time range.
average_seconds_per_day string Average seconds room was online during requested time range. Value is decimal number as string, eg. "15857.00". Value is calculated by dividing total_online_seconds with total days in requested range.
average_seconds_per_day_when_online string Average seconds room was online during requested time range taking into account only those days when there was some online time. Value is decimal number as string, eg. "15857.00". Value is calculated by dividing total_online_seconds with count of those days that had some online time in requested range.
by_date array Array containing data by date. This will contain objects for each day in requested time range. See schema below.

Daily data object

Each daily data object will contain data for single day. Note that if no users were online during some of the days in range then there wont be object for that day.

Schema for daily data object

Attribute Type Description
date string Date of this data row. The value is ISO 8601 date string, e.g. 2016-01-01
online_seconds integer Total seconds room was online during the day.
ranges array List of objects describing time ranges when room was online during that day. Each object will have start and end attributes. Those attributes describe the second of day when this range started and ended.