HomeDocs changes
Documentation changes
What the docs quietly changed.
Anthropic's published documentation, fetched on a schedule and diffed against the last copy. Every edit dated, including the ones that never made a release note.
Last poll read all 4 cleanly: Claude Code CLI, Claude Developer Platform, Claude Documentation, Model Context Protocol. A date here is when this site noticed, not when Anthropic edited.
Claude Developer Platform
808pages tracked
587 changed this week · last read 22 Oct 2026
Claude Code CLI
228pages tracked
146 changed this week · last read 22 Oct 2026
Claude Documentation
278pages tracked
74 changed this week · last read 22 Oct 2026
Model Context Protocol
357pages tracked
163 changed this week · last read 21 Oct 2026
100 on this page
ReadSourcePageWhatLines
21 Oct 2026
617 pages
+36050 −7227 lines
api
managed-agents/dreams
±changed
+7−7
apichanged
managed-agents/dreams
description: Let Claude reflect on past sessions to curate an agent's memory and surface new insights.
description: Let Claude review past sessions to curate an agent's memory and surface new insights.
--data '{
-d '{
Use `instructions` (csharp, go: `Instructions`) for high-level synthesis guidance such as focus areas ("focus on coding-style preferences"), content to preserve unchanged, or outpu
+7 −7 lines
Recorded here 21 Oct 2026 19:37 UTC
api
managed-agents/define-outcomes
±changed
+9−9
apichanged
managed-agents/define-outcomes
If you don't have a rubric on hand, try giving Claude an example of a known-good artifact and asking it to analyze what makes that content good, then turn that analysis into a ru
If you don't have a rubric, try giving Claude an example of a known-good artifact and asking it to analyze what makes that content good, then turn that analysis into a rubric. Th
The following examples create a [session](https://platform.claude.com/docs/en/managed-agents/sessions) for an existing [agent](https://platform.claude.com/docs/en/managed-agents/ag
The following examples create a [session](https://platform.claude.com/docs/en/managed-agents/sessions) for an existing [agent](https://platform.claude.com/docs/en/managed-agents/ag
# Define the outcome — agent starts working on receipt
+9 −9 lines
Recorded here 21 Oct 2026 19:37 UTC
api
managed-agents/cloud-sandboxes-reference
±changed
+1−1
apichanged
managed-agents/cloud-sandboxes-reference
| Go | 1.24 (default) and 1.25 | go modules |
| Go | 1.24 (default) and 1.25 | Go modules |
+1 −1 lines
Recorded here 21 Oct 2026 19:37 UTC
api
managed-agents/choosing-an-environment
±changed
+1−1
apichanged
managed-agents/choosing-an-environment
* **Self-hosted sandbox:** You run the sandbox on your own infrastructure. Claude still runs on Anthropic's side and decides which tool to call next. A program that you run, called
* **Self-hosted sandbox:** You run the sandbox on your own infrastructure. Claude still runs on Anthropic's side and determines which tool to call next. A program that you run, cal
+1 −1 lines
Recorded here 21 Oct 2026 19:37 UTC
api
managed-agents/budgets
±changed
+5−5
apichanged
managed-agents/budgets
A session budget is an optional hard spend ceiling you set when you [create a session](https://platform.claude.com/docs/en/managed-agents/sessions). The platform continuously price
A session budget is an optional hard spend ceiling you set when you [create a session](https://platform.claude.com/docs/en/managed-agents/sessions). The platform continuously price
* `max_list_cost` (java, php: `maxListCost`; csharp, go: `MaxListCost`) is the cap itself: `amount` (csharp, go: `Amount`) is a whole number of US cents written as a string with no
* `max_list_cost` (java, php: `maxListCost`; csharp, go: `MaxListCost`) is the cap itself: `amount` (csharp, go: `Amount`) is a whole number of US cents written as a string with no
If the session has open [workflow runs](https://platform.claude.com/docs/en/managed-agents/workflow-runs#interrupt-a-session-with-runs-open), the interrupt can pause them, as an in
+5 −5 lines
Recorded here 21 Oct 2026 19:37 UTC
api
managed-agents/agent-setup
±changed
+2−2
apichanged
managed-agents/agent-setup
The examples use curl, the `ant` CLI, or one of the SDKs. If you haven't set one up, the [quickstart](https://platform.claude.com/docs/en/managed-agents/quickstart#install-the-cli)
The examples use curl, the `ant` CLI, or the SDK. If you haven't set one up, the [quickstart](https://platform.claude.com/docs/en/managed-agents/quickstart#install-the-cli) covers
Create a session to run your agent and begin executing tasks.
Create a session to run your agent and start running tasks.
+2 −2 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/workspaces
±changed
+13−13
apichanged
manage-claude/workspaces
* **Maximum 100 workspaces** per organization by default (archived workspaces don't count); contact your account team if you need more
* **Maximum 100 workspaces** for each organization by default (archived workspaces don't count); contact your account team if you need more
* **API keys** can be scoped to a single workspace. In this case, they can only access resources within that workspace. Some API keys can be granted permissions across multiple wor
* **API keys** can be scoped to a single workspace. In this case, they can only access resources within that workspace. Other API keys aren't scoped to a workspace. With one of the
* **Organization admins** automatically receive Workspace Admin access to all workspaces
+13 −13 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/workload-identity-federation
±changed
+6−6
apichanged
manage-claude/workload-identity-federation
Workload Identity Federation strengthens your security posture by replacing static API keys with tokens that expire in minutes rather than never. It is not a complete security stor
Workload Identity Federation strengthens your security posture by replacing static API keys with tokens that expire in minutes rather than never. It is not a complete security solu
The key distinction versus a workspace API key: a workspace API key *is* a credential, while a service account *has* credentials. You can more easily audit which workloads acted as
The key distinction versus a workspace API key: a workspace API key *is* a credential, whereas a service account *has* credentials. You can more easily audit which workloads acted
You typically register one issuer per environment: your production EKS cluster, your staging cluster, and GitHub Actions are three separate issuers.
+6 −6 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/wif-reference
±changed
+15−15
apichanged
manage-claude/wif-reference
| `org:admin` | Full access to the [Admin API](https://platform.claude.com/docs/en/manage-claude/admin-api) (organization members, invites, workspaces, API keys, and
| `org:admin` | Full access to the [Admin API](https://platform.claude.com/docs/en/manage-claude/admin-api) (organization members, invites, workspaces, API keys, and
| Rule `oauth_scope` | Service account `organization_role` | Effective permissions
| --------------------- | ----------------------------------- | --------------------------------------------------------------------------------------------------------------------
| `workspace:developer` | `admin` | Claude API access in the rule's workspace only. The scope caps the token below the role.
+15 −15 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/wif-providers/spiffe
±changed
+5−5
apichanged
manage-claude/wif-providers/spiffe
--data @- <<JSON | jq -r .access_token
-d @- <<JSON | jq -r .access_token
Except in Java, workloads that link a SPIFFE Workload API client directly can skip spiffe-helper and pass the SDK a token provider that fetches a fresh JWT-SVID from the agent
Except in Java, workloads that link a SPIFFE Workload API client directly can skip spiffe-helper and pass the SDK a token provider that fetches a fresh JWT-SVID from the agent
Before wiring the SDK in, fetch a JWT-SVID directly from SPIRE Agent and confirm the claims match what your federation rule expects. If you use a different SPIFFE implementation, f
+5 −5 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/wif-providers/okta
±changed
+3−3
apichanged
manage-claude/wif-providers/okta
2. **Configure client authentication.** For a keyless setup, choose **Public key / Private key** (`private_key_jwt`) and register your workload's public JWK. Alternatively, use a c
2. **Configure client authentication.** For a keyless setup, select **Public key / Private key** (`private_key_jwt`) and register your workload's public JWK. Alternatively, use a c
* **Use one rule per service app:** Create a separate federation rule for each service app rather than sharing one rule across apps.
* **Use one rule for each service app:** Create a separate federation rule for each service app rather than sharing one rule across apps.
* See the [WIF reference](https://platform.claude.com/docs/en/manage-claude/wif-reference#rule-matching-semantics) to match on custom Okta claims with CEL expressions.
+3 −3 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/wif-providers/kubernetes
±changed
+2−2
apichanged
manage-claude/wif-providers/kubernetes
--data @- <<JSON | jq -r .access_token
-d @- <<JSON | jq -r .access_token
* **Use a separate rule per namespace:** Create a distinct rule and Anthropic service account for each namespace rather than widening one rule.
* **Use a separate rule for each namespace:** Create a distinct rule and Anthropic service account for each namespace rather than widening one rule.
+2 −2 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/wif-providers/github-actions
±changed
+4−4
apichanged
manage-claude/wif-providers/github-actions
The token's `sub` claim encodes the repository and trigger context. For a push to a branch it has the form `repo:<owner>/<repo>:ref:refs/heads/<branch>`. Pull-request runs use `rep
The token's `sub` claim encodes the repository and trigger context. For a push to a branch it has the form `repo:<owner>/<repo>:ref:refs/heads/<branch>`. Pull-request runs use `rep
Be as specific as the workload allows. Loosen `subject_prefix` to `repo:your-org/your-repo:*` (paired with a `claims.ref` constraint) only if the rule must match multiple event typ
Be as specific as the workload allows. Loosen `subject_prefix` to `repo:your-org/your-repo:*` (paired with a `claims.ref` constraint) only if the rule must match multiple event typ
--data @- <<JSON | jq -r .access_token
+4 −4 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/wif-providers/gcp
±changed
+6−6
apichanged
manage-claude/wif-providers/gcp
Enable [Workload Identity](https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity) on your cluster and bind your Kubernetes service account to a Google servic
Enable [GKE Workload Identity](https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity) on your cluster and bind your Kubernetes service account to a Google se
A `format=full` token from GKE additionally includes `google.compute_engine.project_id`, `google.compute_engine.zone`, and `google.compute_engine.instance_name` claims, which y
A `format=full` token from GKE additionally includes `google.compute_engine.project_id`, `google.compute_engine.zone`, and `google.compute_engine.instance_name` claims, which y
--data @- <<JSON
+6 −6 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/wif-providers/azure
±changed
+53−53
apichanged
manage-claude/wif-providers/azure
2. **Set up the identity for your platform:** A managed identity on VMs, VM Scale Sets, App Service, Functions, and Container Apps, or Entra Workload Identity on AKS.
2. **Set up the identity for your platform:** Use a managed identity on VMs, VM Scale Sets, App Service, Functions, and Container Apps, or Entra Workload Identity on AKS.
On both paths the token you present to Anthropic carries your tenant-specific Entra issuer and the managed identity's object ID in the `sub` and `oid` claims; only how the workload
On both paths the token you present to Anthropic carries your tenant-specific Entra issuer and the managed identity's object ID in the `sub` and `oid` claims; only how the workload
**Federation issuer:** Choose **v2.0 (login.microsoftonline.com)** in the wizard's **Token issuer** selector. (The selector defaults to v1; that default exists for tenants reusing
+53 −53 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/wif-providers/aws
±changed
+11−11
apichanged
manage-claude/wif-providers/aws
This is an account-level flag, off by default. In the AWS console, open **IAM**, choose **Account settings**, and enable **Outbound web identity federation**. To enable it prog
This is an account-level flag, off by default. In the AWS console, open **IAM**, select **Account settings**, and enable **Outbound web identity federation**. To enable it prog
After enabling outbound federation, the **IAM > Account settings** page shows a **Get Token Issuer URL** field with a value of the form `https://<uuid>.tokens.sts.global.api.aw
After you enable outbound federation, the **IAM > Account settings** page shows a **Get Token Issuer URL** field with a value of the form `https://<uuid>.tokens.sts.global.api.
Call `GetWebIdentityToken` with `https://api.anthropic.com` as the audience, then pass the result to the SDK's federation credentials through `identity_token_provider` (typescript:
+11 −11 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/wif-admin-api
±changed
+4−4
apichanged
manage-claude/wif-admin-api
The SDKs and the `ant` CLI read `ANTHROPIC_AUTH_TOKEN` automatically; leave `ANTHROPIC_API_KEY` unset in the same shell, because these endpoints reject API keys and every client us
The SDK and the `ant` CLI read `ANTHROPIC_AUTH_TOKEN` automatically; leave `ANTHROPIC_API_KEY` unset in the same shell, because these endpoints reject API keys and every client use
A workload that uses one of the SDKs or the `ant` CLI does not perform the exchange itself. Point the client at the rule with the federation environment variables and construct
A workload that uses the SDK or the `ant` CLI does not perform the exchange itself. Point the client at the rule with the federation environment variables and construct it with
The `ant` CLI reads the same variables, or takes `--federation-rule`, `--organization-id`, `--service-account-id`, and `--identity-token-file` flags. For a workload that runs m
+4 −4 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/user-profiles
±changed
+3−3
apichanged
manage-claude/user-profiles
## Before you begin
## Before you start
`enforcement_status` sums up the open actions in one value:
`enforcement_status` summarizes the open actions in one value:
The following example marks the account as suspended and removes a `trial_cohort` metadata key.
+3 −3 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/user-management
±changed
+4−4
apichanged
manage-claude/user-management
The Admin API is a single set of endpoints under `https://api.anthropic.com/v1/organizations/`. Claude Console and Claude Enterprise organizations authenticate with [different keys
The Admin API is a single set of endpoints under `https://api.anthropic.com/v1/organizations/`. Claude Console and Claude Enterprise organizations authenticate with different [Admi
Groups connect members to custom roles (role-based access control, the `rbac` in the endpoint paths and scope names). Groups are owned by your enterprise as a whole (the parent org
Groups connect members to custom roles (role-based access control, the `rbac` in the endpoint paths and scope names). Groups are owned by your enterprise as a whole (the parent org
Member and invite lists use ID-based pagination: pass `limit` (default 20, max 1000) plus at most one of `before_id` or `after_id`, and page using the `first_id` and `last_id` fiel
+4 −4 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/usage-cost-api
±changed
+6−6
apichanged
manage-claude/usage-cost-api
This API enables you to better monitor, analyze, and optimize your Claude implementations:
This API allows you to better monitor, analyze, and optimize your Claude implementations:
* **[Rate limit](https://platform.claude.com/docs/en/api/rate-limits) optimization:** Optimize features like [prompt caching](https://platform.claude.com/docs/en/build-with-claude/
* **[Rate limit](https://platform.claude.com/docs/en/api/rate-limits) optimization:** Optimize features such as [prompt caching](https://platform.claude.com/docs/en/build-with-clau
Explore detailed implementations in [Claude Cookbook](https://platform.claude.com/cookbook):
+6 −6 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/spend-limits-api
±changed
+17−17
apichanged
manage-claude/spend-limits-api
All monetary values are strings in **minor units of the organization's billing currency** (cents, for USD). For example, `"50000"` represents 500.00 USD. Parse as a decimal and div
All monetary values are strings in **minor units of the organization's billing currency** (cents, for USD). For example, `"50000"` represents $500.00 USD. Parse as a decimal and di
`period_to_date_spend` is the member's spend accrued since the start of the current `period`, in the same minor-unit format; it may include a fractional part (for example, `"41280.
`period_to_date_spend` is the member's spend accrued since the start of the current `period`, in the same minor-unit format; it might include a fractional part (for example, `"4128
| Status | Meaning
+17 −17 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/rate-limits-api
±changed
+3−3
apichanged
manage-claude/rate-limits-api
* **The `id` inside `group`:** A group has the same `id` in every organization and on every workspace override, and it never changes. Use it to match entries across organizations o
* **The `id` inside `group`:** A group has the same `id` in every organization and on every workspace override, and it never changes. Use it to match entries across organizations o
To retrieve your organization's workspace IDs, use the [List Workspaces](https://platform.claude.com/docs/en/api/organization/workspaces/list) endpoint, or find them in the [Clau
To retrieve your organization's workspace IDs, use the [List Workspaces](https://platform.claude.com/docs/en/api/organization/workspaces/list) endpoint, or find them on the [Work
The list covers the models your organization has access to, so it can differ between organizations.
+3 −3 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/plugins-api
±changed
+69−69
apichanged
manage-claude/plugins-api
Every request must include the [beta header](https://platform.claude.com/docs/en/api/beta-headers) `anthropic-beta: ce-plugins-2026-09-01` (the SDKs and the `ant` CLI send it for
Every request must include the [beta header](https://platform.claude.com/docs/en/api/beta-headers) `anthropic-beta: ce-plugins-2026-09-01` (the SDK and the `ant` CLI send it for
The Python, TypeScript, C#, Go, Java, PHP, and Ruby SDKs expose these endpoints under `client.beta.organization` (csharp, go: `client.Beta.Organization`; java: `client.beta().organ
The SDK exposes these endpoints under `client.beta.organization` (csharp, go: `client.Beta.Organization`; java: `client.beta().organization()`; php: `$client->beta->organization`),
| Component | What it is |
+69 −69 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/organization-webhooks
±changed
+1−1
apichanged
manage-claude/organization-webhooks
## Before you begin
## Before you start
+1 −1 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/opentelemetry/sdk
±changed
+4−4
apichanged
manage-claude/opentelemetry/sdk
includes. Otherwise, a
[bug in that package](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/3711)
includes. Otherwise, an
+4 −4 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/opentelemetry/api
±changed
+8−8
apichanged
manage-claude/opentelemetry/api
| **Provider** | Your observability platform, or **Custom** if it isn't listed. If you choose a listed platform, the Console asks for its details, such as an A
| **Provider** | Your observability platform, or **Custom** if it isn't listed. If you select a listed platform, the Console asks for its details, such as an A
| **Maximum content size in MB** | Optional, under **Advanced settings** when the content mode is **Full content**. The most content that the API sends in each span. The Console
| **Maximum content size in MB** | Optional, under **Advanced settings** when the content mode is **Full content**. The most content that the API sends in each span. The Console
| Problem | What to check
+8 −8 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/opentelemetry
±changed
+3−3
apichanged
manage-claude/opentelemetry
| [Token usage](https://platform.claude.com/docs/en/manage-claude/opentelemetry#count-tokens) | ?
| [Token counts](https://platform.claude.com/docs/en/manage-claude/opentelemetry#count-tokens) | ?
With Full content, each span holds up to 0.75 MB of content by default. That fits a 200k-token context window of English text and stays below the 1 MB request limit of many observa
With Full content, each span holds up to 0.75 MB of content by default. That fits a 200k-token context window of English text and stays below the 1 MB request limit of many observa
 happens. Configured at the workspace level i
* **Workspace geo:** Controls where data is stored at rest and where endpoint processing (such as image transcoding and code execution) occurs. Configured at the workspace level in
* **Global routing** (`inference_geo: "global"`): Standard pricing applies.
* **Older models:** Don't support `inference_geo` (see [Model availability](https://platform.claude.com/docs/en/manage-claude/data-residency#model-availability)); standard pricing
* **Global routing (`inference_geo: "global"`):** Standard pricing applies.
+4 −4 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/compliance-sessions
±changed
+21−21
apichanged
manage-claude/compliance-sessions
| `product_surface` values | `cowork`, `claude_code`, `claude_science`, `claude_in_chrome`, and values beginning with `office_agents`
| `product_surface` values | `cowork`, `claude_code`, `claude_science`, `claude_in_chrome`, and values starting with `office_agents`
For local sessions, Anthropic records each conversation server-side as its requests reach the Claude API; nothing is installed on the device, and nothing is collected beyond the re
For local sessions, Anthropic records each conversation server-side as its requests reach the Claude API; nothing is installed on the device, and nothing is collected beyond the re
--header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
+21 −21 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/compliance-org-data
±changed
+1−1
apichanged
manage-claude/compliance-org-data
The `api_keys` array lists every Compliance Access Key configured for your parent organization, so the same list is returned regardless of which linked organization you query. Each
The `api_keys` array lists every Compliance Access Key configured for your parent organization, so the same list is returned regardless of which linked organization you query. Each
+1 −1 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/compliance-integration-patterns
±changed
+6−6
apichanged
manage-claude/compliance-integration-patterns
* Requests are limited to 600 per minute per [parent organization](https://platform.claude.com/docs/en/manage-claude/compliance-api#how-the-compliance-api-works), shared across eve
* Requests are limited to 600 per minute for each [parent organization](https://platform.claude.com/docs/en/manage-claude/compliance-api#how-the-compliance-api-works), shared acros
--header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
--header "anthropic-version: 2023-06-01" \
-H "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
+6 −6 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/compliance-faq
±changed
+3−3
apichanged
manage-claude/compliance-faq
Local and remote session transcripts both carry user prompts, assistant responses, and tool calls and results. For local sessions (on users' machines), that is what Claude was
Local and remote session transcripts both carry user prompts, assistant responses, and tool calls and results. For local sessions (on users' machines), that is what Claude was
[Cowork's OpenTelemetry logging](https://support.claude.com/en/articles/14477985-monitor-claude-cowork-activity-with-opentelemetry) and [Claude Code monitoring](https://code.cl
[Cowork's OpenTelemetry logging](https://support.claude.com/en/articles/14477985-monitor-claude-cowork-activity-with-opentelemetry) and [Claude Code monitoring](https://code.cl
Yes. A Claude Enterprise parent organization can have many linked organizations, including a mix of claude.ai organizations and Claude Console organizations (for example, separ
+3 −3 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/compliance-errors
±changed
+2−2
apichanged
manage-claude/compliance-errors
The following table tells you at a glance whether to retry. Each section that follows shows the verbatim error body and the fix.
The following table tells you whether to retry. Each section that follows shows the verbatim error body and the fix.
A 500 without the `x-should-retry: false` header is transient: retry with exponential backoff (start at 1 second, double up to 60 seconds). The same applies to 502, 503, 504, and 5
A 500 without the `x-should-retry: false` header is transient: retry with exponential backoff (start at 1 second, double up to 60 seconds). The same applies to 502, 503, 504, and 5
+2 −2 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/compliance-content-data
±changed
+13−13
apichanged
manage-claude/compliance-content-data
--header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
--header "anthropic-version: 2023-06-01" \
-H "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
-H "anthropic-version: 2023-06-01" \
To scope the list to specific users instead (for example, a legal hold on named custodians), pass 1–10 `user_ids[]` values. Obtain the IDs from [List organization users](https://pl
+13 −13 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/compliance-api-access
±changed
+1−1
apichanged
manage-claude/compliance-api-access
* **Claude Enterprise organizations:** The primary owner enables the Compliance API at [claude.ai > Organization settings > API](https://claude.ai/admin-settings/api-access). E
* **Claude Enterprise organizations:** The primary owner enables the Compliance API at [claude.ai > Organization settings > API](https://claude.ai/admin-settings/api-access). E
+1 −1 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/compliance-api
±changed
+4−4
apichanged
manage-claude/compliance-api
--header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
--header "anthropic-version: 2023-06-01"
-H "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
-H "anthropic-version: 2023-06-01"
All `/v1/compliance/*` endpoints share a rate limit of 600 requests per minute per parent organization (for a standalone Claude Console organization, per organization). The local s
+4 −4 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/compliance-activity-feed
±changed
+8−8
apichanged
manage-claude/compliance-activity-feed
--header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
--header "anthropic-version: 2023-06-01"
-H "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
-H "anthropic-version: 2023-06-01"
--header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
+8 −8 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/claude-code-analytics-api
±changed
+6−6
apichanged
manage-claude/claude-code-analytics-api
The Claude Code Analytics Admin API provides programmatic access to daily aggregated usage metrics for Claude Code users, enabling organizations to analyze developer productivity a
This API enables you to better monitor, analyze, and optimize your Claude Code adoption:
The Claude Code Analytics Admin API provides programmatic access to daily aggregated usage metrics for Claude Code users, allowing organizations to analyze developer productivity a
+6 −6 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/authentication
±changed
+21−21
apichanged
manage-claude/authentication
| Key type | Acts as | Works in
| -------------------------- | -------------------------------------------------------------------------------------------------------------------- | ------------------------------
| **Personal key** | You, the user, with your roles and permissions | Either a single workspace or t
| **Service account key** | A [service account](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation#service-accounts) | Either a single workspace or a
| **Workspace key** (legacy) | No one: it belongs to the workspace it was created in | That workspace
+21 −21 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/app-attest
±changed
+1−1
apichanged
manage-claude/app-attest
Tokens are scoped to your workspace, expire after one hour, and authorize only [Messages API](https://platform.claude.com/docs/en/api/messages/create) calls. They carry no end-user
Tokens are scoped to your workspace, expire after 1 hour, and authorize only [Messages API](https://platform.claude.com/docs/en/api/messages/create) calls. They carry no end-user i
+1 −1 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/api-and-data-retention
±changed
+41−41
apichanged
manage-claude/api-and-data-retention
Different APIs and features have different storage needs. Where a feature does not require storage of customer prompts or responses, it may be eligible for ZDR. Where a feature nec
Different APIs and features have different storage needs. Where a feature does not require storage of customer prompts or responses, it might be eligible for ZDR. Where a feature n
* **Claude Messages and Token Counting APIs:** ZDR applies to these endpoints for eligible features listed in the [feature eligibility table](https://platform.claude.com/docs/en/ma
* **Claude Messages and Token Counting APIs:** ZDR applies to these endpoints for eligible features listed in the [feature eligibility table](https://platform.claude.com/docs/en/ma
| Feature | Endpoint
+41 −41 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/analytics-api
±changed
+8−8
apichanged
manage-claude/analytics-api
--header "anthropic-version: 2023-06-01" \
--header "x-api-key: $ANTHROPIC_ADMIN_KEY"
-H "anthropic-version: 2023-06-01" \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY"
For the available metrics, request parameters, and response schema, see the [Claude Code Analytics API guide](https://platform.claude.com/docs/en/manage-claude/claude-code-analytic
+8 −8 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/admin-api-keys
±changed
+4−4
apichanged
manage-claude/admin-api-keys
Click **Create admin key**, give it a name, choose a [key expiration](https://platform.claude.com/docs/en/manage-claude/authentication#key-expiration), and click **Add**. Claud
Click **Create admin key**, give it a name, select a [key expiration](https://platform.claude.com/docs/en/manage-claude/authentication#key-expiration), and click **Add**. Claud
| Admin API [user management](https://platform.claude.com/docs/en/manage-claude/user-management): change member roles, remove members, create and withdraw invites (to assign the `m
| Admin API [user management](https://platform.claude.com/docs/en/manage-claude/user-management): change member roles, remove members, and create and withdraw invites (to assign th
| [Compliance API organization endpoints](https://platform.claude.com/docs/en/manage-claude/compliance-org-data): read organization metadata and effective settings
+4 −4 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/admin-api
±changed
+6−6
apichanged
manage-claude/admin-api
The Python, TypeScript, C#, Go, Java, PHP, and Ruby SDKs expose the endpoints on this page under `client.organization` (csharp, go: `client.Organization`; java: `client.organizatio
The SDK exposes the endpoints on this page under `client.organization` (csharp, go: `client.Organization`; java: `client.organization()`; php: `$client->organization`), and the `an
The SDKs and the `ant` CLI read `ANTHROPIC_AUTH_TOKEN` automatically. Leave `ANTHROPIC_API_KEY` unset in the same shell so they send the bearer token. Automated workloads skip the
The SDK and the `ant` CLI read `ANTHROPIC_AUTH_TOKEN` automatically. Leave `ANTHROPIC_API_KEY` unset in the same shell so they send the bearer token. Automated workloads skip the l
Monitor and manage [API keys](https://platform.claude.com/docs/en/api/organization/api_keys/list). Each key in the response includes its `expires_at` timestamp (`null` for keys wit
+6 −6 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/access-transparency-log
±changed
+27−27
apichanged
manage-claude/access-transparency-log
When Access Transparency is enabled, Anthropic maintains a transparency log for your organization. It is an append-only, cryptographically signed record of Access Transparency even
* **One log per organization.** Each organization's log has a fixed origin string: `axt.anthropic.com/<your organization UUID>`. The origin never changes for the life of the organi
When Access Transparency is enabled, Anthropic maintains a transparency log for your organization. It is an append-only, cryptographically signed record of Access Transparency even
+27 −27 lines
Recorded here 21 Oct 2026 19:37 UTC
api
manage-claude/access-transparency
±changed
+12−12
apichanged
manage-claude/access-transparency
* **Human access happens only under a published reason code.**
* **Human access occurs only under a published reason code.**
* **Covered content:** Access Transparency covers prompt and response content sent through the Claude Messages API or Claude Code sessions. Anthropic's [general ZDR documentation](
* **Covered content:** Access Transparency covers prompt and response content sent through the Claude Messages API or Claude Code sessions. The [API and data retention](https://pla
--header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
+12 −12 lines
Recorded here 21 Oct 2026 19:37 UTC
api
intro
±changed
+4−4
apichanged
intro
Follow these steps to go from zero to a working Claude integration.
Follow these steps to build a working Claude integration.
<Card title="API Reference" icon="code" href="https://platform.claude.com/docs/en/api/overview">
<Card title="API reference" icon="code" href="https://platform.claude.com/docs/en/api/overview">
Claude can assist with many tasks that involve text, code, and images.
+4 −4 lines
Recorded here 21 Oct 2026 19:37 UTC
api
get-started
±changed
+1−1
apichanged
get-started
Export your API key as an environment variable. The cURL command below reads it from `$ANTHROPIC_API_KEY`.
Export your API key as an environment variable. The cURL command in the following step reads it from `$ANTHROPIC_API_KEY`.
+1 −1 lines
Recorded here 21 Oct 2026 19:37 UTC
api
get-api-key
±changed
+5−5
apichanged
get-api-key
When you create a key, you choose its type, which determines what the key can do, where it works, and when it stops working. A **personal key** acts as you, and stops working if yo
When you create a key, you choose its type, which determines what the key can do, where it works, and when it stops working. A **personal key** acts as you, and stops working if yo
Click **Create key**, name the key, choose an [expiration](https://platform.claude.com/docs/en/manage-claude/authentication#key-expiration), and set **Linked account** to yours
Click **Create key**, name the key, select an [expiration](https://platform.claude.com/docs/en/manage-claude/authentication#key-expiration), and set **Linked account** to yours
If the **Create key** button on the API keys page is disabled, your role may not allow you to create keys there. Ask an organization admin to change your role, or to create a servi
+5 −5 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/sdks/typescript
±changed
+25−25
apichanged
cli-sdks-libraries/sdks/typescript
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
This library includes TypeScript definitions for all request parameters and response fields. You may import and use them like so:
This library includes TypeScript definitions for all request parameters and response fields. You can import and use them as follows:
Streaming with `client.messages.stream(...)` exposes various helpers for your convenience including event handlers and accumulation.
+25 −25 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/sdks/ruby
±changed
+16−16
apichanged
cli-sdks-libraries/sdks/ruby
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
The SDK provides helper mechanisms to define structured data classes for tools and let Claude automatically execute them. For detailed documentation on tool use patterns including
The SDK provides helper mechanisms to define structured data classes for tools and let Claude automatically run them. For detailed documentation on tool use patterns including the
When the library is unable to connect to the API, or if the API returns a non-success status code (that is, 4xx or 5xx response), a subclass of `Anthropic::Errors::APIError` is rai
+16 −16 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/sdks/python
±changed
+20−20
apichanged
cli-sdks-libraries/sdks/python
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
Alternatively, you can use `client.messages.create(..., stream=True)` which only returns an iterable of the events in the stream and uses less memory (it doesn't build up a final m
Alternatively, you can use `client.messages.create(..., stream=True)`, which only returns an iterable of the events in the stream and uses less memory (it doesn't build up a final
When the library is unable to connect to the API, or if the API returns a non-success status code (that is, 4xx or 5xx response), a subclass of `APIError` is raised:
+20 −20 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/sdks/php
±changed
+3−3
apichanged
cli-sdks-libraries/sdks/php
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
It is recommended to use the static `with` constructor `Base64ImageSource::with(data: "U3RhaW5sZXNzIHJvY2tz", ...)` and named parameters to initialize value objects.
The recommended way to initialize value objects is the static `with` constructor `Base64ImageSource::with(data: "U3RhaW5sZXNzIHJvY2tz", ...)` with named parameters.
| Cause | Error Type |
+3 −3 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/sdks/java
±changed
+21−21
apichanged
cli-sdks-libraries/sdks/java
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
The tool use feature supports a "strict" mode that guarantees that the JSON output from the AI model will conform to the JSON schema you provide in the input parameters.
The tool use feature supports a "strict" mode that guarantees that the JSON output from the AI model conforms to the JSON schema you provide in the input parameters.
When your tool classes are defined, add them to the message parameters using `MessageCreateParams.Builder.addTool(Class<T>)` and then call them if requested to do so in the AI mode
+21 −21 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/sdks/go
±changed
+21−21
apichanged
cli-sdks-libraries/sdks/go
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
Request structs contain a `.SetExtraFields(map[string]any)` method which can send non-conforming fields in the request body. Extra fields overwrite any struct fields with a matchin
Request structs contain a `.SetExtraFields(map[string]any)` method that can send non-conforming fields in the request body. Extra fields overwrite any struct fields with a matching
Unions are represented as a struct with fields prefixed by "Of" for each of its variants. Only one field can be non-zero. The non-zero field will be serialized.
+21 −21 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/sdks/csharp
±changed
+8−8
apichanged
cli-sdks-libraries/sdks/csharp
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
For authentication options including Workload Identity Federation, see [Authentication](https://platform.claude.com/docs/en/manage-claude/authentication). If your API key is a [per
Using a [`with` expression](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/operators/with-expression) makes it easy to construct the modified options.
You can use a [`with` expression](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/operators/with-expression) to construct the modified options.
* `AnthropicSseException`: thrown for errors encountered during SSE streaming after a successful initial HTTP response.
+8 −8 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/middleware
±changed
+1−1
apichanged
cli-sdks-libraries/middleware
The SDK also accepts a custom HTTP client (for proxy configuration, custom TLS, or connection pooling). Only one HTTP client is used per SDK client; setting it replaces the default
The SDK also accepts a custom HTTP client (for proxy configuration, custom TLS, or connection pooling). Only one HTTP client is used for each SDK client; setting it replaces the de
+1 −1 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/libraries/openai-sdk
±changed
+55−55
apichanged
cli-sdks-libraries/libraries/openai-sdk
description: Anthropic provides a compatibility layer that enables you to use the OpenAI SDK to test the Claude API. With a few code changes, you can quickly evaluate Anthropic mod
description: Anthropic provides a compatibility layer that lets you use the OpenAI SDK to test the Claude API. With a few code changes, you can quickly evaluate Anthropic model cap
This compatibility layer is primarily intended to test and compare model capabilities, and is not considered a long-term or production-ready solution for most use cases. While it
This compatibility layer is primarily intended to test and compare model capabilities, and is not considered a long-term or production-ready solution for most use cases. Although
If you encounter any issues with the OpenAI SDK compatibility feature, please share your feedback via this [compatibility feedback form](https://forms.gle/oQV4McQNiuuNbz9n8).
+55 −55 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/libraries/apple-foundation-models
±changed
+4−4
apichanged
cli-sdks-libraries/libraries/apple-foundation-models
Requests go directly from your app to the Claude API; Apple is not in the request path and does not see prompts or responses. Usage is billed to your Anthropic account at [standard
Requests go directly from your app to the Claude API; Apple is not in the request path and does not see prompts or responses. Usage is billed to your Anthropic account at [standard
Tokens are scoped to your workspace, expire after one hour, and authorize only [Messages API](https://platform.claude.com/docs/en/api/messages/create) calls. They carry no end-user
Tokens are scoped to your workspace, expire after 1 hour, and authorize only [Messages API](https://platform.claude.com/docs/en/api/messages/create) calls. They carry no end-user i
The framework's `tools:` array works unchanged. Conform your types to `Tool`, pass them to `LanguageModelSession`, and the framework invokes them on the device when Claude calls th
+4 −4 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/cli/using
±changed
+16−16
apichanged
cli-sdks-libraries/cli/using
| Flag | Description
| ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------
| `--profile` | Named profile to use for this invocation (equivalent to setting `ANTHROPIC_PROFILE`). See [Switch between workspaces](https://platform.cla
| `--api-key-stdin` | Read the API key from standard input. The flag reads all of standard input, so pass the request body with [flags](https://platform.claude.
| `--auth-token-stdin` | Read the bearer token from standard input. The flag reads all of standard input, so pass the request body with [flags](https://platform.cl
+16 −16 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/cli/sessions-connect
±changed
+2−2
apichanged
cli-sdks-libraries/cli/sessions-connect
When a tool call is waiting for your approval, the input line changes to **Allow tool call?** This happens under an `always_ask` policy, or under `auto` when the server reaches no
When a tool call is waiting for your approval, the input line changes to **Allow tool call?** This occurs under an `always_ask` policy, or under `auto` when the server reaches no d
The URL can be opened once, within two minutes of being printed. Reloading that tab works, but to open the viewer anywhere else, run the command again. Your credentials never leave
The URL can be opened once, within 2 minutes of being printed. Reloading that tab works, but to open the viewer anywhere else, run the command again. Your credentials never leave t
+2 −2 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/cli/scripting
±changed
+2−2
apichanged
cli-sdks-libraries/cli/scripting
`--transform id --raw-output` on a list endpoint emits one bare ID per line, so standard tools such as `head` and `xargs` apply directly. Capture the first result, then pass it to
`--transform id --raw-output` on a list endpoint emits one bare ID on each line, so standard tools such as `head` and `xargs` apply directly. Capture the first result, then pass it
Claude Code shells out to `ant`, parses the structured output, and reasons over the results (no custom integration code required).
Claude Code runs `ant` commands, parses the structured output, and reasons over the results (no custom integration code required).
+2 −2 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/cli/quickstart
±changed
+1−1
apichanged
cli-sdks-libraries/cli/quickstart
Version-control API resources, scripting patterns, and use from Claude Code
Version control for API resources, scripting patterns, and use from Claude Code
+1 −1 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/cli/authentication
±changed
+4−4
apichanged
cli-sdks-libraries/cli/authentication
The `ant` CLI supports several credential sources. The [Quickstart](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/quickstart#authentication) covers the one-command hap
The `ant` CLI supports several credential sources. The [Quickstart](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/quickstart#authentication) covers the one-command log
To override the key for a single invocation, pass [`--api-key-stdin`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/using#global-flags) and pipe the key to the command
To override the key for a single run, pass [`--api-key-stdin`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/using#global-flags) and pipe the key to the command. To po
If you are using an API key scoped to multiple workspaces, such as a [personal or service account key](https://platform.claude.com/docs/en/manage-claude/authentication#key-types),
+4 −4 lines
Recorded here 21 Oct 2026 19:37 UTC
api
cli-sdks-libraries/cli/apply
±changed
+1−1
apichanged
cli-sdks-libraries/cli/apply
Commit it with your files. It's how the next run, on your machine or in CI, finds these resources instead of creating them again, and it's where you read an agent's ID to [start a
Commit it with your files. It's how the next run, on your machine or in CI, finds these resources instead of creating them again, and it's where you read an agent's ID to [start a
+1 −1 lines
Recorded here 21 Oct 2026 19:37 UTC
api
claude_api_primer
±changed
+12−12
apichanged
claude_api_primer
Interleaved thinking enables Claude to think between tool calls, reasoning about tool results before determining the next step.
Interleaved thinking allows Claude to think between tool calls, reasoning about tool results before determining the next step.
| Parameter | Description |
| -------------- | --------------------------------------------------------------------------------------------------- |
| `name` | The name of the tool. Must match the regex `^[a-zA-Z0-9_-]{1,128}$`. |
+12 −12 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/working-with-messages
±changed
+6−6
apichanged
build-with-claude/working-with-messages
The `temperature`, `top_p`, and `top_k` sampling parameters are not supported on Claude 4.7 and later models and Claude Mythos Preview, or on any model starting with [API version
The `temperature`, `top_p`, and `top_k` sampling parameters are not supported on Claude 4.7 and later models and Claude Mythos Preview, or on any model starting with [API version
model: "claude-opus-5-5",
model: Anthropic::Model::CLAUDE_OPUS_5_5,
model: "claude-opus-5-5",
+6 −6 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/vision-coordinates
±changed
+9−9
apichanged
build-with-claude/vision-coordinates
**Claude works best with absolute pixel coordinates.** Ask for them explicitly in your prompt. For example: *"Return the bounding box of each table as `[x1, y1, x2, y2]` (top-lef
**Claude works best with absolute pixel coordinates.** Ask for them explicitly in your prompt. For example: *"Return the bounding box of each table as `[x1, y1, x2, y2]` (top-lef
Coordinates follow the standard image convention: the origin `(0, 0)` is the top-left corner of the image, with x increasing to the right and y increasing downward. The coordinates
Coordinates follow the standard image convention: the origin `(0, 0)` is the top-left corner of the image, with x increasing to the right and y increasing downward. The coordinates
The most reliable approach is to resize your image yourself before uploading, so the image you have is exactly the image Claude sees and the coordinates Claude returns need no conv
+9 −9 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/vision
±changed
+18−18
apichanged
build-with-claude/vision
description: Claude's vision capabilities allow it to understand and analyze images, opening up exciting possibilities for multimodal interaction.
description: Claude's vision capabilities allow it to process and analyze images, opening up exciting possibilities for multimodal interaction.
* [Playground](https://platform.claude.com/playground) in the Claude Console. Add images directly to any User message block.
* [Playground](https://platform.claude.com/playground) in the Claude Console. Add images directly to any **User** message block.
The maximum number of images per message or request is:
+18 −18 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/token-counting
±changed
+3−3
apichanged
build-with-claude/token-counting
Token counts may include tokens added automatically by Anthropic for system optimizations. **You are not billed for system-added tokens**. Billing reflects only your content.
Token counts might include tokens added automatically by Anthropic for system optimizations. **You are not billed for system-added tokens**. Billing reflects only your content.
* 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/thi
* **Current** assistant turn thinking **does** count toward your input tokens
* 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/thi
+3 −3 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/thinking-troubleshooting
±changed
+18−18
apichanged
build-with-claude/thinking-troubleshooting
This happens because the model you requested has removed extended thinking (see the [per-model configuration table](https://platform.claude.com/docs/en/build-with-claude/thinking-t
This occurs because the model you requested has removed extended thinking (see the [per-model configuration table](https://platform.claude.com/docs/en/build-with-claude/thinking-tr
This happens because thinking is always on for all of these models (see the [per-model configuration table](https://platform.claude.com/docs/en/build-with-claude/thinking-troublesh
This occurs because thinking is always on for all of these models (see the [per-model configuration table](https://platform.claude.com/docs/en/build-with-claude/thinking-troublesho
This happens because only Claude Sonnet 5.5 accepts `thinking: {type: "between_tools"}` (see the [per-model configuration table](https://platform.claude.com/docs/en/build-with-clau
+18 −18 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/thinking-tool-workflows
±changed
+8−8
apichanged
build-with-claude/thinking-tool-workflows
model: "claude-opus-5-5",
model: Anthropic::Model::CLAUDE_OPUS_5_5,
You should see `thinking` and `tool_use` blocks in the response content on a run where Claude chose to think (on simpler requests, adaptive mode may skip the thinking block). A
You should see `thinking` and `tool_use` blocks in the response content on a run that includes thinking (on simpler requests, adaptive mode may skip the thinking block). A note
# Call your actual weather API, here is where your actual API call would go
+8 −8 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/thinking-steering-and-cost
±changed
+25−25
apichanged
build-with-claude/thinking-steering-and-cost
Claude's thinking is adaptive: the model evaluates each request and determines whether to think and how much. You set an intent, optionally specify the effort, and the model alloca
Claude's thinking is adaptive: the model evaluates each request and determines whether to think and how much. You set an intent, optionally specify the effort, and the model alloca
To learn how to turn thinking on, how to read thinking output, and about [thinking output on Claude Fable 5 and Claude Mythos 5](https://platform.claude.com/docs/en/build-with-clau
To learn how to turn thinking on and how to read thinking output, see the [Thinking](https://platform.claude.com/docs/en/build-with-claude/thinking) overview. This page covers how
Thinking is optional for the model. On each request, Claude weighs the complexity of the input and determines whether deeper reasoning would improve the answer. A simple factual qu
+25 −25 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/thinking
±changed
+31−31
apichanged
build-with-claude/thinking
A model that answers in a single pass has to get everything right on the first try: no scratch work, no checking, no changing course halfway through. For a proof, a tricky bug, or
Thinking removes that constraint. When thinking is active, Claude works through the problem in its own words before answering: it restates what is being asked, tries approaches, ch
A model that answers in a single pass has to get everything right on the first try: no scratch work, no checking, no changing approach halfway through. For a proof, a tricky bug, o
+31 −31 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/task-budgets
±changed
+13−13
apichanged
build-with-claude/task-budgets
Task budgets let you tell Claude how many tokens it has for a full agentic loop, including thinking, tool calls, tool results, and output. The model sees a running countdown and us
Task budgets let you tell Claude how many tokens it has for a full agentic loop, including thinking, tool calls, tool results, and output. The model receives a running countdown an
Task budgets complement the [effort parameter](https://platform.claude.com/docs/en/build-with-claude/effort): effort controls how thoroughly Claude reasons about each step, while t
Task budgets complement the [effort parameter](https://platform.claude.com/docs/en/build-with-claude/effort): effort controls how thoroughly Claude reasons about each step, whereas
Claude sees a budget-countdown marker injected server-side throughout the conversation. The marker shows how many tokens remain in the current agentic loop and updates as the model
+13 −13 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/structured-outputs
±changed
+58−54
apichanged
build-with-claude/structured-outputs
Without structured outputs, Claude can generate malformed JSON responses or invalid tool inputs that break your applications. Even with careful prompting, you may encounter:
Without structured outputs, Claude can generate malformed JSON responses or invalid tool inputs that break your applications. Even with careful prompting, you might encounter:
The example above outputs:
The previous example outputs:
The example above outputs:
+58 −54 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/streaming
±changed
+39−39
apichanged
build-with-claude/streaming
The `.stream()` (java: `.createStreaming()`; csharp: `.CreateStreaming()`; go: `.NewStreaming()`; php: `->createStream()`) call keeps the HTTP connection alive with server-sent eve
The `.stream()` (java: `.createStreaming()`; csharp: `.CreateStreaming()`; go: `.NewStreaming()`; php: `->createStream()`) call keeps the HTTP connection alive with server-sent eve
Event streams may also include any number of `ping` events.
Event streams might also include any number of `ping` events.
The API may occasionally send [errors](https://platform.claude.com/docs/en/api/errors) in the event stream. For example, during periods of high usage, you may receive an `overloade
+39 −39 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/skills-guide
±changed
+19−19
apichanged
build-with-claude/skills-guide
* [Skill Management API Reference](https://platform.claude.com/docs/en/api/skills/list) - CRUD operations for Skills
* [Skill Versions API Reference](https://platform.claude.com/docs/en/api/skills/versions/list) - Version management
* [Skill management API reference](https://platform.claude.com/docs/en/api/skills/list) - CRUD operations for Skills
* [Skill versions API reference](https://platform.claude.com/docs/en/api/skills/versions/list) - Version management
Skills may perform operations that require multiple turns. Handle `pause_turn` stop reasons:
+19 −19 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/search-results
±changed
+10−10
apichanged
build-with-claude/search-results
description: Enable natural citations for RAG applications by providing search results with source attribution
description: Get natural citations for RAG applications by providing search results with source attribution
1. **From tool calls:** Your custom tools return search results, enabling dynamic RAG applications
2. **As top-level content:** You provide search results directly in user messages for pre-fetched or cached content
1. **From tool calls:** Your custom tools return search results, which lets you build dynamic RAG applications.
+10 −10 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/refusals-and-fallback
±changed
+23−23
apichanged
build-with-claude/refusals-and-fallback
* [Stop reasons and fallback](https://platform.claude.com/docs/en/build-with-claude/handling-stop-reasons): the full list of `stop_reason` values.
* [Fallback credit](https://platform.claude.com/docs/en/build-with-claude/fallback-credit): how to avoid paying the prompt-cache cost twice when you build the retry yourself.
* [SDK middleware](https://platform.claude.com/docs/en/cli-sdks-libraries/middleware): the SDK helper that wraps all of this.
* [Fallback and billing cookbook](https://platform.claude.com/cookbook/fable-5-fallback-billing-guide): a worked end-to-end example.
* [Stop reasons and fallback](https://platform.claude.com/docs/en/build-with-claude/handling-stop-reasons): the full list of `stop_reason` values
+23 −23 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/prompt-engineering/prompting-claude-sonnet-5-5
±changed
+14−14
apichanged
build-with-claude/prompt-engineering/prompting-claude-sonnet-5-5
Lower effort also changes how the model finishes agentic work. At `low`, it keeps its thinking short and can skip verifying a change. See [Verification on coding tasks](https://pla
Lower effort also changes how the model completes agentic work. At `low`, it keeps its thinking short and can skip verifying a change. See [Verification on coding tasks](https://pl
**Unrequested additions when coding.** The model tends to add tests, documentation, and small supporting files that fit your repository's conventions, even when you don't ask for t
**Unrequested additions when coding.** The model tends to add tests, documentation, and small supporting files that fit your repository's conventions, even when you don't ask for t
**Thoroughness at `xhigh` and `max` effort.** At these levels the model is especially thorough. After it finishes a task, it can start its own rounds of review and verification, so
+14 −14 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/prompt-engineering/prompting-claude-sonnet-5
±changed
+10−10
apichanged
build-with-claude/prompt-engineering/prompting-claude-sonnet-5
If your product depends on a certain style or verbosity of output, you may need to tune your prompts. As an example, to decrease verbosity, you might add:
If your product depends on a certain style or verbosity of output, you might need to tune your prompts. As an example, to decrease verbosity, you might add:
Claude Sonnet 5 respects effort levels strictly, especially at the low end. At `low` and `medium`, the model scopes its work to what was asked rather than going above and beyond. T
Claude Sonnet 5 respects effort levels strictly, especially at the low end. At `low` and `medium`, the model scopes its work to what was asked rather than going beyond the request.
The triggering behavior for adaptive thinking is steerable. If you find the model emitting thinking blocks more often than you'd like, which can happen with large or complex system
+10 −10 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/prompt-engineering/prompting-claude-opus-5-5
±changed
+20−20
apichanged
build-with-claude/prompt-engineering/prompting-claude-opus-5-5
description: "Behavioral differences from Claude Opus 5 and the prompting and harness patterns that address them: effort calibration, thinking behavior in API integrations and chat
description: "Behavioral differences from Claude Opus 5 and the prompting and harness patterns that address them: effort calibration, thinking behavior in API integrations and chat
Claude Opus 5.5 generates output tokens more than 30 percent faster than Claude Opus 5 and tends to finish the same task with fewer tokens. Existing Claude Opus 5 prompts should pe
Claude Opus 5.5 generates output tokens more than 30 percent faster than Claude Opus 5 and tends to complete the same task with fewer tokens. Existing Claude Opus 5 prompts should
* Unsure which effort level to run, or turns run longer and cost more than they did on Claude Opus 5: [Calibrate effort](https://platform.claude.com/docs/en/build-with-claude/promp
+20 −20 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/prompt-engineering/prompting-claude-opus-5
±changed
+8−8
apichanged
build-with-claude/prompt-engineering/prompting-claude-opus-5
* **Agentic coding:** Claude Opus 5 is strongest on difficult coding tasks: multi-file features, larger refactors, and end-to-end feature work. It completes full tasks rather than
* **Code review and bug-finding:** Claude Opus 5 reviews code with high precision and recall: it finds real bugs at a high rate per pass, and its additional findings are mostly rea
* **Agentic coding:** Claude Opus 5 is strongest on difficult coding tasks: multifile features, larger refactors, and end-to-end feature work. It completes full tasks rather than l
* **Code review and bug-finding:** Claude Opus 5 reviews code with high precision and recall: it finds real bugs at a high rate per pass, and its additional findings are mostly rea
* **Vision:** Claude Opus 5 is strong on chart, document, and diagram understanding, and on UI and frontend visual replication. Re-validate any prompt-side vision workarounds you t
+8 −8 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/prompt-engineering/prompting-claude-opus-4-8
±changed
+11−11
apichanged
build-with-claude/prompt-engineering/prompting-claude-opus-4-8
Claude Opus 4.8 calibrates response length to how complex it judges the task to be, rather than defaulting to a fixed verbosity. This usually means shorter answers on simple lookup
Claude Opus 4.8 calibrates response length to the complexity of the task, rather than defaulting to a fixed verbosity. This usually means shorter answers on simple lookups and much
If your product depends on a certain style or verbosity of output, you may need to tune your prompts. As an example, to decrease verbosity, you might add:
If your product depends on a certain style or verbosity of output, you might need to tune your prompts. As an example, to decrease verbosity, you might add:
* **`max`:** Max effort can deliver performance gains in some use cases, but may show diminishing returns from increased token usage. This setting can also sometimes be prone to ov
+11 −11 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/prompt-engineering/prompting-claude-haiku-5-5
±changed
+4−4
apichanged
build-with-claude/prompt-engineering/prompting-claude-haiku-5-5
The model also sometimes needs an extra nudge to search. This happens most at `low` effort and with long system prompts. To fix it, add this text directly after the date:
The model also sometimes needs an extra nudge to search. This occurs most at `low` effort and with long system prompts. To fix it, add this text directly after the date:
Claude Haiku 5.5 sometimes writes reasoning-like text in the reply that users see. This happens more often with thinking off or at `low` effort. If you see this behavior, switch to
Claude Haiku 5.5 sometimes writes reasoning-like text in the reply that users see. This occurs more often with thinking off or at `low` effort. If you see this behavior, switch to
* `frontier_llm`: the request could assist the development of competing AI models.
+4 −4 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/prompt-engineering/prompting-claude-fable-5-1
±changed
+18−18
apichanged
build-with-claude/prompt-engineering/prompting-claude-fable-5-1
* One tool call per turn in agent loops: [Batch independent tool calls in agent loops](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/prompting-claude-fab
* One tool call for each turn in agent loops: [Batch independent tool calls in agent loops](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/prompting-claud
Prompts, skills, and tool descriptions that ask the model to write out its thinking or reasoning may be declined with the `reasoning_extraction` category. Ask for a short explana
Prompts, skills, and tool descriptions that ask the model to write its thinking or reasoning might be declined with the `reasoning_extraction` category. Ask for a short explanati
First, check that your client receives progress updates at all. The model's short notes between tool calls, what it just found and what it's doing next, come back as [progress-upda
+18 −18 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/prompt-engineering/prompting-claude-fable-5
±changed
+7−7
apichanged
build-with-claude/prompt-engineering/prompting-claude-fable-5
Claude Fable 5 has several behavioral differences from Claude Opus 4.8 that may require prompt or scaffolding updates. Capability improvements at this level are also a good prompt
Claude Fable 5 has several behavioral differences from Claude Opus 4.8 that might require prompt or scaffolding updates. Capability improvements at this level are also a good promp
Claude Fable 5 runs safety classifiers that target offensive cybersecurity techniques (such as building exploits, malware, or attack tooling), biology and life sciences content (
Claude Fable 5 runs safety classifiers that target offensive cybersecurity techniques (such as building exploits, malware, or attack tooling), biology and life sciences content (
* **Code review and debugging.** Bug-finding recall (outside the cybersecurity domains the safety classifiers cover) is noticeably higher than Claude Opus 4.8, including search acr
+7 −7 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/prompt-engineering/overview
±changed
+2−2
apichanged
build-with-claude/prompt-engineering/overview
If not, spend time establishing that first. Check out [Define success criteria and build evaluations](https://platform.claude.com/docs/en/test-and-evaluate/develop-tests) for tips
If not, spend time establishing that first. See [Define success criteria and build evaluations](https://platform.claude.com/docs/en/test-and-evaluate/develop-tests) for tips and gu
This guide focuses on success criteria that are controllable through prompt engineering. Not every success criteria or failing eval is best solved by prompt engineering. For exampl
This guide focuses on success criteria that are controllable through prompt engineering. Not every success criterion or failing eval is best solved by prompt engineering. For examp
+2 −2 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/prompt-engineering/claude-prompting-best-practices
±changed
+51−51
apichanged
build-with-claude/prompt-engineering/claude-prompting-best-practices
Claude responds well to clear, explicit instructions. Being specific about your desired output can help enhance results. If you want "above and beyond" behavior, explicitly request
Claude responds well to clear, explicit instructions. Being specific about the output you want can help enhance results. If you want Claude to do more than the task strictly requir
**Golden rule:** Show your prompt to a colleague with minimal context on the task and ask them to follow it. If they'd be confused, Claude will be too.
* Be specific about the desired output format and constraints.
+51 −51 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/prompt-caching
±changed
+65−65
apichanged
build-with-claude/prompt-caching
* **[Automatic caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#automatic-caching)**: Add a single `cache_control` field at the top level of your reque
* **[Explicit cache breakpoints](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#explicit-cache-breakpoints)**: Place `cache_control` directly on individual co
* **[Automatic caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#automatic-caching):** Add a single `cache_control` field at the top level of your reque
* **[Explicit cache breakpoints](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#explicit-cache-breakpoints):** Place `cache_control` directly on individual co
3. Otherwise, it processes the full prompt and caches the prefix once the response begins.
+65 −65 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/preserved-thinking
±changed
+43−44
apichanged
build-with-claude/preserved-thinking
* [Drops some `thinking` blocks and keeps later ones](https://platform.claude.com/docs/en/build-with-claude/preserved-thinking#append-assistant-turns-exactly-as-returned), or remov
* [Drops some `thinking` blocks and keeps later ones](https://platform.claude.com/docs/en/build-with-claude/preserved-thinking#append-assistant-turns-exactly-as-returned), or remov
Keep sending the full history on every request, thinking blocks included, and let the API drop what the current model can't read. The API never edits your `messages` array, so the
Keep sending the full history on every request, thinking blocks included, and let the API drop what the current model can't read. The API never edits your `messages` array, so the
Keep `system` and `tools` fixed for the session and treat `messages` as append-only. The same discipline keeps the prefix stable for [prompt caching](https://platform.claude.com/do
+43 −44 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/pdf-support
±changed
+22−22
apichanged
build-with-claude/pdf-support
* Assisting with document translation
* Helping with document translation
## Before you begin
## Before you start
| Requirement | Limit |
+22 −22 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/overview
±changed
+18−18
apichanged
build-with-claude/overview
* **Tool infrastructure:** Handles discovery and orchestration at scale.
* **Context management:** Keeps long-running sessions efficient.
* **Tool infrastructure:** Handle discovery and orchestration at scale.
* **Context management:** Keep long-running sessions efficient.
| [Adaptive thinking](https://platform.claude.com/docs/en/build-with-claude/thinking) | Let Claude dynamically determine when and how much to think. The only thinki
+18 −18 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/multilingual-support
±changed
+1−1
apichanged
build-with-claude/multilingual-support
1. **Provide clear language context:** Although Claude can detect the target language automatically, explicitly stating the desired input and output languages improves reliability.
1. **Provide clear language context:** Although Claude can detect the target language automatically, explicitly stating the input and output languages you want improves reliability
+1 −1 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/mid-conversation-system-messages
±changed
+15−15
apichanged
build-with-claude/mid-conversation-system-messages
* **Declare what you know up front.** A tool you know about at the first request belongs in `tools`, with `defer_loading: true` and a later `tool_addition` reference if the model s
* **Declare what you know up front.** A tool you know about at the first request belongs in `tools`, with `defer_loading: true` and a later `tool_addition` reference if it shouldn'
* The tool definitions sent after the first user message that are still available after any message total more than 4 MB (4,194,304 bytes).
* The rendered tool text is larger than 4 MB (4,194,304 bytes).
* The tool definitions sent after the first user message that are still available after any message total more than 4 MB (4,194,304 bytes).
+15 −15 lines
Recorded here 21 Oct 2026 19:37 UTC
api
build-with-claude/mid-conversation-effort-example
±changed
+5−5
apichanged
build-with-claude/mid-conversation-effort-example
The example is a single file. The constants control the effort level, the fan-out shape, and how often the mode refresher is re-sent. `MAX_CONCURRENT` caps how many subagents run a
The example is a single file. The constants control the effort level, the fan-out shape, and how often the mode refresher is re-sent. `MAX_CONCURRENT` caps how many subagents run a
A fan-out that spawns dozens of subagents is expensive to restart from scratch. A small content-addressed journal makes it idempotent: before dispatching a subagent, look up the SH
A fan-out that spawns dozens of subagents is expensive to restart from the beginning. A small content-addressed journal makes it idempotent: before dispatching a subagent, look up
The fan-out accepts up to `MAX_TOTAL_SUBTASKS` prompts, runs them through the journal with at most `MAX_CONCURRENT` in flight (sequential in the PHP port), and isolates failures so
+5 −5 lines
Recorded here 21 Oct 2026 19:37 UTC
Nothing on this page matches that. Press Enter to search every page of the ledger.