Follow Discord
Sweep 22 Sep 2026 · 17:19Z Build v2.1.280 501 read Stable v2.1.267 Latest v2.1.280 Next v2.1.280 Feeds RSS JSON llms.txt Unofficial
One change · claude-docs

Use Claude for M365 with third-party platforms changed

office-agents/third-party-platforms

Nearest release: v2.1.280, published 10 hours before upstream edited the page. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

Upstream edited this page at 23 Sep 2026 02:40 UTC, give or take a minute or two: the time comes from Anthropic’s own sitemap rather than from a commit. This site recorded the change at 23 Sep 2026 03:07 UTC.

Upstream edited
Recorded here
Lines+85added
Lines−27removed
From line 94 where the diff opens
First seen 14 Aug 2026 this site's first read of the page
Recorded edits5to this page, all time

### Keep credentials out of the manifest URL query string ### Route Foundry direct through your own gateway

The whole hunk

from line 94, old and new numbered
/
lines
from line 94
9494and inference goes to your LLM gateway, Bedrock, Vertex AI, or Azure
9595AI Foundry.
9696 
97| Domain | Required when | Purpose |
98| ---------------------------------------- | ------------------------- | ------------------------------------------------------------------------------------- |
99| `pivot.claude.ai` | Always | Add-in host serving task pane UI, analytics, and telemetry. |
100| `claude.ai/api/` | Always | Feature-flag evaluation without sign-in. |
101| `appsforoffice.microsoft.com` | Always | Microsoft Office.js runtime script. |
102| `login.microsoftonline.com` | Always | Microsoft Entra ID sign-in via Nested App Auth; reads admin config and issues tokens. |
103| `o1158394.ingest.us.sentry.io` | Optional | Crash and error reporting; blocking degrades diagnostics only. |
104| Your LLM gateway URL | If using LLM gateway | Organization's LLM gateway for inference. |
105| `sts.amazonaws.com` | If using Bedrock direct | AWS STS for exchanging Entra ID token for temporary Bedrock credentials. |
106| `bedrock-runtime.<region>.amazonaws.com` | If using Bedrock direct | Bedrock inference endpoint; replace `<region>` with your configured AWS region. |
107| `accounts.google.com` | If using Vertex AI direct | Google OAuth consent screen. |
108| `oauth2.googleapis.com` | If using Vertex AI direct | Google OAuth token exchange and refresh. |
109| `aiplatform.googleapis.com` | If using Vertex AI direct | Vertex AI global inference endpoint. |
110| `<region>-aiplatform.googleapis.com` | If using Vertex AI direct | Vertex AI regional inference endpoint; replace `<region>` with your GCP region. |
111| `<resource>.services.ai.azure.com` | If using Foundry direct | Azure AI Foundry inference endpoint; replace `<resource>` with your resource name. |
112| `graph.microsoft.com` | If using Outlook | Microsoft Graph mailbox and calendar API. |
97| Domain | Required when | Purpose |
98| ---------------------------------------- | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
99| `pivot.claude.ai` | Always | Add-in host serving task pane UI, analytics, and telemetry. |
100| `claude.ai/api/` | Always | Feature-flag evaluation without sign-in. |
101| `appsforoffice.microsoft.com` | Always | Microsoft Office.js runtime script. |
102| `login.microsoftonline.com` | Always | Microsoft Entra ID sign-in via Nested App Auth; reads admin config and issues tokens. |
103| `o1158394.ingest.us.sentry.io` | Optional | Crash and error reporting; blocking degrades diagnostics only. |
104| Your LLM gateway URL | If using LLM gateway | Organization's LLM gateway for inference. |
105| `sts.amazonaws.com` | If using Bedrock direct | AWS STS for exchanging Entra ID token for temporary Bedrock credentials. |
106| `bedrock-runtime.<region>.amazonaws.com` | If using Bedrock direct | Bedrock inference endpoint; replace `<region>` with your configured AWS region. |
107| `accounts.google.com` | If using Vertex AI direct | Google OAuth consent screen. |
108| `oauth2.googleapis.com` | If using Vertex AI direct | Google OAuth token exchange and refresh. |
109| `aiplatform.googleapis.com` | If using Vertex AI direct | Vertex AI global inference endpoint. |
110| `<region>-aiplatform.googleapis.com` | If using Vertex AI direct | Vertex AI regional inference endpoint; replace `<region>` with your GCP region. |
111| `<resource>.services.ai.azure.com` | If using Foundry direct | Azure AI Foundry inference endpoint; replace `<resource>` with your resource name. |
112| Your Foundry gateway URL | If using Foundry direct through your own gateway | The gateway or proxy set in `azure_base_url`. Connections made while it is set do not call `<resource>.services.ai.azure.com`. |
113| `graph.microsoft.com` | If using Outlook | Microsoft Graph mailbox and calendar API. |
113114 
114115If Anthropic serves your add-in settings from your Claude organization,
115116as described in
from line 231
230231 <img src="https://mintcdn.com/claude-ai/-4jzPa4NasvobarI/images/office-agents/architecture/config-discovery.png?fit=max&auto=format&n=-4jzPa4NasvobarI&q=85&s=b6c750272cf3ad9765ec2563af436806" alt="The add-in resolves each configuration key from a bootstrap endpoint, then Entra ID extension attributes, then manifest parameters." width="2398" height="1670" data-path="images/office-agents/architecture/config-discovery.png" />
231232</Frame>
232233 
234### Keep credentials out of the manifest URL query string
235 
236Prefer a bootstrap endpoint (`bootstrap_url`) or Entra ID sign-in with
237`gateway_auth_source=entra`, so no credential appears in the manifest or
238in any URL. If you keep URL configuration, put `gateway_token`,
239`azure_api_key`, `google_client_secret`, `otlp_headers`,
240`inference_headers`, and `mcp_servers` after `#`, never after `?`:
241the browser sends the query string to the server on every load, where
242request logs record it, while the fragment stays in the browser. The
243add-in warns in the console when one of these keys arrives in the query
244string and ignores it there from October 19, 2026.
245 
246The following example shows the change. Apply it to both `SourceLocation`
247and the `Taskpane.Url` resource, keep `&` written as `&amp;` in the XML,
248and redeploy the manifest from the Microsoft 365 admin center.
249 
250```text theme={null}
251before: https://pivot.claude.ai/?gateway_url=https://ai-gateway.example.com/v1&amp;gateway_token=sk-gw-xxxxx&amp;m=excel3p-1.0.0.1
252after: https://pivot.claude.ai/?gateway_url=https://ai-gateway.example.com/v1&amp;m=excel3p-1.0.0.1#gateway_token=sk-gw-xxxxx
253```
254 
233255### Admin feature controls
234256 
235257The `disabled_features` configuration key turns off individual add-in
from line 607
585607Each user sees a one-time Microsoft sign-in prompt if silent sign-in is
586608not available; afterwards the add-in connects automatically.
587609 
610### Route Foundry direct through your own gateway
611 
612If your organization reaches Azure AI Foundry through a gateway or proxy
613it operates, such as Azure API Management, set `azure_base_url` to that
614gateway's base URL, path included. The add-in then sends every Foundry
615request to `<azure_base_url>/v1/messages` instead of
616`https://<resource>.services.ai.azure.com/anthropic/v1/messages`, with
617the same credential and headers it would send to the resource: the API
618key as `x-api-key`, or each user's Microsoft Entra ID token as
619`Authorization: Bearer` with keyless sign-in. `azure_resource_name` is
620still required and names the resource behind the gateway.
621 
622Use the same value you would set as Claude Code's
623`ANTHROPIC_FOUNDRY_BASE_URL`. The URL must use HTTPS. Because the add-in
624calls the gateway from the browser, the gateway must meet the
625[CORS requirements](#cors-requirements), and your network must allow its
626domain as listed in the [network allowlist](#network-allowlist). On this
627path the add-in also sends the `anthropic-beta` header, and with keyless
628sign-in the `authorization` header, so the gateway's CORS preflight must
629allow both and the gateway must forward `anthropic-beta` to Foundry.
630 
631Users who connected before you set `azure_base_url` keep their direct
632connection until they log out and sign in again, as described in
633[Change or update your gateway connection](#change-or-update-your-gateway-connection).
634Until the setup wizard accepts this key, add `azure_base_url` to the
635generated manifest URL by hand, or deliver it per user through Microsoft
636Entra ID extension attributes or a bootstrap endpoint.
637 
638The following manifest parameters configure this path.
639 
640| Parameter | Value |
641| --------------------- | ------------------------------------------------------------------------------------- |
642| `azure_resource_name` | Your Foundry resource name. |
643| `azure_base_url` | The gateway base URL, for example `https://ai-gateway.example.com/foundry/anthropic`. |
644| `azure_api_key` | The key the gateway expects as `x-api-key`. Omit it with keyless sign-in. |
645 
588646### Change or update your gateway connection
589647 
590648If your gateway API token expires or your IT team provides a new URL,
591go to Settings in the add-in sidebar, enter the new values, and select
592"Test Connection". This Settings section appears only for gateway
593connections. For Bedrock, Vertex AI, or Foundry direct, select Logout
594from the account menu and sign in again with your new credentials.
649select Logout from the account menu and sign in again with your new
650credentials. This applies to LLM gateway, Bedrock, Vertex AI, and
651Foundry direct connections alike.
595652 
596653## Gateway requirements for IT teams
597654 
from line 740
683740If your team already runs Claude Code through a gateway, the table
684741below summarizes how the Office add-in setup differs.
685742 
686| Aspect | Claude Code | Office add-ins |
687| ------------------ | ---------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
688| Credential storage | OS keychain or environment variables | Browser localStorage (sandboxed iframe) |
689| Auth configuration | Environment variables, settings file, helper scripts | Manual entry in add-in UI (gateway), Entra ID (Bedrock, keyless Foundry), Google OAuth (Vertex AI), or Azure API key (Foundry) |
690| Token refresh | Supports helper scripts for rotation | Automatic via a bootstrap endpoint (gateway), Entra ID (Bedrock, keyless Foundry), or Google OAuth (Vertex AI); gateway tokens entered manually in the add-in UI require re-entry in settings |
691| Custom model names | Configurable via environment variables | Not configurable in v1 |
743| Aspect | Claude Code | Office add-ins |
744| ------------------ | ---------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
745| Credential storage | OS keychain or environment variables | Browser localStorage (sandboxed iframe) |
746| Auth configuration | Environment variables, settings file, helper scripts | Manual entry in add-in UI (gateway), Entra ID (Bedrock, keyless Foundry), Google OAuth (Vertex AI), or Azure API key (Foundry) |
747| Token refresh | Supports helper scripts for rotation | Automatic via a bootstrap endpoint (gateway), Entra ID (Bedrock, keyless Foundry), or Google OAuth (Vertex AI); gateway tokens entered manually in the add-in UI require signing out and back in when they rotate |
748| Custom model names | Configurable via environment variables | Not configurable in v1 |
692749 
693750When gateway configuration comes from a bootstrap endpoint, the add-in
694751keeps the token current without user action. It calls the bootstrap
from line 756
699756token changed.
700757 
701758Gateway tokens entered manually in the add-in UI do not refresh
702automatically: update the token in settings when it rotates.
759automatically: sign out and sign in again with the new token when it
760rotates.
703761 
704762## Example gateway configuration with LiteLLM
705763 
Feedback