
F12 Shows Your API Key: Hiding Third-Party Tokens Behind an Azure Function
Learn how to keep third-party API keys out of the browser by proxying SPFx web part calls through an Azure Function that swaps in the secret server-side.
Real SharePoint development problems in C#: provisioning, list items, navigation, content types and the API costs nobody warns you about.
This is the broadest thing I write about, and the reason most people end up here. Almost everything on this blog touches SharePoint somewhere: reading list items without melting the API, provisioning sites that survive a retry, moving content types on a list that is already in production, or working out why the portal offers a checkbox that no API exposes.
Most of it is C# rather than PowerShell. That is partly taste and partly the work: when SharePoint sits behind a web app or a background job, you need the same operation to be fast, retryable and testable, and that pushes you toward the client libraries rather than a script.
If you are new here, the narrower topics are where the real detail lives. Start with CSOM performance if something is slow, or provisioning if something is flaky.

Learn how to keep third-party API keys out of the browser by proxying SPFx web part calls through an Azure Function that swaps in the secret server-side.

Learn how to checkpoint a Durable Functions orchestration so a failed SharePoint provisioning run resumes where it stopped instead of starting over.

Learn how to speed up SharePoint CSOM with five proven techniques - batching, CAML joins, change detection, server-side exception handling, and fast taxonomy loading.

After testing with DevProxy, I found that monolithic PnP templates silently destroy your retry strategy. Here's what I learned.

Learn how to create SharePoint News Link pages with a banner image using the Microsoft Graph Beta SDK in C# — including the multipart upload the official documentation leaves completely undocumented.

Learn how to create Microsoft 365 groups programmatically with the Graph SDK in C# without sending a welcome email flood to every member.

An undocumented but effective approach to dramatically speed up CSOM taxonomy field loading when dealing with SharePoint list items that have many terms.

The SharePoint API call that wasted resources is now optimized with smart change detection, reducing unnecessary updates and costs.

Discover how SharePoint's ExceptionHandlingScope can optimize your API calls, reduce costs, and enhance performance with server-side exception handling.

Learn how to effectively debounce SharePoint webhooks to optimize performance and reduce unnecessary operations when users frequently click save.
Learn smart retry logic for Microsoft Graph batching to optimize API calls, reduce throttling, and enhance user experience.

How to handle Graph batching when downloading file content and mapping responses back to original requests

Learn how to dramatically improve CSOM performance by batching operations instead of executing them one by one

Discover how to simulate Microsoft Graph and SharePoint throttling locally using DevProxy, and prevent production slowdowns before they happen.

Learn how to efficiently query multiple SharePoint lists using CAML joins instead of multiple API calls to avoid throttling

Quick setup guide for Microsoft Graph SDK using your existing app registration

Learn to authenticate C# applications with PnP.Framework and Azure using certificates in this beginner's guide to app registration and permissions.

Download files from SharePoint as a zip, as is possible through the UI

We've all tried creating a SharePoint list without using Content Types from the start. It seems like the quick solution, but it can lead to challenges later when restructuring the list. This post explains why using Content Types from the beginning is a smart move that can save time and hassle in the long run.

How to easy implement audience targeting for for one's components

No posts match — try another search.