Can xMatters write to a OneNote doc on Sharepoint?

Not Yet Reviewed

While working through the design of a MIM process using xMatters, we came across a question:

Is there anyway xMatters is able to write a OneNote doc on a sharepoint site? My thought is we need to define the Sharepoint site and specifically the OneNote doc name as an Endpoint (if possible) then define what gets posted to it through a switch that deciphers content. 

This is constantly refreshing OneNote doc is how we currently keep our  Management Team up to date with our critical events.



Date Votes

Please sign in to leave a comment.

  • Hi Mark,

    When looking at any integration like this with xMatters, the first thing to consider is whether or not there is a REST API that can do this. While I have not heard of anyone doing this specifically yet, I did look up some options and it seems that using Microsoft Graphs in conjunction with OneNote this could be possible via REST calls:

    Now if you can find a way to use CURL or PostMan or some outside way to connect to this endpoint successfully to update your OneNote document, you should be able to get xMatters to do the same thing via Flow Designer's custom steps. You need to craft a payload that will get the information you want to pass along (whether it's a comment someone put in a response, or a delivery status update or whatever it is you want to add) and add that to the POST body of the call then as you said have an endpoint crafted (or at least a base endpoint) and make sure to send the POST request to that plus whatever identifier is used for that OneNote document.

    Let us know if this is a good starting point and if you have any pointed questions to follow up with.

    Happy Monday!

  • Hi Mark,

    I know you said OneNote, but please consider using teams as your MIM end point. xMatters has a prebuilt teams connector. Another possible solution would be if you have PowerApps. Just have xM dump out an email to a specific mail box and power apps will do the rest.

  • Hi everyone,

    This is a great use of our community!  It would be great if you post some of the solutions you come up with (or are using). It will help others and maybe event help you.

    The xMatters team will of course chime in and help as much as we can.

    Happy integrating!


  • Hi Bob, 

    Thank you for the recommendation. We are indeed using Teams as an endpoint. The plan is to either create a new channel for every Major Incident or possibly have 1 channel per week/month/quarter and have xMatters initiate a new conversation on the existing channel for each Major Incident. As the event progresses, we want to post limited communication (not every chat comment) to a Sharepoint OneNote for our management team to keep up to date with pertinent information only. We are looking at possibly creating a Teams message content trigger such as "MIM:" to identify chat messages we want to be forwarded to the shared OneNote. 

    I am interested in any/all ideas or recommendations you guys may have, thanks in advance!


  • There is an app for OneNote in teams. But why not just use teams to provide the condensed version? Our volume maybe a lot different than yours, we create a Team/Channel per MIM. It makes it easier to "Archive" by simply removing access to the team. However if you are generating a lot of MIMs then your approach would perhaps work better from an organizational stand point. Though teams does have good search capabilities.

  • Hey guys,

        Here is the API doc for creating a "page". I think this is what you will need, but post back if that's the wrong entity. I don't use OneNote, so Notebooks, sections, and pages? Anyway, the thing to note there is the Permissions. Currently our "Microsoft Graph API" Endpoint requests the following OAuth scopes (as doc'd here):

    • ChannelMessage.Read.All
    • Directory.ReadWrite.All
    • Group.ReadWrite.All
    • offline_access
    • OnlineMeetings.ReadWrite
    • Openid
    • Profile
    • User.Read

    This means the current endpoint as is won't be able to make the requests to OneNote. :(

    What this means is you will need to build a lot more yourself. At a high level:

    1. Create a new App in the Azure portal (notes here)
    2. Go through Authorization and Authentication steps here.
    3. That should get you an access token with the right permissions. Now, create a custom step to make the call to create a page.
    4. Then drop the step on your canvas and hook it up!

    This can be a fair bit of work, so I would encourage Bob's suggestion, or even the Power Automate might be a good idea. I put this together in 15 minutes. (Using a "Request" trigger):


    I'll see about harassing the PMs about expanding the permissions set, but there are a lot of permissions in Azure and they all come with a cost in terms of answering security questions on why we need them. 

    But hopefully these can get you running in the mean time. 

    Happy Wednesday!


Didn't find what you were looking for?

New post