One read of Claude Developer Platformapi-20260925T200712Z
7 pages moved out of 637 read.
Pages moved
7
significant first
Pages read
637
in this capture
Captured
20:07 UTC
Corpus hash
521bbc8bdda7
corpus-hash
What this read moved
1-7 of 7agents-and-tools/tool-use/web-fetch-tool Changed · +28 / -28 lines
from line 10
1010
1111The web fetch tool allows Claude to retrieve full content from specified web pages and PDF documents.
1212
13The latest web fetch tool version (`web_fetch_20260318`) supports **dynamic filtering**: Claude can write and execute code to filter fetched content before it reaches the context window, keeping only relevant information and discarding the rest. This reduces token consumption while maintaining response quality. Dynamic filtering is available with Claude Fable 5.1, Claude Mythos 5.1, Claude Fable 5, Claude Mythos 5, [Claude Mythos Preview](https://anthropic.com/glasswing), Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Sonnet 5, and Claude Sonnet 4.6. `web_fetch_20260318` also adds [response inclusion](https://platform.claude.com/docs/en/agents-and-tools/tool-use/web-fetch-tool#response-inclusion) control for agentic workflows. The previous versions (`web_fetch_20260309` for dynamic filtering and [cache bypass](https://platform.claude.com/docs/en/agents-and-tools/tool-use/web-fetch-tool#cache-bypass), `web_fetch_20260209` for dynamic filtering only, `web_fetch_20250910` for basic fetch) remain available.
13The latest web fetch tool version (`web_fetch_20260318`) supports **dynamic filtering**: Claude can write and execute code to filter fetched content before it reaches the context window, keeping only relevant information and discarding the rest. This reduces token consumption while maintaining response quality. Dynamic filtering is available with Claude 4.6 and later models and [Claude Mythos Preview](https://anthropic.com/glasswing). `web_fetch_20260318` also adds [response inclusion](https://platform.claude.com/docs/en/agents-and-tools/tool-use/web-fetch-tool#response-inclusion) control for agentic workflows. The previous versions (`web_fetch_20260309` for dynamic filtering and [cache bypass](https://platform.claude.com/docs/en/agents-and-tools/tool-use/web-fetch-tool#cache-bypass), `web_fetch_20260209` for dynamic filtering only, `web_fetch_20250910` for basic fetch) remain available.
1414
1515Web fetch (with and without dynamic filtering) is available on the Claude API, [Claude Platform on AWS](https://platform.claude.com/docs/en/build-with-claude/claude-platform-on-aws), and [Microsoft Foundry](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry). On Microsoft Foundry, deployments [hosted on Azure](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#additional-features-not-supported-when-hosted-on-azure) support only the basic web fetch tool (`web_fetch_20250910`, without dynamic filtering). Deployments hosted on Anthropic support all versions. Web fetch is not currently available on Amazon Bedrock or Google Cloud.
1616
from line 88
8888 -H "anthropic-version: 2023-06-01" \
8989 -H "content-type: application/json" \
9090 -d '{
91 "model": "claude-opus-4-8",
91 "model": "claude-opus-5-5",
9292 "max_tokens": 4096,
9393 "messages": [
9494 {
from line 105
105105
106106 ```bash CLI
107107 ant messages create <<'YAML'
108 model: claude-opus-4-8
108 model: claude-opus-5-5
109109 max_tokens: 4096
110110 messages:
111111 - role: user
from line 122
122122 client = anthropic.Anthropic()
123123
124124 response = client.messages.create(
125 model="claude-opus-4-8",
125 model="claude-opus-5-5",
126126 max_tokens=4096,
127127 messages=[
128128 {
from line 139
139139 const client = new Anthropic();
140140
141141 const response = await client.messages.create({
142 model: "claude-opus-4-8",
142 model: "claude-opus-5-5",
143143 max_tokens: 4096,
144144 messages: [
145145 {
from line 159
159159
160160 var parameters = new MessageCreateParams
161161 {
162 Model = Model.ClaudeOpus4_8,
162 Model = Model.ClaudeOpus5_5,
163163 MaxTokens = 4096,
164164 Messages = [new() { Role = Role.User, Content = "Fetch the content at https://example.com/research-paper and extract the key findings." }],
165165 Tools = [new ToolUnion(new WebFetchTool20260318())]
from line 173
173173 client := anthropic.NewClient()
174174
175175 response, err := client.Messages.New(context.TODO(), anthropic.MessageNewParams{
176 Model: anthropic.ModelClaudeOpus4_8,
176 Model: anthropic.ModelClaudeOpus5_5,
177177 MaxTokens: 4096,
178178 Messages: []anthropic.MessageParam{
179179 anthropic.NewUserMessage(anthropic.NewTextBlock("Fetch the content at https://example.com/research-paper and extract the key findings.")),
from line 195
195195 AnthropicClient client = AnthropicOkHttpClient.fromEnv();
196196
197197 MessageCreateParams params = MessageCreateParams.builder()
198 .model(Model.CLAUDE_OPUS_4_8)
198 .model(Model.CLAUDE_OPUS_5_5)
199199 .maxTokens(4096L)
200200 .addUserMessage("Fetch the content at https://example.com/research-paper and extract the key findings.")
201201 .addTool(WebFetchTool20260318.builder().build())
from line 214
214214 messages: [
215215 ['role' => 'user', 'content' => 'Fetch the content at https://example.com/research-paper and extract the key findings.']
216216 ],
217 model: 'claude-opus-4-8',
217 model: 'claude-opus-5-5',
218218 tools: [[
219219 'type' => 'web_fetch_20260318',
220220 'name' => 'web_fetch',
from line 227
227227 client = Anthropic::Client.new
228228
229229 message = client.messages.create(
230 model: "claude-opus-4-8",
230 model: "claude-opus-5-5",
231231 max_tokens: 4096,
232232 messages: [
233233 { role: "user", content: "Fetch the content at https://example.com/research-paper and extract the key findings." }
from line 252
252252 -H "anthropic-version: 2023-06-01" \
253253 -H "content-type: application/json" \
254254 -d '{
255 "model": "claude-opus-4-8",
255 "model": "claude-opus-5-5",
256256 "max_tokens": 1024,
257257 "messages": [
258258 {
from line 270
270270
271271 ```bash CLI
272272 ant messages create \
273 --model claude-opus-4-8 \
273 --model claude-opus-5-5 \
274274 --max-tokens 1024 \
275275 --message '{role: user, content: "Please analyze the content at https://example.com/article"}' \
276276 --tool '{type: web_fetch_20250910, name: web_fetch, max_uses: 5}'
from line 280
280280 client = anthropic.Anthropic()
281281
282282 response = client.messages.create(
283 model="claude-opus-4-8",
283 model="claude-opus-5-5",
284284 max_tokens=1024,
285285 messages=[
286286 {
from line 297
297297 const client = new Anthropic();
298298
299299 const response = await client.messages.create({
300 model: "claude-opus-4-8",
300 model: "claude-opus-5-5",
301301 max_tokens: 1024,
302302 messages: [
303303 {
from line 322
322322
323323 var parameters = new MessageCreateParams
324324 {
325 Model = Model.ClaudeOpus4_8,
325 Model = Model.ClaudeOpus5_5,
326326 MaxTokens = 1024,
327327 Messages = [new() { Role = Role.User, Content = "Please analyze the content at https://example.com/article" }],
328328 Tools = [new ToolUnion(new WebFetchTool20250910() { MaxUses = 5 })]
from line 336
336336 client := anthropic.NewClient()
337337
338338 response, err := client.Messages.New(context.TODO(), anthropic.MessageNewParams{
339 Model: anthropic.ModelClaudeOpus4_8,
339 Model: anthropic.ModelClaudeOpus5_5,
340340 MaxTokens: 1024,
341341 Messages: []anthropic.MessageParam{
342342 anthropic.NewUserMessage(anthropic.NewTextBlock("Please analyze the content at https://example.com/article")),
from line 360
360360 AnthropicClient client = AnthropicOkHttpClient.fromEnv();
361361
362362 MessageCreateParams params = MessageCreateParams.builder()
363 .model(Model.CLAUDE_OPUS_4_8)
363 .model(Model.CLAUDE_OPUS_5_5)
364364 .maxTokens(1024L)
365365 .addUserMessage("Please analyze the content at https://example.com/article")
366366 .addTool(WebFetchTool20250910.builder()
from line 381
381381 messages: [
382382 ['role' => 'user', 'content' => 'Please analyze the content at https://example.com/article']
383383 ],
384 model: 'claude-opus-4-8',
384 model: 'claude-opus-5-5',
385385 tools: [[
386386 'type' => 'web_fetch_20250910',
387387 'name' => 'web_fetch',
from line 395
395395 client = Anthropic::Client.new
396396
397397 message = client.messages.create(
398 model: "claude-opus-4-8",
398 model: "claude-opus-5-5",
399399 max_tokens: 1024,
400400 messages: [
401401 { role: "user", content: "Please analyze the content at https://example.com/article" }
from line 667
667667 -H "anthropic-version: 2023-06-01" \
668668 -H "content-type: application/json" \
669669 -d '{
670 "model": "claude-opus-4-8",
670 "model": "claude-opus-5-5",
671671 "max_tokens": 4096,
672672 "messages": [
673673 {
from line 693
693693
694694 ```bash CLI
695695 ant messages create <<'YAML'
696 model: claude-opus-4-8
696 model: claude-opus-5-5
697697 max_tokens: 4096
698698 messages:
699699 - role: user
from line 716
716716 client = anthropic.Anthropic()
717717
718718 response = client.messages.create(
719 model="claude-opus-4-8",
719 model="claude-opus-5-5",
720720 max_tokens=4096,
721721 messages=[
722722 {
from line 741
741741 const client = new Anthropic();
742742
743743 const response = await client.messages.create({
744 model: "claude-opus-4-8",
744 model: "claude-opus-5-5",
745745 max_tokens: 4096,
746746 messages: [
747747 {
from line 769
769769
770770 var parameters = new MessageCreateParams
771771 {
772 Model = Model.ClaudeOpus4_8,
772 Model = Model.ClaudeOpus5_5,
773773 MaxTokens = 4096,
774774 Messages = [new() { Role = Role.User, Content = "Find recent articles about quantum computing and analyze the most relevant one in detail" }],
775775 Tools = [
from line 786
786786 client := anthropic.NewClient()
787787
788788 response, err := client.Messages.New(context.TODO(), anthropic.MessageNewParams{
789 Model: anthropic.ModelClaudeOpus4_8,
789 Model: anthropic.ModelClaudeOpus5_5,
790790 MaxTokens: 4096,
791791 Messages: []anthropic.MessageParam{
792792 anthropic.NewUserMessage(anthropic.NewTextBlock("Find recent articles about quantum computing and analyze the most relevant one in detail")),
from line 817
817817 AnthropicClient client = AnthropicOkHttpClient.fromEnv();
818818
819819 MessageCreateParams params = MessageCreateParams.builder()
820 .model(Model.CLAUDE_OPUS_4_8)
820 .model(Model.CLAUDE_OPUS_5_5)
821821 .maxTokens(4096L)
822822 .addUserMessage("Find recent articles about quantum computing and analyze the most relevant one in detail")
823823 .addTool(WebSearchTool20250305.builder()
from line 842
842842 messages: [
843843 ['role' => 'user', 'content' => 'Find recent articles about quantum computing and analyze the most relevant one in detail']
844844 ],
845 model: 'claude-opus-4-8',
845 model: 'claude-opus-5-5',
846846 tools: [
847847 [
848848 'type' => 'web_search_20250305',
from line 864
864864 client = Anthropic::Client.new
865865
866866 message = client.messages.create(
867 model: "claude-opus-4-8",
867 model: "claude-opus-5-5",
868868 max_tokens: 4096,
869869 messages: [
870870 { role: "user", content: "Find recent articles about quantum computing and analyze the most relevant one in detail" }
build-with-claude/mid-conversation-system-messages Changed · +4 / -4 lines
from line 17
1717
1818 This feature is available on Claude Fable 5.1, [Claude Mythos 5.1](https://anthropic.com/glasswing), Claude Fable 5, [Claude Mythos 5](https://anthropic.com/glasswing), Claude Opus 5.5, Claude Opus 4.8, and Claude Opus 5. No beta header is required for mid-conversation system messages. This feature is not available on Claude Sonnet 5. Use the top-level `system` field there instead.
1919
20 [Mid-conversation tool changes](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#mid-conversation-tool-changes) are in beta on the same models. On the Claude API, send the `inline-tools-2026-09-15` beta header, which also covers [defining a tool inside a `tool_addition` block](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#define-tools-in-a-message-beta). Defining a tool in a message is available on the Claude API only, and [adding an MCP server that way](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#add-an-mcp-server-mid-conversation-beta) needs the `mcp-client-2026-09-15` beta header as well. The older `mid-conversation-tool-changes-2026-07-01` header still works for changes that name a tool by reference, on the Claude API, Amazon Bedrock, and Google Cloud.
20 [Mid-conversation tool changes](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#mid-conversation-tool-changes) are in beta on the same models. On the Claude API, send the `inline-tools-2026-09-15` beta header, which also covers [defining a tool inside a `tool_addition` block](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#define-tools-in-a-message-beta). [Adding an MCP server that way](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#add-an-mcp-server-mid-conversation-beta) needs a second beta header, `mcp-client-2026-09-15`, which is available on the Claude API. The `mid-conversation-tool-changes-2026-07-01` header works for changes that name a tool by reference, on the Claude API, Amazon Bedrock, and Google Cloud.
2121
2222 [Turn-scoped system messages](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#turn-scoped-system-messages) (`clear_at`) are in beta and require the `mid-conversation-system-clear-at-2026-08-21` beta header, on the same models and platforms as mid-conversation system messages.
2323</Note>
from line 24
2424
2525## Mid-conversation tool changes
2626
27The `tools` array sits even earlier in the hashed request prefix than the top-level `system` field, so editing it invalidates the [prompt cache](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for the entire conversation. Mid-conversation tool changes are the tools counterpart to mid-conversation system messages. Instead of fixing the tool list for the lifetime of the conversation, you change which tools are offered to the model between turns: declare the full tool set in `tools` up front, then use `tool_addition` and `tool_removal` blocks to offer a tool to the model, or withdraw it, from a specific point in the conversation onward. The `tools` array itself never changes, so the cached prefix stays intact. Mid-conversation tool changes are in beta and use the `inline-tools-2026-09-15` beta header on the Claude API. On Amazon Bedrock and Google Cloud, use the older `mid-conversation-tool-changes-2026-07-01` header, which covers changes that name a tool by reference.
27The `tools` array sits even earlier in the hashed request prefix than the top-level `system` field, so editing it invalidates the [prompt cache](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for the entire conversation. Mid-conversation tool changes are the tools counterpart to mid-conversation system messages. Instead of fixing the tool list for the lifetime of the conversation, you change which tools are offered to the model between turns: declare the full tool set in `tools` up front, then use `tool_addition` and `tool_removal` blocks to offer a tool to the model, or withdraw it, from a specific point in the conversation onward. The `tools` array itself never changes, so the cached prefix stays intact. Mid-conversation tool changes are in beta and use the `inline-tools-2026-09-15` beta header on the Claude API.
2828
29`tool_addition` and `tool_removal` are content blocks in the `content` array of a `role: "system"` message, and they can be mixed with `text` blocks in the same message. The message follows the placement rules for any mid-conversation system message, with one extra restriction after a paused turn (see [Limitations](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#limitations)), and the change applies from that point in the conversation onward. Each block's `tool` field references a tool rather than defining one: `{"type": "tool_reference", "name": "..."}` names a tool declared in the request's `tools` array, and [MCP connector](https://platform.claude.com/docs/en/agents-and-tools/mcp-connector) tools can be referenced individually with `mcp_tool_reference` (`server_name` and `name`) or as a whole toolset with `mcp_toolset_reference` (`server_name`). Referencing a name that is not declared in `tools` returns a 400 error (on the Claude API, with `error.details.error_code` set to `tool_reference_unresolved`). A `tool_addition` block can instead [carry the tool's full definition](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#define-tools-in-a-message-beta), which the older `mid-conversation-tool-changes-2026-07-01` header doesn't support.
29`tool_addition` and `tool_removal` are content blocks in the `content` array of a `role: "system"` message, and they can be mixed with `text` blocks in the same message. The message follows the placement rules for any mid-conversation system message, with one extra restriction after a paused turn (see [Limitations](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#limitations)), and the change applies from that point in the conversation onward. Each block's `tool` field references a tool rather than defining one: `{"type": "tool_reference", "name": "..."}` names a tool declared in the request's `tools` array, and [MCP connector](https://platform.claude.com/docs/en/agents-and-tools/mcp-connector) tools can be referenced individually with `mcp_tool_reference` (`server_name` and `name`) or as a whole toolset with `mcp_toolset_reference` (`server_name`). Referencing a name that is not declared in `tools` returns a 400 error (on the Claude API, with `error.details.error_code` set to `tool_reference_unresolved`). A `tool_addition` block can instead [carry the tool's full definition](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#define-tools-in-a-message-beta), which the `mid-conversation-tool-changes-2026-07-01` header doesn't support.
3030
3131Every tool declared in `tools` is offered to the model from the start of the conversation unless it is declared with `defer_loading: true`, which keeps it withheld until a `tool_addition` block surfaces it. `tool_addition` also re-offers a tool that an earlier `tool_removal` withdrew.
3232
build-with-claude/overview Changed · +5 / -5 lines
from line 82
8282
8383| Feature | Description | ZDR | Availability |
8484| ------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- | ----------------------------------------------------------------------------- |
85| [Agent Skills](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview) | Extend Claude's capabilities with Skills. Use pre-built Skills (PowerPoint, Excel, Word, PDF) or create custom Skills with instructions and scripts. Skills use progressive disclosure to efficiently manage context. | Not ZDR eligible | <PlatformAvailability claudeApi claudePlatformAwsBeta azureAiBeta />†‡ |
85| [Agent Skills](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview) | Extend Claude's capabilities with Skills. Use pre-built Skills (PowerPoint, Excel, Word, PDF) or create custom Skills with instructions and scripts. Skills use progressive disclosure to efficiently manage context. | Not ZDR eligible | <PlatformAvailability claudeApi claudePlatformAws azureAi />†‡ |
8686| [Fine-grained tool streaming](https://platform.claude.com/docs/en/agents-and-tools/tool-use/fine-grained-tool-streaming) | Stream tool use parameters without buffering/JSON validation, reducing latency for receiving large parameters. | ZDR eligible | <PlatformAvailability claudeApi claudePlatformAws bedrock vertexAi azureAi /> |
8787| [MCP connector](https://platform.claude.com/docs/en/agents-and-tools/mcp-connector) | Connect to remote [MCP](https://modelcontextprotocol.io/) servers directly from the Messages API without a separate MCP client. | Not ZDR eligible | <PlatformAvailability claudeApiBeta claudePlatformAwsBeta azureAiBeta /> |
8888| [Programmatic tool calling](https://platform.claude.com/docs/en/agents-and-tools/tool-use/programmatic-tool-calling) | Enable Claude to call your tools programmatically from within code execution containers, reducing latency and token consumption for multi-tool workflows. | Not ZDR eligible | <PlatformAvailability claudeApi claudePlatformAws azureAi />† |
from line 105
105105
106106Manage files and assets for use with Claude.
107107
108| Feature | Description | ZDR | Availability |
109| ------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------- | ---------------- | --------------------------------------------------------------------- |
110| [Files API](https://platform.claude.com/docs/en/build-with-claude/files) | Upload and manage files to use with Claude without re-uploading content with each request. Supports PDFs, images, and text files. | Not ZDR eligible | <PlatformAvailability claudeApi claudePlatformAwsBeta azureAiBeta />† |
108| Feature | Description | ZDR | Availability |
109| ------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------- | ---------------- | ------------------------------------------------------------- |
110| [Files API](https://platform.claude.com/docs/en/build-with-claude/files) | Upload and manage files to use with Claude without re-uploading content with each request. Supports PDFs, images, and text files. | Not ZDR eligible | <PlatformAvailability claudeApi claudePlatformAws azureAi />† |
111111
112112\* **Structured outputs:** Your prompts and Claude's outputs are not stored. Only JSON schemas are cached, for up to 24 hours since last use. **Web search and web fetch:** ZDR-eligible except when [dynamic filtering](https://platform.claude.com/docs/en/agents-and-tools/tool-use/web-search-tool#dynamic-filtering) is enabled. **Fallback credit and server-side fallback:** The features retain no message content, but they handle refusals from the Claude Fable models, which [are not available under ZDR](https://platform.claude.com/docs/en/manage-claude/api-and-data-retention#model-specific-data-retention-requirements). See [ZDR details](https://platform.claude.com/docs/en/manage-claude/api-and-data-retention#feature-eligibility).
113113
114114† On Microsoft Foundry, feature availability differs by [hosting option](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options). These features are available on Hosted on Anthropic deployments, and not on Hosted on Azure deployments.
115115
116‡ On Claude Platform on AWS, Agent Skills need no beta header and behave the same as on the Claude API.
116‡ On Microsoft Foundry, the [Skill version download endpoint](https://platform.claude.com/docs/en/api/beta/skills/versions/download) (`GET /v1/skills/{skill_id}/versions/{version}/content`) is not supported.
117117
agents-and-tools/agent-skills/overview Changed · +2 / -2 lines
from line 142
142142Skills are available across Claude's agent products:
143143
144144<Note>
145 Claude Platform on AWS and Microsoft Foundry inherit the same Skills behavior as the Claude API in all following sections.
145 Claude Platform on AWS and Microsoft Foundry inherit the same Skills behavior as the Claude API in all following sections, except where [Limitations and constraints](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview#limitations-and-constraints) says otherwise.
146146</Note>
147147
148148### Claude API
from line 271
271271
272272## Limitations and constraints
273273
274Claude Platform on AWS and Microsoft Foundry follow the same limitations as the Claude API in the following subsections.
274Claude Platform on AWS and Microsoft Foundry follow the same limitations as the Claude API in the following subsections. In addition, on Microsoft Foundry, the [Skill version download endpoint](https://platform.claude.com/docs/en/api/beta/skills/versions/download) (`GET /v1/skills/{skill_id}/versions/{version}/content`) is not supported.
275275
276276### Cross-surface availability
277277
build-with-claude/claude-platform-on-aws Changed · +1 / -1 lines
from line 27
2727| **Who operates the stack** | Anthropic | AWS | AWS |
2828| **API surface** | Claude API (`/v1/{endpoint}`) | Messages API at `/anthropic/v1/messages` | Bedrock Converse / InvokeModel |
2929| **Feature availability** | Typically same-day as Claude API (see [feature limitations](https://platform.claude.com/docs/en/build-with-claude/claude-platform-on-aws#features-not-supported)) | Per Amazon Bedrock release schedule | Per Amazon Bedrock release schedule |
30| **Agent Skills** | Available in beta (no beta header needed, same behavior as on the Claude API) | Not available (requires code execution) | Not available |
30| **Agent Skills** | Available | Not available (requires code execution) | Not available |
3131| **Beta features** | Pass through with `anthropic-beta` headers (see [feature limitations](https://platform.claude.com/docs/en/build-with-claude/claude-platform-on-aws#features-not-supported)) | `anthropic-beta` header not supported | `anthropic-beta` header not supported |
3232| **Authentication** | AWS IAM / SigV4 or API key | AWS IAM / SigV4 | AWS IAM / SigV4 or bearer token |
3333| **Billing** | AWS Marketplace | AWS (native service) | AWS (native service) |
build-with-claude/files Changed · +2 / -2 lines
from line 7
77 zdr: not-eligible
88 supportedPlatforms:
99 Claude API: ga
10 Claude Platform on AWS: beta
10 Claude Platform on AWS: ga
1111 Amazon Bedrock: not available
1212 Google Cloud: not available
1313 Microsoft Foundry:
14 availability: beta
14 availability: ga
1515 note: On [Microsoft Foundry](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry), the Files API requires a [Hosted on Anthropic deployment](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#additional-features-not-supported-when-hosted-on-azure).
1616---
1717
manage-claude/analytics-api Changed · +1 / -1 lines
from line 81
8181
8282Claude Enterprise Analytics API data is available for dates on or after January 1, 2026.
8383
84**Engagement and adoption endpoints** (user activity, summaries, projects, skills, connectors) return a per-day snapshot for the date you specify. Data for a given day is typically available from about 17:00 UTC the following day (a 1-day lag); until then, the most recent available day is usually two days before the current UTC date. Data occasionally arrives later, and exact freshness varies by query, so rather than assuming a fixed time, check the error response: requesting a date that is not yet available returns a 400 error naming the most recent available day. If data is not available well past the typical lag, it usually indicates a data pipeline failure on Anthropic's side; contact support if the gap persists.
84**Engagement and adoption endpoints** (user activity, summaries, projects, skills, connectors) return a per-day snapshot for the date you specify. Data for a given day is typically available by about 13:00–13:30 UTC the following day (a 1-day lag); until then, the most recent available day is usually two days before the current UTC date. Data arrives later on days when an upstream data pipeline runs late, and exact freshness varies by query, so rather than assuming a fixed time, check the error response: requesting a date that is not yet available returns a 400 error naming the most recent available day. If data is not available well past the typical lag, it usually indicates a data pipeline failure on Anthropic's side; contact support if the gap persists.
8585
8686**Cost and usage endpoints** follow a different freshness model. Data is typically available within four hours of the underlying usage but may take up to 24 hours. Values for a given date can be revised for up to 30 days as late events arrive and reconciliation runs. For invoicing-grade totals, query dates at least 30 days in the past.
8787