meetings
235 TopicsMicrosoft Graph - List apps in chat - 404 UnknownError
In Microsoft Graph, I would like to list all Teams apps associated to an onlineMeeting (to its chat actually). According to List apps in chat - Microsoft Graph v1.0 | Microsoft Learn, this is supported with the following request : GET /chats/{chat-id}/installedApps There is a note saying that if the chat is associated with an onlineMeeting instance, then, effectively, the teamsApps installed in the meeting will be listed. That should work. However, I'm getting a 404 with UnknownError as the error.code on my end. The right permission (TeamsAppInstallation.ReadWriteForChat) is granted (Chat.ReadWrite is granted as well). Testing from Graph Explorer from now. Please note that the following is working to get chat messages with the same chat-id : GET /chats/{chat-id}/messages or the following to get chat members : GET /chats/{chat-id}/members I've tried the endpoint POST /chats/{chat-id}/installedApps to add an app to the chat as well but I'm getting the same kind of 404 (documented on Add app to chat - Microsoft Graph v1.0 | Microsoft Learn). Any advice? Thanks56Views0likes3CommentsSince Aug 22nd we can't save any Side Panel tabs
Hello! Yesterday (Aug 22nd 2025) we got an update in our Teams Links that we normally share to start meetings. They were modified from this format: https://teams.microsoft.com/l/meetup-join/19%3ameeting_XXXXXXXXXXXXXXX%40thread.v2/0?context=%7b%22Tid%22%3a%22xxxxxxxxxxxx%22%2c%22Oid%22%3a%22xxxxxxxxxxxxxx%22%7d to https://teams.microsoft.com/meet/00000000000?p=XXXXXXXXX Sensitive values and ids have been redacted above and inside all the snippets in this post. This looks like a planned rollout, as specified here: https://mc.merill.net/message/MC772556 After this change, none of our apps are able to save a side panel into any of the meetings with the new link format. We had a couple of older, still available meetings whose link had the previous format, and we are able to save the side panel there, but no matter what we tried, nothing allowed us to solve this situation on our end. My final resort is this post in hopes of a solution to what we see. Each save operation yields a 500 on this call https://teams.microsoft.com/api/chatsvc/amer/v1/threads/19%3Ameeting_XXXXXXXXXXXXXXXXXX%40thread.v2/properties?name=tab%3A%3Axxxxxxxxxxxxxxxx { "errorCode": 500, "message": "{\"subCode\":\"TabOperationFailed\",\"details\":\"Initiator 8:orgid:xxxxxxxxxxxxxx failed perform tab operation\",\"errorCode\":1500,\"errorSubCode\":null}", "standardizedError": { "errorCode": 1500, "errorSubCode": 1, "errorDescription": "TabOperationFailed-Initiator 8:orgid:xxxxxxxxxxxxxx failed perform tab operation" } } I ended up trying to manually install it with graph api calls, which didn't work either and gave me a 502 curl -s -X POST "https://graph.microsoft.com/v1.0/chats/$CHAT_ID/tabs" \ -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" \ -d '{ "displayName": "DisplayName", "email address removed for privacy reasons": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/'"$TEAMS_APP_ID"'", "configuration": { "entityId": "entity-random", "contentUrl": "https://<domain>/?theme={theme}&locale={locale}", "websiteUrl": "https://<domain>/" } }' | jq . { "error": { "code": "BadGateway", "message": "Failed to execute backend request.", "innerError": { "date": "2025-08-22T03:36:08", "request-id": "b4bbade7-1ea2-46df-a1d9-92cdda9e360b", "client-request-id": "b4bbade7-1ea2-46df-a1d9-92cdda9e360b" } } } Then, thinking there was something wrong with my app, I used a MS app, same result curl -s -X POST "https://graph.microsoft.com/v1.0/chats/$CHAT_ID/tabs" \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "displayName": "Website - test", "email address removed for privacy reasons": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/com.microsoft.teamspace.tab.web", "configuration": { "entityId": null, "contentUrl": "https://www.microsoft.com", "websiteUrl": "https://www.microsoft.com" } }' | jq . { "error": { "code": "BadGateway", "message": "Failed to execute backend request.", "innerError": { "date": "2025-08-22T04:02:36", "request-id": "ece5590e-f23f-4780-a4a6-20c1b2f0d0f3", "client-request-id": "ece5590e-f23f-4780-a4a6-20c1b2f0d0f3" } } } I then tested it against chats that do not belong to a meeting. Both apps succeeded curl -s -X POST "https://graph.microsoft.com/v1.0/chats/$REGULAR_CHAT_ID/tabs" \ -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" \ -d '{ "displayName": "Website - test", "email address removed for privacy reasons": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/com.microsoft.teamspace.tab.web", "configuration": { "entityId": null, "contentUrl": "https://www.microsoft.com", "websiteUrl": "https://www.microsoft.com" } }' | jq . { "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#chats('19%3xxxxxx_xxxxxxxxxxxx%40unq.gbl.spaces')/tabs/$entity", "id": "a0cca657-12d0-4df0-84d8-cc1f8fa7d3e6", "displayName": "Website - test", "webUrl": "https://teams.microsoft.com/l/chat/19%xxxxxxxxx_XXXXXXXXX%40unq.gbl.spaces/tab%3a%3xxxxxxxxxxxxxxxxxxxxxx?webUrl=https%3a%2f%2fwww.microsoft.com&label=Website+-+test&tenantId=xxxxxxxxxxxxxxxxxxx, "configuration": { "entityId": null, "contentUrl": "https://www.microsoft.com", "removeUrl": null, "websiteUrl": "https://www.microsoft.com" } } curl -s -X POST "https://graph.microsoft.com/v1.0/chats/$REGULAR_CHAT_ID/tabs" \ -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" \ -d '{ "displayName": "redacted", "email address removed for privacy reasons": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/'"$TEAMS_APP_ID"'", "configuration": { "entityId": "redacted", "contentUrl": "https://<domain>/?theme={theme}&locale={locale}", "websiteUrl": "https://<domain>/" } }' | jq . { "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#chats('19%3xxxxxxxxxxxxx_xxxxxxxxxxxxx%40unq.gbl.spaces')/tabs/$entity", "id": "xxxxxxxxxxxxxxxxxxxxxx", "displayName": "redacted", "webUrl": "https://teams.microsoft.com/l/entity/<redacted>/_djb2_msteams_prefix_000000000?webUrl=https%3a%2f%2f<domain>%2f&label=redacted+label&context=%7b%0d%0a++%22context%22%3a+%22chat%22%2c%0d%0a++%22chatId%22%3a+%2219%3axxxxxxx_xxxxxxxxx%40unq.gbl.spaces%22%2c%0d%0a++%22subEntityId%22%3a+null%0d%0a%7d&tenantId=xxxxxxxxxxxxxxxx", "configuration": { "entityId": "redacted", "contentUrl": "https://<domain>/?theme={theme}&locale={locale}", "removeUrl": null, "websiteUrl": "https://<domain>/" } } At this point we don't know what else to do, seems like a meeting specific issue that we are unable to solve. It's affecting our tenants in all environments, since our primary business flow relies on this panel. All the snippets contain real dates and request-ids, here's hoping it helps somehow. Help, and thanks in advance. ~A. del Yerro402Views4likes8CommentsAccessing Meeting Participant List via a Teams App (not a Bot)?
Hi everyone, I'm currently working on a Microsoft Teams App (not a bot), and I'm trying to figure out if it's possible to programmatically access the participant list of a meeting - either during or after the meeting - directly from within the app context. Here are my specific questions: Is it possible for a Teams app (not a bot) to access the list of meeting participants? If yes, what are the required conditions (e.g. permissions, app manifest settings, API endpoints, etc.)? Are there any restrictions regarding the app context (e.g. does it have to be running in a meeting side panel, meeting stage, etc.)? If anyone has experience with this or can clarify whether this is possible at all, I’d greatly appreciate your input! Thanks in advance, Michael160Views0likes4CommentsAccessing Meeting Participant List via a Teams App (not a Bot)?
Hi everyone, I'm currently working on a Microsoft Teams App (not a bot), and I'm trying to figure out if it's possible to programmatically access the participant list of a meeting - either during or after the meeting - directly from within the app context. Here are my specific questions: Is it possible for a Teams app (not a bot) to access the list of meeting participants? If yes, what are the required conditions (e.g. permissions, app manifest settings, API endpoints, etc.)? Are there any restrictions regarding the app context (e.g. does it have to be running in a meeting side panel, meeting stage, etc.)? If anyone has experience with this or can clarify whether this is possible at all, I’d greatly appreciate your input! Thanks in advance, Michael56Views0likes1CommentParticipant (people) pop out window for Team's Events (meeting, webinar, townhall).
It would be so helpful if you can change Team events (meeting, webinar, townhall) to allow the participant list to pop out and away from the main window. There is no way to see who's entering the event & move certain people into a breakout room. Unless you use the notifications that appears as a pop up in the top middle of the window for people joining the room, but that can cause a huge problem if they are joining the room unmuted. When doing an event that allows people to join late, and they may not know or haven't learned how to mute or turn off their camera, it can be very disrupting. It would be greatly appreciated if we could move the participant list around, so we have easy access to both the breakout room tab as well as the main room participation list. This way you would be able to see if co-organizers are in the breakout room since they don't appear on the breakout room list and you would be able to allow attendees to join and make sure you have the capability to mute them. (It would also be appreciated if you could add turn off camera since you already have the ability to mute people).53Views0likes1CommentGetting “Meeting Id is corrupted” error while trying to fetch meeting details from Graph API
Below is the screenshot of the teams context object, When we try to get the meeting details from the Graph API with the meeting id obtained from the teams context object (Refer the above screenshot), we get “Meeting Id is corrupted” error. Below is the screenshot of the Graph API request, Please let us know how to get the meeting details. Please note that we have created the meeting directly from the calendar.1.9KViews0likes11CommentsMeeting Bot issue: Did not receive valid response for JoinCall request from call modality controller
I'm trying to join a Teams Meeting with a bot. I used this https://microsoftgraph.github.io/microsoft-graph-comms-samples/docs/articles/index.html#making-an-outbound-call-to-join-an-existing-microsoft-teams-meeting sample. When the bot attempts to join I get the popup to admit or deny it in the meeting, but as soon as I click admit, it drops. In the logs I see this message: Call status updated to Terminated - Did not receive valid response for JoinCall request from call modality controller.. DiagCode: 580#5426.@ I am using the latest (1.2.0.10563 at time of writing) version of Microsoft.Graph.Communications libraries and the problem only started after I updated from 1.2.0.3742 that I was using previously. I could not find any info on what the call modality controller is, or how to check what it is responding if anything. Any ideas on how to troublshoot this are welcome.1.1KViews1like9CommentsAzure Bot working from local using teams toolkit, but not when hosted on AWS
Hi Everyone, I need help in debugging an issue I am facing while using the Azure bot on the teams channel. I have created a Teams Meeting bot using the botbuilder framework in python and tested it using the teams toolkit. It works fine using the toolkit. I also used an ngrok domain in the messaging endpoint in the configuration page of the bot and that works too. Now we took this bot logic and hosted it on AWS ECS. The api/messages endpoint is reachable through postman. But when the request comes from teams, our server just hangs and it becomes unreachable and eventually restarts. I have tried to add some logs and I am able to print the activity, auth header and the request body the teams sends to the API. I have ensured all the env variables are correct. Also, for the server to be reachable from the teams channel to AWS, we had to whitelist a few ips. Only then the server on AWS was reachable. Steps to reproduce the server restarts.: 1) I zip my manifest file and upload the custom app to a teams meeting. 2) When I add the app to the meeting, it counts as an event and teams calls the api/messages endpoint. I am able to see the logs for this event. 3) After I add the app, I open the custom app tab and the content comes up as expected. The issue starts after this step. 4) I start the meeting, teams sends an event (meetingstart) to the API and then the server just hangs. No logs are printed and then the server restarts and nothing is tracked. The bot in that meeting does not work anymore. Because when you start a meeting again, the server restarts. The same thing works fine on local and it checks for these teams events and performs the logic within that function. We are clueless on what's happening here as there are no logs either. Is there something we need to cross check when trying to host it on a server instead of running it on local using a teams toolkit.? The request gets sent to SETTINGS = BotFrameworkAdapterSettings(CONFIG.APP_ID, CONFIG.APP_PASSWORD) ADAPTER = BotFrameworkAdapter(SETTINGS) # Listen for incoming requests on /api/messages @app.post("/api/messages", response_model=None) async def messages(req: Request) -> Response: # Main bot message handler. if "application/json" in req.headers["Content-Type"]: body = await req.json() else: return Response(status_code=HTTPStatus.UNSUPPORTED_MEDIA_TYPE) activity = Activity().deserialize(body) auth_header = req.headers["Authorization"] if "Authorization" in req.headers else "" print(auth_header) response = await ADAPTER.process_activity(activity, auth_header, BOT.on_turn) if response: return JSONResponse(content=response.body, status_code=response.status) return Response(status_code=HTTPStatus.OK) It fails at line 15 I believe, as I have tried to comment the line to see if the restarts happen. It did not restart then. So the issue is clearly with line 15. Hoping for a reply from anyone. Thank you.669Views0likes4CommentsSeeking Best Practices for Performance Testing Bots in Microsoft Teams
Teams Meeting Bot This bot is automatically installed in all scheduled meetings across the organization. It interacts with the Microsoft Graph API via the 'api/messages' endpoint in the Bot Framework to retrieve meeting transcripts. These transcripts are then processed by an LLM model to generate a summarized version of the meeting. Chatbot This is a personal Teams chatbot built using the Bot Framework. It streams real-time responses from an LLM model based on user queries. We are planning a performance test for these bots. What would be the standard procedure to achieve this? Looking forward to your insights.165Views0likes2Comments