_json.py — anthropic-sdk-python Source File
Architecture documentation for _json.py, a python file in the anthropic-sdk-python codebase. 6 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR add5a69b_d84f_deef_9958_765008080340["_json.py"] c96ee5ad_7068_af50_518d_eabdd7af5c4e["_compat.py"] add5a69b_d84f_deef_9958_765008080340 --> c96ee5ad_7068_af50_518d_eabdd7af5c4e 28b0c811_20f6_fc4a_4b48_7fb9e87bf7e5["json"] add5a69b_d84f_deef_9958_765008080340 --> 28b0c811_20f6_fc4a_4b48_7fb9e87bf7e5 89ddcdd7_3ae1_4c7b_41bb_9f1e25f16875["typing"] add5a69b_d84f_deef_9958_765008080340 --> 89ddcdd7_3ae1_4c7b_41bb_9f1e25f16875 7e1d14c5_475e_409c_7c4e_1274f9d40aa9["datetime"] add5a69b_d84f_deef_9958_765008080340 --> 7e1d14c5_475e_409c_7c4e_1274f9d40aa9 37c05070_ca59_d596_7250_de9d1939227f["typing_extensions"] add5a69b_d84f_deef_9958_765008080340 --> 37c05070_ca59_d596_7250_de9d1939227f 21de8837_7dae_989e_fdbb_1415c0770d90["pydantic"] add5a69b_d84f_deef_9958_765008080340 --> 21de8837_7dae_989e_fdbb_1415c0770d90 style add5a69b_d84f_deef_9958_765008080340 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import json
from typing import Any
from datetime import datetime
from typing_extensions import override
import pydantic
from .._compat import model_dump
def openapi_dumps(obj: Any) -> bytes:
"""
Serialize an object to UTF-8 encoded JSON bytes.
Extends the standard json.dumps with support for additional types
commonly used in the SDK, such as `datetime`, `pydantic.BaseModel`, etc.
"""
return json.dumps(
obj,
cls=_CustomEncoder,
# Uses the same defaults as httpx's JSON serialization
ensure_ascii=False,
separators=(",", ":"),
allow_nan=False,
).encode()
class _CustomEncoder(json.JSONEncoder):
@override
def default(self, o: Any) -> Any:
if isinstance(o, datetime):
return o.isoformat()
if isinstance(o, pydantic.BaseModel):
return model_dump(o, exclude_unset=True, mode="json", by_alias=True)
return super().default(o)
Domain
Subdomains
Functions
Classes
Dependencies
- _compat.py
- datetime
- json
- pydantic
- typing
- typing_extensions
Source
Frequently Asked Questions
What does _json.py do?
_json.py is a source file in the anthropic-sdk-python codebase, written in python. It belongs to the AnthropicClient domain, SyncAPI subdomain.
What functions are defined in _json.py?
_json.py defines 1 function(s): openapi_dumps.
What does _json.py depend on?
_json.py imports 6 module(s): _compat.py, datetime, json, pydantic, typing, typing_extensions.
Where is _json.py in the architecture?
_json.py is located at src/anthropic/_utils/_json.py (domain: AnthropicClient, subdomain: SyncAPI, directory: src/anthropic/_utils).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free