MS Teams - Privacy Documentation

Data Starmind has access to

The connector authenticates over OAuth with a technical user. More details are available in the documentation of MS-Graph (https://docs.microsoft.com/en-us/graph/auth/auth-concepts?view=graph-rest-beta).

We request the following scope for the application as delegated permissions:

📘

Permission Type

The MS Teams Connector uses "Delegated permission"

ScopeDescription
offline_accesAllows the app to read and update user data, even when they are not currently using the app.
Group.Read.AllAllows the app to list groups and to read their properties and all group memberships on behalf of the technical user. It also allows the app to read calendars, conversations, files, and other group content for all groups the technical user can access.
Directory.Read.AllAllows the app to read data in your organization's directory, such as users, groups, and apps. Note: Users may consent to applications that require this permission if the application is registered in their own organization’s tenant.
User.Read.AllAllows the app to read the full set of profile properties, reports, and managers of other users in your organization, on behalf of the signed-in user.
ChannelMessage.Read.AllAllows the app to read all channel messages in Microsoft Teams, without a signed-in user.

Source: https://docs.microsoft.com/en-us/graph/permissions-reference

In addition to the scopes, the API restricts access to groups. The connector has only access to groups where the configured technical us is a member (enforced by the MS Teams API). This gives the customer limit access to the groups which are relevant for the connector.

Sequence Diagram

The sequence diagram below shows which requests Starmind makes to MS Teams. In the subchapters, there are more details for each request to MS Teams. The ID is corresponding with the number in the diagram.

The data which is used by the connector (listed in the tables in the chapters below) is not stored permanently. Some of the data points are not used on the connector level but are sent to Starmind. These data points have an “X” in the column Starmind. Starmind uses them to extract expertise topics from the data and assign them to the corresponding users. The expertise topics are stored permanently.

711

List all Users

Get all the users from MS Teams. Starmind requires the email address as an identifier for the user.

ID1
EndpointGET /v1.0/users
Query Parameter$select=id, mail
Documentationhttps://docs.microsoft.com/en-us/graph/api/user-list?view=graph-rest-1.0&tabs=http

Response

The list below includes all attributes which we are reading from the API.

FieldExampleDescriptionStarmind
mail[email protected]Send as an identifier for the user to Starmind.x
id0343a31e-0953-43b0-b235-4d1610191a37Used in the connector to identify the user.

List all Teams which are accessible for the technical user

Get all teams that are available to the technical user.

Response

The documentation of Microsoft shows all attributes which are returned by the endpoint: https://docs.microsoft.com/en-us/graph/api/resources/group?view=graph-rest-1.0.

The list below shows which of the returned attributes are used by the connector or Starmind.

FieldExampleDescriptionStarmind
id1e3f4780-416d-45af-86ad-9101eb1c0d9aRequired to call the List Team Channel Endpoint
visibilitypublicCheck if the group is private or public.
displayNameStarmind-internalThe log file shows the name of the team.

Get all team channels

For one team, Starmind gets all channels within that team.

ID3
EndpointGET/v1.0/teams/{team_id}/channels
Documentationhttps://docs.microsoft.com/en-us/graph/api/channel-list?view=graph-rest-1.0&tabs=http

Response

The documentation of Microsoft shows all attributes which the endpoint:https://docs.microsoft.com/en-us/graph/api/resources/channel?view=graph-rest-1.0 returns.

The list below shows which of the returned attributes are used by the connector or Starmind.

Get new messages from channels

Starmind reads all new messages from a channel. Included are only channels accessible to the technical user.

ID4
EndpointGET /beta/teams/{team_id}/channels/{channel_id}/messages
Documentationhttps://docs.microsoft.com/en-us/graph/api/channel-list-messages?view=graph-rest-beta&tabs=http

Response

The documentation of Microsoft shows all attributes which the endpoint:https://docs.microsoft.com/en-us/graph/api/resources/chatmessage?view=graph-rest-beta returns.

The list below shows which of the returned attributes are used by the connector or Starmind.

FieldExampleDescriptionStarmind
body.contentAdded a new ...The message the user posed into the chatx
mentions.user.id56939e06-660c-4201-a885-991d218d5b50To identify the mentioned users in messages.
from.user.id56939e06-660c-4201-a885-991d218d5b50To identify the user who wrote the message.
createdDateTime2020-04-16T05:07:52.772ZThe creation date of the message is stored in Starmind to identify the actuality of the knowledge.x