Pages Menu
TwitterRssFacebook

Posted by on Dec 2, 2024 in Microsoft 365 Copilot

There’s a new Microsoft Graph endpoint for viewing user’s Copilot interactions

There’s a new Microsoft Graph endpoint for viewing user’s Copilot interactions

A new Microsoft Graph endpoint showed up last week, called Get all enterprise interactions.

The current description for this (which might well change by the time you read this, as descriptions often get updated after the initial add to the documentation) is:

Get all Microsoft 365 Copilot interaction data, including user prompts to Copilot and Copilot responses. This API captures the user intent, the resources accessed by Copilot, and the response to the user for Microsoft 365 apps such as Teams, Word, and Outlook.

https://learn.microsoft.com/en-us/graph/api/aiInteractionHistory-getAllEnterpriseInteractions

This API call is on a new Graph endpoint, /copilot. There isn’t much else on this endpoint at the moment, only the Limited Mode toggle for Microsoft Teams meetings.

Who can see this, and what can they see?

This is a good reminder for everyone that it’s not your Copilot, it’s your companies Copilot. If you have enough permissions then you can see every user’s interactions with Copilot, and for some organisations I imagine that this information will be used in disputes, complaints, and reviews. If this was news to you then it may change how you choose to use Copilot going forward 🙂

This API call can only be run using Application permissions, not User Delegated ones. The application will need the AiEnterpriseInteraction.Read.All permission. There is a date filter to scope requests (because this API returns interactions from all the way back when Copilot first came out). For instance, to only return interactions from the 1st November to the end of the year, I could do this:

https://graph.microsoft.com/beta/copilot/users/{MY USER ID}/interactionHistory/getAllEnterpriseInteractions?$filter=createdDateTime gt 2024-11-01T00:00:00Z and createdDateTime lt 2025-01-01T00:00:00Z

The response data includes both the replies from Copilot and any associated context, in the forms of files, adaptive cards etc. Data is included across the various different Microsoft 365 Copilots, such as in Excel, Word and Teams, not just the “BizChat” experience.

It might just have been my experience, or a known issue with this API (which is still new and in beta), but for me, only the responses to questions were shown – I never saw any user interaction messages returned. Looking at the structure of the response object, it seems that this should be supported (the interactionType property has options for both userPrompt and aiResource), but I didn’t see any userPrompt values in my data.

Wait, there’s a charge?

Interestingly, the documentation for this endpoint talks about support for model=A and model=B charging models. This is the same model used for the Microsoft Teams change notifications and bulk exports.

What’s interesting about this though is that Microsoft previously talked about charging for APIs that provided a service “above and beyond” the usual transactional APIs. Both change notifications and bulk export services provide this. However, It’s hard to see how just returning a list of interactions for a service which has already been charged for separately, is providing any additional service worthy of being included in the payment models. We will have to wait and see when this endpoint comes out of beta, because at the moment, it isn’t mentioned anywhere on the Payment models and licensing requirements for Microsoft Teams APIs – Microsoft Graph | Microsoft Learn document.

Written by Tom Morgan

Tom is a Microsoft Teams Platform developer and Microsoft MVP who has been blogging for over a decade. Find out more.
Buy the book: Building and Developing Apps & Bots for Microsoft Teams. Now available to purchase online with free updates.

Post a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.