TL;DR: Azure Front Door's Health Probes can cost you quite a bit.
How to easily get an authentication token to your Office 365 Tenant
I have been developing a backend service that requires a Microsoft Graph token passed up from the frontend. During this development, I have been using Postman to do the call, and have used a simple SPA with authentication to give me a token to my development tenant. This has been a pretty annoying way to do things when the token expires every half an hour or so, meaning I need to generate another.
Updating a SharePoint List Item’s Content Type in the Microsoft Graph
The Microsoft Graph Documentation on how to update a SharePoint list item describes only how to update the fields. But what if you want to change the content type?
Finding the Files location of Microsoft Teams Channel using the Microsoft Graph
You may have come across the Files tab for a channel in Microsoft Teams. This basically shows the contents of a folder inside a Document Library in a SharePoint Team Site, the one that is provisioned when the Team was first created. In that Files tab, you are able to open that location by clicking "Open in... Continue Reading →
Using the Microsoft Graph to determine if an Office365 Group has an associated Microsoft Team
It is very easy to accidentally create an Office365 Group, for example by creating a new plan or creating new Team in Microsoft Teams; either of these (and I'm sure there are more ways) will provision an entire Office365 Group including mailbox, calendar, SharePoint team site and OneNote notebook. It doesn't create a team unless... Continue Reading →
Serving your Angular CLI App Locally over HTTPS
When creating an Angular CLI app using the ng new command, the CLI itself will create some scripts in the packages.json relating to the building, testing, and local serving of your app. When running npm start it will subsequently run ng serve which by default runs the web server on localhost in HTTP (e.g. http://localhost:4200). This is all well and... Continue Reading →
Using the Angular CLI and the Yeoman Generator to create an Office Add-in
UPDATE: Since this was written the office generator has been updated and does not work in the same way as below, specifically that it no longer asks to create a subfolder (for you to refuse) and does it anyway. If a folder already exists then it will fail and the instructions below are now useless.... Continue Reading →
Using the Microsoft Graph API to upload files to a Library with more than 5000 items gives you a HTTP 404
UPDATE: Around the time of this blog post I added a question on StackOverflow about this issue, and a few months later it was responded to and resolved. This issue in the format mentioned below should no longer exist. I have decided to keep the post alive however as it may support any other issues... Continue Reading →
Creating ARM Templates was easier than I thought
Recently I have been getting my teeth into Infrastructure as Code (IAC) and particularly Azure Resource Manager (ARM) Templates. Initially, I saw these things as potentially large JSON files with a massive schema and something that could consume my time learning, causing me to question if I actually wanted to learn it. Although I am... Continue Reading →
Dynamic content for email signatures in Outlook (an exercise in being lazy)
Every second week at OnePlace Solutions, our very enthusiastic marketing manager tells everyone in the company to update their email signature. Typically it is just changing the image below our name to show what event we are at next, or highlighting a particular product or feature recently worked on. The image is also hyperlinked to... Continue Reading →