Anthropic Python SDK
The official Python SDK released by Anthropic for calling the Claude series of large language model APIs. It supports enterprise-level permission management, a plugin marketplace, and Managed Agents, serving as the primary toolkit for developers integrating with Claude.
Core Facts
Timeline (last 90 days)
At the API level, a new user-profiles-2026-09-04 beta value and an external_user_details field in user profiles have been added.
After upgrading, developers can correct credential file permissions by running chmod 600 <credential file path> to eliminate errors.
idempotency_key is retained as a deprecated no-op, so existing code will not immediately error but should be prepared for migration.
In the new version, extra_body is now merged before client hooks run.
v1.5.0 fixes an issue where incomplete tool input JSON during streaming parsing of tool calls could remain in content blocks and cause parsing exceptions.
The new version adds two exception types: CredentialsError and IdentityTokenFileError.
The SDK will now reject credential files accessible by user groups or other users, and will actively report an error if credential file permissions are too permissive.
The Web fetch tool adds a content_too_large error code, used to return a clear error type when fetched web content exceeds the processing limit.
The new version adds Message.to_param() and BetaMessage.to_param() methods, which can convert existing message objects back into parameter form.
In v1.5.0, messages.create, parse, stream, and count_tokens can now directly accept tool objects without manually converting them to a specific parameter structure.
40 more timeline events
All Facts (20)
Anthropic's official Python SDK (anthropic-sdk-python) released version v1.11.0.
90%UnverifiedAfter upgrading, developers can correct credential file permissions by running chmod 600 <credential file path> to eliminate errors.
50%Unverifiedv1.4.0 refreshes the platform model IDs in the example code.
50%Unverifiedv1.4.0 throws a clear error message when a user incorrectly passes an httpx object instead of the expected httpx2 object.
50%UnverifiedUpgrading from v1.3.0 to v1.4.0 is a backward-compatible minor version update with no breaking changes recorded.
50%UnverifiedInternal changes in v1.4.0 include bundling the mock server specification, cleaning up code comments, and fixing mypy unreachable errors in the detect-breaking-changes script.
50%UnverifiedTeams using the multi-workspace feature or relying on usage statistics for cost management are advised to upgrade to v1.4.0 as soon as possible.
50%Unverifiedv1.4.0 fixes an abnormal merge logic for custom-code in the messages resource.
50%Unverifiedv1.6.0 fixed the retry logic so the client respects Retry-After values exceeding 60 seconds, which previously would trigger premature retries due to an upper limit.
50%UnverifiedDocumentation improvements in v1.6.0 include converting most docstrings to Markdown format and clarifying that the session_thread_id field is informational only.
50%UnverifiedThe SDK raised the minimum version requirement for anyio to 4.1 and upgraded components such as aiohttp, pygments, and pytest in the development lock file.
50%UnverifiedFor invalid Retry-After values, the SDK now ignores them directly and validates maxRetries.
50%UnverifiedThe async client now retries on connection errors, and a blocking issue in the coroutine retry loop has been fixed.
50%Unverifiedv1.7.0 set Ruff's target version to Python 3.10 and passed the strict= parameter to zip() in MCP tool helper functions.
50%UnverifiedWhen multiple anthropic-beta values are passed in, the SDK now concatenates them with a comma and no space.
50%UnverifiedThe SDK can now correctly accept union types in the form X | Y for response parsing, and no longer raises a TypeError when encountering X | Y fields with unknown data.
50%UnverifiedOn the Bedrock integration side, the SDK now raises API errors for exception frames and error frames in the eventstream, rather than silently handling them.
50%Unverifiedv1.7.0 requires Pydantic 1.10 or higher.
50%UnverifiedThe SDK supports running tool calls while the response is being streamed (optional), reducing user-perceived wait time.
50%UnverifiedThe SDK introduces a between_tools thinking type, allowing the model to reason between consecutive tool calls.
50%