Data Dictionary and Reporting Capabilities Usage and Governance
  • 02 Nov 2023
  • Dark
    Light
  • PDF

Data Dictionary and Reporting Capabilities Usage and Governance

  • Dark
    Light
  • PDF

Article Summary

# Teamwork Analytics Data Dictionary and Reporting Capabilities

Modality Systems Teamwork Analytics collects lots of information from various Microsoft Graph API endpoints. This document explains what data is collected and stored. It can be used to inform what reporting is possible with the solution.

If data is not listed on this page, it is not currently collected. This document also lists data we have been asked for by customers that we don't collect today and if Microsoft provides it via any API today. If you have suggestions for other data you would like to see collected/reported on, please email software.support@nasstar.com

Full Database and Power BI documentation

There is full documentation of the database here, and the Power BI model here

Reporting Capabilities

Power BI allows us to report on any combination of the below information. We can filter information by user, user attributes or teams

# Information collected and available in Teamwork Analytics Usage and Governance Reports

User Information from Azure Active Directory

Teamwork Analytics collects the following about each User from Azure Active Directory, leveraging the microsoft.graph List Users API call.

These are held in the Users Table in the database and used to filter any per-user activity.

  • UserId
  • Given Name
  • Surname
  • Job Title
  • Office Location
  • Preferred Language
  • Location
  • City
  • Country
  • Department
  • User Principal Name
  • Mail - SMTP Address
  • Is Enabled user account

These are held in the TeamsUserLicences table

  • Teams Licence Capability Status - If a user is Licensed for Teams, Enabled or Disabled

In addition, TWA pulls up to 10 custom Azure AD Attributes each customer can define. These are bespoke per customer.

Per User, Teams Usage Information (counts of activity)

Teamwork Analytics collects the following from getTeamsUserActivityUserDetail API call.

For each user with any Activity, the number of the following actions. This is solely the quantity per user of each activity for that date.
These are held in the ActivityUserDetails table and used in the Teams Usage reports

  • Team Chat Message Count
  • Private Chat Message Count
  • Call Count
  • Meeting Count
  • Has Other Action - Microsoft define this as "any other action"

These are counts per day, so for any single date we can tell what a users activity count has been for each of the above activities. It is a simple count with no detail as to audio/video start/end times or details of who was communicating with who.

Per Microsoft Teams Team Information

Teamwork Analytics collects the following from List groups API call.

For each Team in Microsoft Teams, Teamwork Analytics collects the following information.

Team Information

List of all the current Teams in the Teams table

  • Team Display Name
  • Description
  • Is Archived
  • Visibility
  • Team Created Date Time - when the Team was created

Channels in each team

Teamwork Analytics collects the following from Channel API call.

The name and description of each Channel in the Channels table

  • Display Name
  • Description

For this we have the current state/count of channels, but not change over time.

Channel Messages over time

Teamwork Analytics collects the following from Channel Messages API call.

All Channel Messages for the configured period. TWA does not hold the message content, only metadata about the message. Held in Messages table

  • Parent MessageId
  • Message Created Date Time
  • Last Modified Date Time - date message was created or modified
  • Deleted Date Time
  • Importance
  • Locale
  • ChannelId
  • TeamId
  • Number Of Gifs in the message
  • Number Of Other Images in the message
  • UserId - user that posted the message
  • AppId - the app that posted the message

Channel Message Reactions

Teamwork Analytics collects the following from Reactions API call.

Reactions to a channel message, such as thumbs up and smiley face. Held in the Reactions table

  • MessageId
  • UserId
  • Reaction Type
  • Created Date Time

Channel Message @ Mentions

Teamwork Analytics collects the following from Mentions API call.

Mentions within channel Messages. In the Mentions table

  • MessageId
  • Mentioned UserId
  • Mentioned AppId
  • Mentioned ChannelId
  • Mention Text
  • TeamId
  • ChannelId

Channel Message Attached files/content

Teamwork Analytics collects the following from chat attachments API call.

This is any content attached to a channel message. Held in Attachments table.

  • Content Type
  • Content Url
  • Name
  • Thumbnail Url
  • MessageId

Apps installed in each Team - Current state

Teamwork Analytics collects the following from Apps API call.

Any Apps are held in the Apps table.

  • Name
  • Version Number

Files in each Team - Current state

Teamwork Analytics collects the following from Files API call.

Details of Files in Each Team (in the SharePoint site associated with the Team). Held in the DriveItems table

  • FileID
  • Creator Email
  • File Mime Type
  • Created Date Time
  • Last Modified Date Time

# Data not available from Microsoft Graph
The following data has been asked for but is not currently available from Microsoft Graph.

  • Messages read (count or date time)
  • Clicks on Tabs/clicks into Apps from Tabs
  • Usage time of specific apps
  • Buttons client in the client
  • Links clicked/followed in messages
  • Number of federated messages
  • Split of number of PSTN calls and number of VoIP calls - it's a single call count

Was this article helpful?