Microsoft Teams integration for Ruby AI
The Ruby AI Microsoft Teams integration subscribes to Microsoft Graph directly, so transcripts arrive the moment Microsoft finishes generating them. Ruby reads the transcript and the meeting metadata, and attaches the analysis to the right deal.
At a glance
What Ruby AI reads from Microsoft Teams | What Ruby AI writes to Microsoft Teams |
Meeting subject, start and end times, and join URL | Nothing to your data |
Transcript content, split into speaker segments | Its own Graph notification subscription, created at connect |
Participant list with display names and organizer role | Nothing |
Nothing else. Chat, recordings and attendance reports are not read | Nothing |
Why connect Microsoft Teams to Ruby AI?
Setup tells you the truth. If transcripts are not yet switched on for your Microsoft 365 account, Ruby says so while you are connecting, rather than showing Connected and then sitting empty. Your IT admin turns it on and you reconnect.
Teams meetings match to calendar events through the Outlook join URL, which is why Outlook Calendar plus Teams is the strongest Microsoft pairing.
Disconnecting deletes the Graph subscription at Microsoft, not just the row in Ruby.
How does Ruby AI use Microsoft Teams?
Ruby requests OnlineMeetingTranscript.Read.All, OnlineMeetings.Read, offline_access and User.Read, all documented in Microsoft's Graph permissions reference. On a transcript notification Ruby reads the online meeting for its subject, start and end times, join URL and participant list, then downloads the transcript content.
Microsoft's delegated flow does not expose attendee email addresses on this endpoint, so Ruby matches meetings by the normalized join URL against your Outlook calendar.
Ruby does not read Teams chat, meeting recordings, attendance reports or Teams AI recaps.
What does Ruby AI put into Microsoft Teams?
Nothing to your data. The only writes Ruby makes are to its own Graph notification subscription: creating it at connect, extending or rebuilding it when Microsoft signals it needs renewal, and deleting it at disconnect. Ruby creates no meetings, posts no messages, and modifies no transcripts.
How do I connect Microsoft Teams to Ruby AI?
In Ruby AI, go to Settings → Integrations → Microsoft Teams.
Approve
OnlineMeetingTranscript.Read.All,OnlineMeetings.Read,offline_accessandUser.Readon Microsoft's consent screen.Connect Outlook Calendar alongside it. Teams supplies no attendee emails, so the Outlook join URL is what matches a transcript to the right meeting and deal.
What can Ruby AI do with Microsoft Teams?
Transcripts push to Ruby, no polling. Ruby creates a Graph subscription for your online meeting transcripts at connect. Microsoft notifies Ruby, Ruby fetches the transcript, and the meeting appears in Ruby without anyone syncing.
Ruby waits for Microsoft to finish. The transcript is often not ready when the notification fires. Ruby retries three times, 60 seconds apart, before giving up.
The connection keeps itself alive. Microsoft expires transcript connections every three days. Ruby renews or rebuilds it whenever Microsoft asks, so nobody has to remember to reconnect.
Analysis starts automatically when the meeting is already linked to a deal on your calendar.
Frequently asked questions
What permissions does Ruby AI need in Microsoft Teams?
Four scopes: OnlineMeetingTranscript.Read.All, OnlineMeetings.Read, offline_access and User.Read. All are read-only for your data. Ruby cannot post messages, join meetings or read chat.
Does Ruby AI write anything to Microsoft Teams?
Nothing to your data. Ruby creates, renews and deletes one Graph notification subscription of its own so Microsoft knows where to send transcript alerts. No meeting, message or transcript is ever created or changed.
Why did my Teams connection fail at setup?
Almost always because Teams transcripts are not switched on for your Microsoft 365 account yet. Ruby checks during setup and refuses the connection rather than showing Connected and delivering nothing. Ask your IT admin to enable meeting transcripts, then reconnect.
Do Teams subscriptions expire?
Microsoft caps transcript subscriptions at three days. Ruby extends or rebuilds the subscription when Microsoft signals it needs renewal.
Why do I need Outlook Calendar connected as well?
Microsoft's delegated flow does not return attendee emails with the transcript. Ruby matches the meeting by its join URL, which comes from your Outlook calendar event.
Need help connecting Microsoft Teams?
View the technical guide: Microsoft Teams Integration
Open Learn Hub in the Ruby AI app for a step-by-step walkthrough, or use the support widget in the bottom-right corner of the app. You can also email the team at support@heyruby.io.
Related integrations
Outlook Calendar, which supplies the join link that matches a Teams recording to its deal
Zoom if part of your team records elsewhere
HubSpot and Salesforce, where the analysis lands