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 capture · api

One read of Claude Developer Platform

43 pages moved out of 698 read.

api-20260902T180739Z

Pages moved 43 significant first
Pages read 698 in this capture
Captured 18:07 UTC
Corpus hash b4311130d9ac corpus-hash

What this read moved

1–25 of 43

This capture is too large to show at once. Changes 1-25 of 43 are below, significant first; the rest are on the following screens.

agents-and-tools/tool-use/web-fetch-tool Changed · +3 / -3 lines

from line 27
2727<Warning>
2828 Enabling the web fetch tool in environments where Claude processes untrusted input alongside sensitive data poses data exfiltration risks. Only use this tool in trusted environments or when handling non-sensitive data.
2929 
30 To minimize exfiltration risks, Claude is not allowed to dynamically construct URLs. Claude can only fetch URLs that have been explicitly provided by the user or that come from previous web search or web fetch results. However, there is still residual risk that you should carefully consider when using this tool.
30 To minimize exfiltration risks, Claude cannot fetch URLs that appear only in its own output. Claude can only fetch URLs that have previously appeared in the conversation: URLs in user messages, URLs in client-side tool results (even when a result echoes text that Claude generated), and URLs from previous web search or web fetch results (see [URL validation](https://platform.claude.com/docs/en/agents-and-tools/tool-use/web-fetch-tool#url-validation)). However, there is still residual risk that you should carefully consider when using this tool.
3131 
3232 If data exfiltration is a concern, consider:
3333 
from line 503
503503Unlike web search where citations are always enabled, citations are optional for web fetch and disabled by default. Set `"citations": {"enabled": true}` to enable Claude to cite specific passages from fetched documents.
504504 
505505<Note>
506 When displaying API outputs directly to end users, include citations to the original source. If you are making modifications to API outputs, including by reprocessing and/or combining them with your own material before displaying them to end users, display citations as appropriate based on consultation with your legal team.
506 When displaying API outputs directly to end users, include citations to the original source. If you are making modifications to API outputs, including by reprocessing or combining them with your own material before displaying them to end users, display citations as appropriate based on consultation with your legal team.
507507</Note>
508508 
509509## Response
from line 650
650650* URLs in client-side tool results
651651* URLs from previous web search or web fetch results
652652 
653The tool cannot fetch arbitrary URLs that Claude generates or URLs from container-based server tools (such as Code Execution and Bash).
653The tool cannot fetch URLs that appear only in Claude's own output or only in the system prompt. To make a URL from the system prompt fetchable, also include it in a user message. Results of other server-side tools, such as [code execution](https://platform.claude.com/docs/en/agents-and-tools/tool-use/code-execution-tool), the [MCP connector](https://platform.claude.com/docs/en/agents-and-tools/mcp-connector), or [tool search](https://platform.claude.com/docs/en/agents-and-tools/tool-use/tool-search-tool), are not an allowed source either. Client-side tool results are an allowed source even when they echo text that Claude produced (for example, a command that prints its input, or an error message that quotes it).
654654 
655655## Combined search and fetch
656656 

api/service-tiers Changed · +1 / -1 lines

## Standard tier ## Standard Tier

from line 14
1414* **Standard:** Default tier for both piloting and scaling everyday use cases
1515* **Batch:** Best for asynchronous workflows that can wait or benefit from being outside your normal capacity
1616 
17## Standard Tier
17## Standard tier
1818 
1919The standard tier is the default service tier for all API requests. The API prioritizes these requests alongside all other requests with best-effort availability.
2020 

build-with-claude/claude-on-vertex-ai Changed · +4 / -4 lines

from line 45
4545 <Tab title="Java">
4646 <CodeGroup exclude="shell, python, typescript, csharp, go, php, ruby">
4747 ```groovy Gradle
48 implementation("com.anthropic:anthropic-java:2.58.0")
49 implementation("com.anthropic:anthropic-java-vertex:2.58.0")
48 implementation("com.anthropic:anthropic-java:2.60.0")
49 implementation("com.anthropic:anthropic-java-vertex:2.60.0")
5050 ```
5151 
5252 ```xml Maven
from line 53
5353 <dependency>
5454 <groupId>com.anthropic</groupId>
5555 <artifactId>anthropic-java</artifactId>
56 <version>2.58.0</version>
56 <version>2.60.0</version>
5757 </dependency>
5858 <dependency>
5959 <groupId>com.anthropic</groupId>
6060 <artifactId>anthropic-java-vertex</artifactId>
61 <version>2.58.0</version>
61 <version>2.60.0</version>
6262 </dependency>
6363 ```
6464 

build-with-claude/prompt-engineering/prompting-claude-fable-5-1 Changed · +17 / -10 lines

from line 130
130130 tool_results: list[BetaToolResultBlockParam] = []
131131 for block in response.content:
132132 if block.type == "tool_use":
133 path = str(block.input["path"])
133 raw_path = block.input.get("path")
134 path = raw_path if isinstance(raw_path, str) else ""
134135 if path in FILES:
135136 tool_results.append(
136137 {
from line 256
255256 }
256257 
257258 const finalText = response.content.find((block) => block.type === "text");
258 console.log(finalText?.text);
259 console.log(finalText?.text ?? "");
259260 ```
260261 
261262 ```csharp C#
from line 334
333334 {
334335 if (block.TryPickToolUse(out var toolUse))
335336 {
336 var path = toolUse.Input["path"].GetString()!;
337 var path = toolUse.Input.TryGetValue("path", out var pathValue)
338 && pathValue.ValueKind == JsonValueKind.String
339 ? pathValue.GetString()!
340 : "";
337341 if (files.TryGetValue(path, out var fileText))
338342 {
339343 toolResults.Add(new BetaToolResultBlockParam { ToolUseID = toolUse.ID, Content = fileText });
from line 450
446450 var input struct {
447451 Path string `json:"path"`
448452 }
453 // A missing or non-string path leaves input.Path empty, which takes the error-result branch.
449454 if err := json.Unmarshal([]byte(toolUse.JSON.Input.Raw()), &input); err != nil {
450 log.Fatal(err)
455 input.Path = ""
451456 }
452457 text, found := files[input.Path]
453458 if !found {
from line 553
548553 for (BetaToolUseBlock toolUse : toolUses) {
549554 Map<String, JsonValue> input =
550555 (Map<String, JsonValue>) toolUse._input().asObject().orElseThrow();
551 String path = input.get("path").asStringOrThrow();
556 String path = Optional.ofNullable(input.get("path"))
557 .flatMap(JsonValue::asString)
558 .orElse("");
552559 String fileText = FILES.get(path);
553560 BetaToolResultBlockParam.Builder result = BetaToolResultBlockParam.builder()
554561 .toolUseId(toolUse.id());
from line 582
575582 
576583 String finalText = response.content().stream()
577584 .flatMap(block -> block.text().stream())
585 .map(textBlock -> textBlock.text())
578586 .findFirst()
579 .orElseThrow()
580 .text();
587 .orElse("");
581588 IO.println(finalText);
582589 }
583590 ```
from line 644
637644 $toolResults = [];
638645 foreach ($response->content as $block) {
639646 if ($block->type === 'tool_use') {
640 $path = $block->input['path'];
647 $path = is_string($block->input['path'] ?? null) ? $block->input['path'] : '';
641648 if (array_key_exists($path, FILES)) {
642649 $toolResults[] = [
643650 'type' => 'tool_result',
from line 673
666673 }
667674 
668675 $textBlock = array_find($response->content, fn ($block) => $block->type === 'text');
669 echo $textBlock->text, PHP_EOL;
676 echo $textBlock?->text ?? '', PHP_EOL;
670677 ```
671678 
672679 ```ruby Ruby
from line 877
870877* Append the following note to the end of the user message. It makes the thinking much shorter on prose and code requests. Replace `[max_tokens]` with the request's actual `max_tokens` value, for example 64,000.
871878 
872879```text wrap
873Everything produced in one reply, including any reasoning or drafting it does before the reply, counts toward a single limit of about [max_tokens] tokens. If that limit is reached before the reply is finished, the person receives a cut-off response and has to start over. Composing an entire output or deliverable in full as reasoning and then again as a reply would double the length of the turn without improving the result, so don't do that.
880Everything produced in one reply, including any reasoning or drafting done before the reply, counts toward a single limit of about [max_tokens] tokens. If that limit is reached before the reply is finished, the person receives a cut-off response and has to start over. Composing an entire output or deliverable in full as reasoning and then again as a reply would double the length of the turn without improving the result, so don't do that.
874881 
875882Instead, when the person has asked for a long or effort-intensive deliverable such as a multi-section document, a large table or dataset, or a complete code file, spend extra effort on understanding the request, checking the inputs the answer depends on, settling the structure and other difficult decisions, and otherwise using the reasoning space to reason and the output space to write an output. Usually it is not needed to draft an output multiple times.
876883```

cli-sdks-libraries/sdks/csharp Changed · +0 / -8 lines

from line 7
77The Anthropic C# SDK provides convenient access to the Claude API from applications written in C#.
88 
99<Info>
10 The C# SDK is currently in beta. APIs may change between versions.
11</Info>
12 
13<Info>
1410 For API feature documentation with code examples, see the [API reference](https://platform.claude.com/docs/en/api/overview). This page covers C#-specific SDK features and configuration.
1511</Info>
1612 
from line 443
447443Use `AnthropicBedrockMantleClient` for new projects; `AnthropicBedrockClient` remains for existing applications using the Bedrock `InvokeModel` API.
448444 
449445## Semantic versioning
450 
451<Warning>
452 Although this package is versioned as 10+, it's currently in beta. During the beta period, breaking changes may occur in minor or patch releases. Once the library reaches stable release, SemVer conventions will be followed more strictly. Share feedback by [filing an issue](https://github.com/anthropics/anthropic-sdk-csharp/issues/new).
453</Warning>
454446 
455447This package generally follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions, though certain backward-incompatible changes may be released as minor versions:
456448 

manage-claude/compliance-integration-patterns Changed · +3 / -2 lines

from line 115
115115| Activity Feed records | 6 years | Anthropic |
116116| Chat, file, and project content | Your organization's claude.ai retention policy, unless a user deletes it sooner | Your organization |
117117| Local session transcripts (sessions on users' machines) | 6 years by default, or your organization's custom conversation retention period when a finite one is set | Anthropic by default; your organization when it sets a custom period |
118| Remote session transcripts (sessions in the cloud) | 6 years | Anthropic |
118| Remote session transcripts (sessions in the cloud) | 6 years, unless a user deletes the session sooner | Anthropic |
119119| Content hard-deleted through the Compliance API | Not retained; deletion is immediate and permanent | The caller of the `DELETE` endpoint |
120120 
121121To learn how the rest of the Claude Platform handles retention, see [API and data retention](https://platform.claude.com/docs/en/manage-claude/api-and-data-retention).
from line 124
124124 
125125* If your legal-hold or audit horizon exceeds 6 years for activity metadata or session transcripts, export Activity Feed pages and session transcripts to your own archive as you ingest them.
126126* If your content-retention policy is shorter than your eDiscovery horizon, export chat and file content before the retention window expires; the Compliance API cannot return content that retention has already removed. The same applies to local session transcripts, which follow your organization's custom conversation retention period when a finite one is set, even when that period is shorter than 6 years. The local session endpoints stop returning messages older than your organization's current period as soon as the setting changes, and lengthening the period later does not restore transcripts that have already expired, so export any transcript you must keep beyond it.
127* If you must retain chat content after users delete it in claude.ai (for example, under a legal hold), export chat, file, and artifact content to your own archive as you ingest it; the Compliance API cannot return content that a user has already deleted.
127* If you must retain chat content or remote session transcripts after users delete them in claude.ai (for example, under a legal hold), export chat, file, artifact, and remote session content to your own archive as you ingest it; the Compliance API cannot return content that a user has already deleted.
128128* If a workflow might issue a Compliance API hard-delete (for example, DLP enforcement), retrieve and archive the target content first. There is no recovery window after a hard-delete.
129129 
130130In every other case, rely on direct API retrieval and avoid maintaining a parallel copy.
from line 154
154154* Local session transcript content in an organization whose [customer-managed encryption key](https://platform.claude.com/docs/en/manage-claude/cmek) cannot currently be used. Those requests return [503 Service Unavailable](https://platform.claude.com/docs/en/manage-claude/compliance-errors#local-sessions-temporarily-unavailable), and session metadata is still listed.
155155* Content removed by your organization's retention policy.
156156* Content of chats that users delete in claude.ai (the chats are still listed, with `deleted_at` populated).
157* Remote sessions that users delete (deleted sessions are no longer listed, and the messages endpoint returns 404 for them).
157158* Content hard-deleted through the Compliance API.
158159 
159160See the [Compliance API FAQ](https://platform.claude.com/docs/en/manage-claude/compliance-faq#data-coverage-and-retention) for more on what the Compliance API does and does not capture.

agents-and-tools/mcp-connector Changed · +2 / -2 lines

from line 663
663663 <Tabs>
664664 <Tab title="Gradle">
665665 ```kotlin
666 implementation("com.anthropic:anthropic-java-mcp:2.58.0")
666 implementation("com.anthropic:anthropic-java-mcp:2.60.0")
667667 ```
668668 </Tab>
669669 
from line 672
672672 <dependency>
673673 <groupId>com.anthropic</groupId>
674674 <artifactId>anthropic-java-mcp</artifactId>
675 <version>2.58.0</version>
675 <version>2.60.0</version>
676676 </dependency>
677677 ```
678678 </Tab>

agents-and-tools/tool-use/advisor-tool Changed · +1 / -1 lines

from line 31
3131 
3232The advisor fits these configurations:
3333 
34* **You currently use Sonnet on complex tasks:** Add a higher-tier advisor. Opus keeps total cost similar or lower; Claude Fable 5 maximizes the quality lift.
34* **You currently use Sonnet on complex tasks:** Add a higher-tier advisor. Opus keeps total cost similar or lower; Claude Fable 5.1 maximizes the quality lift.
3535* **You currently use Haiku and want a step up in intelligence:** Add an Opus or Fable advisor. Expect higher cost than Haiku alone, but lower than switching the executor to a larger model.
3636 
3737Results are task-dependent. Evaluate on your own workload.

build-with-claude/claude-in-amazon-bedrock Changed · +2 / -2 lines

from line 102
102102 <Tabs>
103103 <Tab title="Gradle">
104104 ```kotlin
105 implementation("com.anthropic:anthropic-java-bedrock:2.58.0")
105 implementation("com.anthropic:anthropic-java-bedrock:2.60.0")
106106 ```
107107 </Tab>
108108 
from line 111
111111 <dependency>
112112 <groupId>com.anthropic</groupId>
113113 <artifactId>anthropic-java-bedrock</artifactId>
114 <version>2.58.0</version>
114 <version>2.60.0</version>
115115 </dependency>
116116 ```
117117 </Tab>

build-with-claude/claude-in-microsoft-foundry Changed · +2 / -2 lines

from line 77
7777 <Tabs>
7878 <Tab title="Gradle">
7979 ```kotlin
80 implementation("com.anthropic:anthropic-java-foundry:2.58.0")
80 implementation("com.anthropic:anthropic-java-foundry:2.60.0")
8181 
8282 // For Entra ID authentication, also add the Azure Identity library
8383 implementation("com.azure:azure-identity:1.18.3")
from line 89
8989 <dependency>
9090 <groupId>com.anthropic</groupId>
9191 <artifactId>anthropic-java-foundry</artifactId>
92 <version>2.58.0</version>
92 <version>2.60.0</version>
9393 </dependency>
9494 <!-- For Entra ID authentication, also add the Azure Identity library -->
9595 <dependency>

build-with-claude/claude-on-amazon-bedrock-legacy Changed · +2 / -2 lines

from line 54
5454 <Tab title="Java">
5555 <CodeGroup>
5656 ```groovy Gradle
57 implementation("com.anthropic:anthropic-java-bedrock:2.58.0")
57 implementation("com.anthropic:anthropic-java-bedrock:2.60.0")
5858 ```
5959 
6060 ```xml Maven
from line 61
6161 <dependency>
6262 <groupId>com.anthropic</groupId>
6363 <artifactId>anthropic-java-bedrock</artifactId>
64 <version>2.58.0</version>
64 <version>2.60.0</version>
6565 </dependency>
6666 ```
6767 

build-with-claude/claude-platform-on-aws Changed · +2 / -2 lines

from line 305
305305 
306306 <Tab title="Java">
307307 ```kotlin Gradle
308 implementation("com.anthropic:anthropic-java-aws:2.58.0")
308 implementation("com.anthropic:anthropic-java-aws:2.60.0")
309309 ```
310310 
311311 ```xml Maven
from line 312
312312 <dependency>
313313 <groupId>com.anthropic</groupId>
314314 <artifactId>anthropic-java-aws</artifactId>
315 <version>2.58.0</version>
315 <version>2.60.0</version>
316316 </dependency>
317317 ```
318318 </Tab>

build-with-claude/mid-conversation-system-messages Changed · +1 / -1 lines

from line 1170
11701170## Limitations
11711171 
11721172* **Not for the first message.** A `system` message that carries content cannot be the first entry in `messages`. Use the top-level `system` field for instructions that apply from the very start.
1173* **Placement is constrained.** A `system` message that carries content (`text`, `tool_addition`, or `tool_removal` blocks) must immediately follow a `user` turn (including a `user` turn that carries `tool_result` blocks) or an `assistant` turn ending in a server tool result, and must precede an `assistant` turn or end the array. It cannot sit between a `tool_use` block and its `tool_result`. Placing it elsewhere returns a 400 error. A message with empty `content` that only sets [`output_config.effort`](https://platform.claude.com/docs/en/build-with-claude/effort#change-effort-mid-conversation-beta) renders nothing at its position and is accepted anywhere in `messages`, including first or between an `assistant` turn and a `user` turn. Consecutive `system` messages are judged together, so adding a text-carrying message next to an effort-only one makes the whole group follow the content rule.
1173* **Placement is constrained.** A `system` message that carries content (`text`, `tool_addition`, or `tool_removal` blocks) must immediately follow a `user` turn (including a `user` turn that carries `tool_result` blocks) or an `assistant` turn ending in a server tool result, and must precede an `assistant` turn or end the array. It cannot sit between a `tool_use` block and its `tool_result`. Placing it elsewhere returns a 400 error. One exception: `tool_addition` and `tool_removal` blocks are not accepted immediately after a [paused](https://platform.claude.com/docs/en/build-with-claude/handling-stop-reasons#pause-turn) `assistant` turn (one ending in a server tool result), though `text` blocks are; resume the paused turn first, then send the tool change in the next `system` message. A message with empty `content` that only sets [`output_config.effort`](https://platform.claude.com/docs/en/build-with-claude/effort#change-effort-mid-conversation-beta) renders nothing at its position and is accepted anywhere in `messages`, including first or between an `assistant` turn and a `user` turn. Consecutive `system` messages are judged together, so adding a text-carrying message next to an effort-only one makes the whole group follow the content rule.
11741174* **Turn-scoped messages are text-only and re-sent verbatim.** A `clear_at: "next_user_message"` message carries no `tool_addition`, `tool_removal`, `output_config`, or `cache_control`, and once cleared it must stay in `messages` byte-for-byte on later requests. See [Turn-scoped system messages](https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages#turn-scoped-system-messages).
11751175* **Not a place for untrusted content.** Claude treats system content as operator instructions and follows it. Do not place text from outside the conversation, such as raw tool output, retrieved documents, or web content, directly in a system message; doing so gives that text operator-level authority. Keep that data in `tool_result` blocks and continue to follow [Mitigate jailbreaks and prompt injections](https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/mitigate-jailbreaks).
11761176 

build-with-claude/prompt-caching Changed · +1 / -1 lines

from line 867
8678673. Position `C`: The token count at the last `cache_control` block.
868868 
869869<Note>
870 If `B` and/or `C` are larger than `A`, they will necessarily be cache misses, because `A` is the highest cache hit.
870 If `B` or `C` is larger than `A`, it is necessarily a cache miss, because `A` is the highest cache hit.
871871</Note>
872872 
873873You'll be charged for:

build-with-claude/prompt-engineering/prompting-claude-opus-4-8 Changed · +1 / -1 lines

from line 157
157157 
158158## Computer use
159159 
160Claude Opus 4.8 supports the `computer_toolset_20260801` toolset (on the Claude API and Google Cloud) and the earlier `computer_20251124` tool version. For tasks inside webpages, Claude Opus 4.8 also supports the [browser use tool](https://platform.claude.com/docs/en/agents-and-tools/tool-use/browser-use-tool) (`browser_toolset_20260801`). [Computer use](https://platform.claude.com/docs/en/agents-and-tools/tool-use/computer-use-tool) capability works across resolutions, up to a maximum resolution of 2576px / 3.75MP. Internal computer use testing shows that sending images at 1080p provides a good balance of performance and cost.
160Claude Opus 4.8 supports the `computer_toolset_20260801` toolset (on the Claude API and Google Cloud) and the earlier `computer_20251124` tool version. On the Claude API and Google Cloud, Claude Opus 4.8 also supports the [browser use tool](https://platform.claude.com/docs/en/agents-and-tools/tool-use/browser-use-tool) (`browser_toolset_20260801`) for tasks inside webpages. [Computer use](https://platform.claude.com/docs/en/agents-and-tools/tool-use/computer-use-tool) capability works across resolutions, up to a maximum resolution of 2576px / 3.75MP. Internal computer use testing shows that sending images at 1080p provides a good balance of performance and cost.
161161 
162162For particularly cost-sensitive workloads, 720p or 1366×768 are lower-cost options with strong performance. Conduct your own testing to find the ideal settings for your use case; experimenting with effort settings can also help tune the model's behavior.
163163 

build-with-claude/prompt-engineering/prompting-claude-sonnet-5 Changed · +1 / -1 lines

from line 153
153153 
154154## Computer use
155155 
156Claude Sonnet 5 supports the `computer_toolset_20260801` toolset (on the Claude API and Google Cloud) and the earlier `computer_20251124` tool version. For tasks inside webpages, Claude Sonnet 5 also supports the [browser use tool](https://platform.claude.com/docs/en/agents-and-tools/tool-use/browser-use-tool) (`browser_toolset_20260801`). [Computer use](https://platform.claude.com/docs/en/agents-and-tools/tool-use/computer-use-tool) capability works across resolutions, up to a maximum resolution of 2576px / 3.75MP. Internal computer use testing shows that sending images at 1080p provides a good balance of performance and cost.
156Claude Sonnet 5 supports the `computer_toolset_20260801` toolset (on the Claude API and Google Cloud) and the earlier `computer_20251124` tool version. On the Claude API and Google Cloud, Claude Sonnet 5 also supports the [browser use tool](https://platform.claude.com/docs/en/agents-and-tools/tool-use/browser-use-tool) (`browser_toolset_20260801`) for tasks inside webpages. [Computer use](https://platform.claude.com/docs/en/agents-and-tools/tool-use/computer-use-tool) capability works across resolutions, up to a maximum resolution of 2576px / 3.75MP. Internal computer use testing shows that sending images at 1080p provides a good balance of performance and cost.
157157 
158158For particularly cost-sensitive workloads, 720p or 1366×768 are lower-cost options with strong performance. Conduct your own testing to find the ideal settings for your use case; experimenting with effort settings can also help tune the model's behavior.
159159 

build-with-claude/task-budgets Changed · +2 / -0 lines

from line 439
439439 ```
440440</CodeGroup>
441441 
442In this example, the tokens spent before compaction are the usage of all the messages you have removed from the history so far, measured as in [Measure your current usage](https://platform.claude.com/docs/en/build-with-claude/task-budgets#measure-your-current-usage). Leave out anything still present in the messages you send, including any summary you added, because the server counts those tokens itself. Update this figure only when you replace the history this way; don't decrement it per request. Pass the resulting `remaining` on every request, not only the one that compacts.
443 
442444For loops that resend the full uncompacted history on every turn, omit `remaining` and let the server track the countdown.
443445 
444446## Changing the budget mid-conversation

build-with-claude/token-counting Changed · +1 / -1 lines

from line 779
779779<Note>
780780 See [Thinking and the context window](https://platform.claude.com/docs/en/build-with-claude/thinking#thinking-and-the-context-window) for more details.
781781 
782 * Thinking blocks from **previous** assistant turns are ignored and **do not** count toward your input tokens
782 * Thinking blocks from **previous** assistant turns count toward your input tokens on models that [keep all prior turns](https://platform.claude.com/docs/en/build-with-claude/thinking#thinking-block-preservation-by-model); on models that keep only the last turn, the API strips them and they do **not** count
783783 * **Current** assistant turn thinking **does** count toward your input tokens
784784</Note>
785785 

cli-sdks-libraries/cli/quickstart Changed · +1 / -1 lines

from line 29
2929 For Linux environments, download the release binary directly.
3030 
3131 ```bash
32 VERSION=1.27.0
32 VERSION=1.29.0
3333 OS=$(uname -s | tr '[:upper:]' '[:lower:]')
3434 case $(uname -m) in
3535 x86_64) ARCH=amd64 ;;

cli-sdks-libraries/sdks/java Changed · +2 / -2 lines

from line 15
1515<Tabs>
1616 <Tab title="Gradle">
1717 ```kotlin
18 implementation("com.anthropic:anthropic-java:2.58.0")
18 implementation("com.anthropic:anthropic-java:2.60.0")
1919 ```
2020 </Tab>
2121 
from line 24
2424 <dependency>
2525 <groupId>com.anthropic</groupId>
2626 <artifactId>anthropic-java</artifactId>
27 <version>2.58.0</version>
27 <version>2.60.0</version>
2828 </dependency>
2929 ```
3030 </Tab>

cli-sdks-libraries/sdks/typescript Changed · +1 / -1 lines

from line 18
1818 
1919## Requirements
2020 
21TypeScript >= 4.9 is supported.
21TypeScript >= 5.0 is supported.
2222 
2323The following runtimes are supported:
2424 

get-started Changed · +2 / -2 lines

from line 436
436436 }
437437 
438438 dependencies {
439 implementation("com.anthropic:anthropic-java:2.58.0")
439 implementation("com.anthropic:anthropic-java:2.60.0")
440440 }
441441 
442442 application {
from line 462
462462 <dependency>
463463 <groupId>com.anthropic</groupId>
464464 <artifactId>anthropic-java</artifactId>
465 <version>2.58.0</version>
465 <version>2.60.0</version>
466466 </dependency>
467467 </dependencies>
468468 </project>

manage-claude/api-and-data-retention Changed · +1 / -1 lines

from line 16
1616* Only what is technically necessary for the feature to work is retained. Conversation content (your prompts and Claude's outputs) is not retained by default; the exception is [Covered Models](https://platform.claude.com/docs/en/manage-claude/api-and-data-retention#model-specific-data-retention-requirements), which require 30-day retention.
1717* Retained data is purged on the shortest practical time to live (TTL), and Anthropic aims to give customers control over how long data is retained. What is held, and the retention duration where a specific TTL applies, is documented on each feature's page.
1818 
19Several retention models sit outside the ZDR and HIPAA arrangements described on this page. Data accessible through the [Compliance API](https://platform.claude.com/docs/en/manage-claude/compliance-api) follows its own retention model. The [Activity Feed](https://platform.claude.com/docs/en/manage-claude/compliance-activity-feed) retains data for 6 years. Chat, file, and project content from claude.ai follows your organization's retention policy set in [claude.ai > Organization settings > Data and privacy](https://claude.ai/admin-settings/data-privacy-controls). [Local session transcripts](https://platform.claude.com/docs/en/manage-claude/compliance-sessions#retrieve-local-sessions) (from sessions on users' machines, in apps such as Cowork and Claude Code) are stored for 6 years by default, or for your organization's custom conversation retention period when a finite one is set (the same claude.ai setting). [Remote session transcripts](https://platform.claude.com/docs/en/manage-claude/compliance-sessions#retrieve-remote-sessions) (Cowork in the cloud) are retained for 6 years. The Compliance API does not capture local sessions for which ZDR is in effect, or any local sessions from organizations with HIPAA readiness enabled.
19Several retention models sit outside the ZDR and HIPAA arrangements described on this page. Data accessible through the [Compliance API](https://platform.claude.com/docs/en/manage-claude/compliance-api) follows its own retention model. The [Activity Feed](https://platform.claude.com/docs/en/manage-claude/compliance-activity-feed) retains data for 6 years. Chat, file, and project content from claude.ai follows your organization's retention policy set in [claude.ai > Organization settings > Data and privacy](https://claude.ai/admin-settings/data-privacy-controls). [Local session transcripts](https://platform.claude.com/docs/en/manage-claude/compliance-sessions#retrieve-local-sessions) (from sessions on users' machines, in apps such as Cowork and Claude Code) are stored for 6 years by default, or for your organization's custom conversation retention period when a finite one is set (the same claude.ai setting). [Remote session transcripts](https://platform.claude.com/docs/en/manage-claude/compliance-sessions#retrieve-remote-sessions) (Cowork in the cloud) are retained for 6 years, unless a user deletes the session sooner. The Compliance API does not capture local sessions for which ZDR is in effect, or any local sessions from organizations with HIPAA readiness enabled.
2020 
2121## Zero data retention (ZDR)
2222 

manage-claude/authentication Changed · +1 / -1 lines

from line 127
127127 
128128The [Admin API](https://platform.claude.com/docs/en/manage-claude/admin-api) accepts a personal key or service account key only if the key isn't scoped to a specific workspace.
129129 
130You can find a workspace's ID in the **ID** column of [Settings → Workspaces](https://platform.claude.com/settings/workspaces) in the Claude Console, or by calling the [List Workspaces](https://platform.claude.com/docs/en/api/admin/workspaces/list) endpoint. Neither lists the Default Workspace's ID: read it from the `anthropic-workspace-id` [response header](https://platform.claude.com/docs/en/manage-claude/workspaces#identify-the-workspace-behind-an-api-response) of any request that runs there (for example, one made with a workspace key from the Default Workspace), or from `scope.workspace_id` on such a key in [List API Keys](https://platform.claude.com/docs/en/api/admin/api_keys/list).
130You can find a workspace's ID in the **ID** column of [Settings → Workspaces](https://platform.claude.com/settings/workspaces) in the Claude Console, or by calling the [List Workspaces](https://platform.claude.com/docs/en/api/admin/workspaces/list) endpoint. List Workspaces omits the Default Workspace; its ID is in the `anthropic-workspace-id` [response header](https://platform.claude.com/docs/en/manage-claude/workspaces#identify-the-workspace-behind-an-api-response) of any request that runs there.
131131 
132132<CodeGroup>
133133 ```bash cURL

manage-claude/compliance-faq Changed · +1 / -1 lines

from line 103
103103 </Accordion>
104104 
105105 <Accordion title="Is deleted content recoverable through the Compliance API?">
106 No. Deletes performed through the Compliance API are immediate, permanent, and not recoverable. The content of a chat that a user deletes in claude.ai is not recoverable either: the Compliance API still returns the chat and its messages, with `deleted_at` populated, but not their content. Pull any content you need to retain (for legal hold or archival) while it is still available. See [Plan content retention](https://platform.claude.com/docs/en/manage-claude/compliance-integration-patterns#plan-content-retention) for when to export content to your own archive.
106 No. Deletes performed through the Compliance API are immediate, permanent, and not recoverable. The content of a chat that a user deletes in claude.ai is not recoverable either: the Compliance API still returns the chat and its messages, with `deleted_at` populated, but not their content. A remote session that a user deletes is likewise not recoverable, and the remote session endpoints no longer return it. Pull any content you need to retain (for legal hold or archival) while it is still available. See [Plan content retention](https://platform.claude.com/docs/en/manage-claude/compliance-integration-patterns#plan-content-retention) for when to export content to your own archive.
107107 </Accordion>
108108 
109109 <Accordion title="What does the Compliance API not capture?">