Share via

MS teams Recording Bot

Sukhdeep singh 20 Reputation points
2025-09-19T11:19:42.8566667+00:00

Hi I want to check the feasibility and recommended way to record the MS teams meeting (fully) using a Bot

Below needs should be considered:

  1. Recording should start automatically
  2. I should get the complete recoded output file after the call.

I goes through the application hosted media bots and found joining call can be handled by admin policies but the real time media only available , I don't want to handle the media, I need the complete recording file in the end of meeting like normal manual recording.

Thanks

Microsoft Teams | Development
Microsoft Teams | Development

Building, integrating, or customizing apps and workflows within Microsoft Teams using developer tools and APIs

0 comments No comments

2 answers

Sort by: Most helpful
  1. Mark Thomas 5 Reputation points
    2025-10-15T23:18:53.44+00:00

    You’re right to think that you can’t get the Teams cloud recording file during the meeting via a media bot, the media APIs only give you raw, real-time audio/video streams you’d have to stitch and store yourself. If what you want is the full meeting recording (the same one produced when someone clicks “Record” in Teams), one way to do it is through Microsoft Graph after the meeting ends.

    At a high level, like Kudos-Ng said, you’d create the meeting with recordAutomatically: true so recording starts as soon as the meeting begins. Then subscribe to change notifications so your service knows when the recording is available. Once the meeting ends, your app can use Microsoft Graph to retrieve the recording either through the Get callRecording API (if available for your meeting type) or by accessing the file directly from OneDrive/SharePoint via the Graph Files API, depending on where Teams stored it. That way, Teams handles the media pipeline for you, and you just retrieve the final recording when it’s ready.

    If you go the bot route, keep in mind that a media or ACS bot can only access raw media streams. You’d have to process and store those yourself, it won’t give you the packaged recording file automatically.

    If you’re interested in actually building this out, you can either build one from scratch (there are some tutorials on how to build a MS teams bot for transcription which you can expand to your use case) or you can check out a third-party meeting bot API if you're interested in how to build a meeting bot step-by-step without the hassle of building one yourself. Building your own can be cool for a PoC, but is honestly such a slog when it comes to keeping it current. Both are good starting points whether you’re building the bot from scratch yourself or just want automated recording.

    Was this answer helpful?

    0 comments No comments

  2. Kudos-Ng 15,050 Reputation points Microsoft External Staff Moderator
    2025-09-19T14:02:30.4933333+00:00

    Hi Sukhdeep singh,

    Thank you for posting your question in the Microsoft Q&A forum.

    Based on your description and the goals you've outlined, I’ve researched several samples and approaches that could help you achieve what you're looking for. While there isn’t a single sample that matches your needs exactly, there are a few related ones worth exploring:

    • https://github.com/Azure-Samples/acs-teams-recording
      This sample shows how to build a bot using Azure Communication Services that can automatically join Teams meetings and record high-quality audio streams. However, it does not support video or screen recording.
    • https://github.com/Meeting-BaaS/meet-teams-bot
      This bot is designed to join meetings across platforms (including Teams) and record both audio and video, including screen sharing. It’s more aligned with your end goal, though it may require additional integration effort.

    Alternative Approach via Microsoft Graph API:

    You might also want to check out this article: https://learn.microsoft.com/en-us/microsoftteams/platform/graph-api/meeting-transcripts/overview-transcripts

    This approach allows your app to:

    • Create a Teams meeting with AutoRecording=true.
    • After the meeting ends and the recording becomes available, use a webhook to get notified.
    • Automatically retrieve the recording file and transcript.

    While this method doesn’t involve a bot in the traditional sense, you can apply the same logic to your bot — letting it trigger the meeting creation and handle post-meeting recording retrieval without needing to process media streams in real time.


    If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".         

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    Was this answer helpful?


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.