Using Azure Functions and Cognitive Services Text API to enrich a Flow that fills Metadata for new items in a Modern SharePoint Team Site. That’s, in a nutshell, the solution I submitted to a recent online hackathon. Quite a mouthful, isn’t it? The whole solution (and a public vote, if you’re interested!) is available here: https://devpost.com/software/resolving-managed-metadata-madness-in-sharepoint – this blog post will describe the solution and the reasoning behind it.
Some time ago my manager asked me to take a few weeks off, since I had accrued quite a lot of overtime during the hectic months working for Valo. I got bored quite quickly, so I was pretty happy to encounter an online hackathon organized by Devpost. I wasn’t aware of them beforehand, but they seemed to have hosted quite a few interesting hackathons before, so I thought I’d also take part into a hackathon they were just hosting: “Work smarter, not harder with Office 365.”
I’m not a huge fan of hackathons, but the topic was too good to miss, so I submitted a solution I’d been thinking about implementing, but didn’t have a good enough reason to implement it for customers.
Description of the issue
So, which issue am I aiming to solve? Let’s see…
- The amount of data is surging (~90% of the data in the world has been created in the last 2 years)
- To ensure that data in organizations is useful, you need to make sure, that your users find it easily!
- A great “Enterprise-y” solution has been metadata tagging!
- However, users generally hate doing that manually
- Automatic solutions are either cumbersome to maintain, expensive to develop, or both
- Many required metadata fields will cause users to migrate to shadow IT solutions (like DropBox) – or not use any collaboration solutions at all!
Using Azure Functions and Cognitive Services Text API to enrich a Flow that fills Metadata for new items in a Modern SharePoint Team Site. Cool solution with fun new tools!
- We’ll be using Modern Team Sites in SharePoint for document storage. That enables effortless collaboration in the cloud!
- SharePoint’s Search is decent, but thorough metadata tagging makes it a lot more useful.
- Using Azure Cognitive Services we can fill the metadata fields automatically – without any user interaction at all!
- Users can find the content, and hence will be happy! 🙂
So essentially, what happens is, that this Flow automates metadata tagging for SharePoint Online. Like in the graph (Fig. 1), these are roughly the steps:
- User uploads a document
- This fires a Flow attached to Document Library
- The Flow will call the Azure Function that’ll do the heavy lifting
- An Azure Function will run, extract text, and analyze it using Azure Cognitive Services
- The Azure Function will then write the info back to SharePoint Online
- Finally, notifies admin of the execution and the creator of the file.
There’s a larger description and
a demo video (in case the demo is not visible on the hackathon demo page, see it below! The actual demo starts around 3:10, it’s mainly issue and solution description before that) available on the hackathon website: https://devpost.com/software/resolving-managed-metadata-madness-in-sharepoint