As of August 2026, calling Microsoft 365 Copilot programmatically means choosing between two distinct implementations — the Work IQ Chat API (general availability, one permission, Copilot Credits billing) and the Graph beta Chat API (preview, seven required delegated scopes, flat M365 Copilot license) — and that choice shapes your authentication architecture, your enterprise admin consent conversation, and your billing model before you write a line of code. This post covers the complete request and response shape for both paths, the permission and billing models that cannot be swapped at go-live, and the five things neither implementation can do regardless of which path you choose.
The Microsoft 365 Copilot Retrieval API: What Every Developer Must Know Before Building a RAG Integration
The Microsoft 365 Copilot Retrieval API gives developers a direct path to retrieval-augmented generation on organizational content — no chunking pipeline, no vector store, no sync job — by exposing the semantic index Microsoft 365 already maintains for Copilot across SharePoint, OneDrive, and connector content. This post covers the complete request and response shape, the delegated-only auth constraint that rules out daemon integrations, the 200-request-per-user-per-hour rate limit strategy, and a clear decision boundary between the Retrieval API and the beta Search API.
Custom Templates and CI/CD with `@microsoft/spfx-cli`
`@microsoft/spfx-cli` is designed for automation. This post covers custom org templates, CI/CD integration with GitHub Actions, air-gapped scaffolding, the scaffold log, and the `@microsoft/spfx-template-api` SDK for programmatic use in enterprise tooling.
Managing Copilot Apps and Agents as an Admin: The Package Management API (Preview)
Govern every Copilot app and agent in your Microsoft 365 tenant programmatically. Learn the six Package Management API endpoints, prerequisites, filter patterns, and the exact limits of this preview API.
Microsoft 365 Copilot Usage Reports API: Programmatic Access to Tenant Adoption Data
The Microsoft 365 Copilot Usage Reports API gives IT admins programmatic access to the adoption data that is currently a manual click-through in the admin center. This post covers the three GA Graph endpoints, the single permission required, what the API deliberately withholds — including per-user prompt counts — and how to connect it to a reporting pipeline.
Microsoft 365 Copilot API Rate Limits, Error Handling, and National Cloud Readiness: What Every Integration Must Handle Before Go-Live
Copilot APIs cap at 200 requests per user per hour. Learn 429 error handling, batch retry rules, MSAL token caching, and which national clouds block Copilot APIs entirely.
Microsoft 365 Copilot API Auth, Permissions, and Production Readiness: The Foundation Before You Build
Most developers hit a 403 on their first Copilot API call — not because of a misconfiguration, but because the Retrieval and Search APIs are delegated-only by design. This post maps the auth model, exact permission scopes per API surface, app registration choices, and SDK options into a single decision-support guide you can work through before writing your first integration call.
Microsoft 365 Copilot APIs: What They Are, Why They Exist, and When to Use Them
Microsoft 365 Copilot APIs expose AI reasoning capabilities directly through Microsoft Graph, with your tenant's security and compliance controls inherited at the API layer. This post maps the eight API surfaces in the series, makes the GA-versus-preview boundaries explicit, and establishes the licensing prerequisites — before you evaluate a single endpoint.
Federated Search in SPSE: Searching Across Multiple Search Service Applications
Running two Search Service Applications isolates your collaboration and My Sites crawl pipelines at the cost of creating a search silo — users searching from the Enterprise Search Centre cannot see personal content. This post covers the dual-SSA federation pattern using Remote Result Sources: what it solves, where it falls short, and how to configure it step-by-step in Central Administration.
Controlling SharePoint Crawl Performance: Impact Rules and Crawl Rules
An unconfigured SharePoint crawler runs at full throughput — opening as many simultaneous connections to your WFEs as they will accept and downloading every file regardless of size. This post covers the two PowerShell scripts that give you precise crawl throttling control: crawler impact rules per WFE host, a large-file metadata-only threshold, and URL-pattern exclusion rules that eliminate redundant crawl noise.