Microsoft Graph

Entities map to Graph paths (e.g. teams, channels, team with team_id) via the static Map in MicrosoftTeamsDataSource.cs. Configure base URL to the Graph host and supply authorization per Azure AD app registration.

Source & IDataSource

Implementation: Connectors/Communication/MicrosoftTeamsDataSource/MicrosoftTeamsDataSource.cs — MicrosoftTeamsDataSource : WebAPIDataSource. Commands use GetEntityAsync with keys such as teams, channels, chats; filters carry team_id, channel_id, etc., per the static map in source.

Command methods (CommandAttribute)

NameMethodReturnsObjectType
GetTeamsGetTeams(List<AppFilter> filters = null)Task<IEnumerable<TeamsTeam>>TeamsTeam
GetTeamGetTeam(List<AppFilter> filters = null)Task<IEnumerable<TeamsTeam>>TeamsTeam
GetChannelsGetChannels(List<AppFilter> filters = null)Task<IEnumerable<TeamsChannel>>TeamsChannel
GetChannelGetChannel(List<AppFilter> filters = null)Task<IEnumerable<TeamsChannel>>TeamsChannel
GetChannelMessagesGetChannelMessages(List<AppFilter> filters = null)Task<IEnumerable<TeamsMessage>>TeamsMessage
GetChannelMessageGetChannelMessage(List<AppFilter> filters = null)Task<IEnumerable<TeamsMessage>>TeamsMessage
GetTeamMembersGetTeamMembers(List<AppFilter> filters = null)Task<IEnumerable<TeamsTeamMember>>TeamsTeamMember
GetChatsGetChats(List<AppFilter> filters = null)Task<IEnumerable<TeamsChat>>TeamsChat
GetChatGetChat(List<AppFilter> filters = null)Task<IEnumerable<TeamsChat>>TeamsChat
GetChatMessagesGetChatMessages(List<AppFilter> filters = null)Task<IEnumerable<TeamsMessage>>TeamsMessage
GetUsersGetUsers(List<AppFilter> filters = null)Task<IEnumerable<TeamsUser>>TeamsUser
GetMeGetMe(List<AppFilter> filters = null)Task<IEnumerable<TeamsUser>>TeamsMe
GetMyJoinedTeamsGetMyJoinedTeams(List<AppFilter> filters = null)Task<IEnumerable<TeamsTeam>>TeamsJoinedTeam
GetMyChatsGetMyChats(List<AppFilter> filters = null)Task<IEnumerable<TeamsChat>>TeamsMeChat
GetAppsGetApps(List<AppFilter> filters = null)Task<IEnumerable<TeamsApp>>TeamsApp
CreateMessageAsyncCreateMessageAsync(TeamsMessage message)Task<IEnumerable<TeamsMessage>>TeamsMessage
CreateChannelAsyncCreateChannelAsync(TeamsChannel channel)Task<IEnumerable<TeamsChannel>>TeamsChannel
CreateTeamAsyncCreateTeamAsync(TeamsTeam team)Task<IEnumerable<TeamsTeam>>TeamsTeam
UpdateTeamAsyncUpdateTeamAsync(TeamsTeam team)Task<IEnumerable<TeamsTeam>>TeamsTeam
CreateChatAsyncCreateChatAsync(TeamsChat chat)Task<IEnumerable<TeamsChat>>TeamsChat
UpdateChannelAsyncUpdateChannelAsync(TeamsChannel channel)Task<IEnumerable<TeamsChannel>>TeamsChannel
UpdateMessageAsyncUpdateMessageAsync(TeamsMessage message)Task<IEnumerable<TeamsMessage>>TeamsMessage
UpdateChatAsyncUpdateChatAsync(TeamsChat chat)Task<IEnumerable<TeamsChat>>TeamsChat

Model types

TheTechIdea.Beep.Connectors.Communication.MicrosoftTeams.Models — TeamsTeam, TeamsChannel, TeamsMessage, TeamsChat, TeamsUser, TeamsTeamMember, TeamsApp, TeamsApplication, TeamsBody, TeamsFrom, and related Graph-shaped DTOs in Models.cs.

Connection

Source comments: set WebAPIConnectionProperties.Url to the Microsoft Graph base URL and set the Authorization header (delegated or application permissions per your scenario). See ConnectionProperties.

Also read