MS Teams - Technical Details

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.

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