Overcoming challenges when migrating SharePoint Online user profile properties
When migrating SharePoint user profile properties, I encountered two issues. This blog post will detail those issues and how I overcame them.
Application development, architecture design, and security in Microsoft cloud
When migrating SharePoint user profile properties, I encountered two issues. This blog post will detail those issues and how I overcame them.
Let’s deploy a SharePoint Framework solution that uses a library component from another repository in the same Azure DevOps organization.
Let’s authenticate to SharePoint Online from an Azure Function via PnP PowerShell using the managed identity or a self-signed certificate.
How to automatically configure SharePoint sites by utilizing SharePoint Site Templates and PnP Templates, executed by Azure resources.
This blog post offers a well-structured and “chronologically proceeding” beginner’s guide, including much hands-on experience on even the most minor quirks of the API.
Creating a Teams bot is not a complex process, but figuring out all the different things that are required for the first time can seem like a challenging feat to accomplish.
Managing user access does not need to be tedious and constant work. Let’s take a look at the built-in features of Azure AD Access Reviews, whether they are enough for real-life purposes, and how we can improve things via custom solutions.
Did you know there is a way for us to securely authenticate to Entra ID protected APIs while simultaneously avoiding storing any credentials?
The reason why we aren’t seeing more Teams app development for real customer scenarios today is that people don’t know enough about it.
“But I wanted to use them in my developer tenant that I got through the Microsoft 365 Developer Program because it also has 25 free E5 licenses!”
As the number of things we can include in our Teams provisioning solutions has grown, it has become harder to remember to ask all the important questions.
Organizations have a lot of processes that include an approval step. Let’s dig into all the available Teams-based approval implementation options, what problems we might face, and how to counter them.
This blog post is about showing you how we can have as effortless Teams provisioning approvals as possible right where they matter the most.
Using the Wiki tab in Teams can easily lead to a permanent loss of information. Let me show you how to delete the tab during your provisioning process.
Wouldn’t it be great if we didn’t have to leave Microsoft Teams whenever we want to use a custom team provisioning solution? Good news: we can!
In this blog post, I’ll tell you a story about one unusual situation in which we had to get texts for a single user from different localization files depending on something else than the user’s chosen language.
In this blog post, I’ll show you how you can implement the service locator pattern the right way, so you don’t need to pass down any objects to your child components to be able to use the resources from the SPFx context.
After I started using React, my solutions have become so much tidier. In this blog post, I’ll teach you the most important things you need to grasp when implementing your very first SPFx React project.
This blog post aims to clarify the meaning and benefits of workspace provisioning solutions to those who are not yet that familiar with the topic, and explain why there is no one-size-fits-all solution to the problem.
The long awaited continuation to my Shifts blog post mini-series is finally here! This time we dig deep into how you can customize Shifts, what kind of business processes you can automate (with a real-life customer use case), and what pitfalls you need to be aware of.
Even though Shifts has been a part of Teams for a while now, not that many have actually used it or know much about it. In this first part of the series, I’ll tell you the things you need to know about Shifts as a developer to be able to implement meaningful customizations for your customers.
Implementing workspace provisioning solutions results to your dev tenant looking like a massive mess. Let’s clean it up!
This blog post is meant to be the one place to get all of the information you need for setting up certificate authentication. This scenario is important when you, for example, want to use the SharePoint Online REST API with application permissions.
Last week I realized that I have never actually shared how you can authenticate to Microsoft Graph from Microsoft Flow using delegated permissions. So, without further ado, let me show you how you can do that with a REST request. You can also use this method in other daemon apps such as Azure Functions or WebJobs.
Our blog post series is closing to the end. In this final blog post of the series, I will show you how you can automatically configure two SharePoint related tabs: the SharePoint tab itself and the Files tab.
We’ve already come quite far in this blog post series! We’ve got our team cloned and have already started configuring the tabs. The Planner tab is probably the easiest one to configure out of the tabs I’m covering in this blog post series. Still, there are some small things you should keep in mind and be aware of to get the most out of this process.
People can have different opinions on how Teams tabs should be configured and that is most likely the reason why they aren’t automatically configured when you clone a team. The configuration can be automated, but each different kind of tab needs to be set up in a slightly different way. In this blog post, I’ll show you how you can configure the OneNote tab.
At this point, we have our brand new team set up with its cloned tabs. However, none of those tabs are yet configured to show any content. All of the tab types are a bit different from one another, but what I am about to show to you in this blog post is so fundamental that it should be very useful to you no matter which tabs you eventually decide to configure.
In the prelude, I told you a little bit about the reasons why configuring tabs automatically is important. In this one, I will show you a couple of ways on how you can clone a team programmatically via Microsoft Graph. I also talk a little bit about what quirks the whole clone team process contains, and what we can expect from Teams templates in the future.
With the clone team operation, you can clone the team settings, channels, apps, tabs, and even members. What doesn’t automatically happen with cloning though is the configuration of tabs. Searching for the right resource to display can be difficult at times, so I’m happy to tell you that it is possible for us to automate the configuration of the cloned tabs via Microsoft Graph. And that is the bread and butter of this blog post series.
In some extranet scenarios, you want to limit external sharing only to the employees of specific organizations. In Office 365, you can do that by configuring a list of allowed domains for guest invites. But what if one or more of your stakeholder organizations have blocked access to other Office 365 tenants via tenant restrictions?
Soon you will be able to create a team for an Office 365 group via its modern team site. There will be a button that allows you to create a Team with a single click. But could things be made even easier? In this blog post, I’ll show you how you can have an option to create a team automatically when creating a new modern, Office 365 group connected team site.
Whenever you want to call Microsoft Graph from your custom solutions, you need to have an application registration in your Azure Active Directory first. In this blog post, I show you three ways to create an app registration in the Azure AD, and how you can choose the right way depending on your situation.
What would be nicer than to invite some users from other organizations to collaborate with us on the beautiful, modern SharePoint Online sites? I’ve recently been working with guest users in SharePoint Online environments, and in this blog post, I take you through, what problems we encountered and how you too can get past them.
Working with Office 365, you too might have already started building up a collection of useful PowerShell scripts; the ones you always keep on going back to when you need to perform certain operations for a tenant. This month I’m sharing with you some of my toolkit; a collection of PowerShell scripts I currently find myself using the most while working with SharePoint.
Copying an existing Planner plan programmatically is totally doable thanks to Microsoft Graph. But how to sort the tasks and buckets of the new plan in the exact same order as in the original plan? Let me show you how you can achieve that by using the Planner order hint property and Microsoft Graph.
In this blog post, I’m going to take you through what SharePoint site designs and site scripts are, how you can create, deploy, maintain and use them for provisioning sites from many different places, and give you new ideas on how you can and should be taking advantage of them.
The Office 365 external sharing settings have been a hot topic in many conversations lately. I have also got to work with those, and in this blog post, I’ll tell you how to programmatically disable external sharing for a single O365 Group and its team site.
Microsoft Graph Teams operations can be used for all kinds of cool stuff related to Teams. Because I’ve had so much fun playing around with those, I figured I’d show you a couple of examples of how you can utilize those operations in a SPFx web part, and provision a Team for an existing Office 365 Group.
You can create your own themes for Modern SharePoint Online sites by using the Office UI Fabric Theme Generator. Using the theme generator is really easy if you just want to use one color. But what if your organization has multiple brand colors and you would like to create a multicolored theme?