smithy-json
JSON serialization and deserialization support for Smithy tooling.
What it is and what it does
smithy-json is a low-level JSON handling module for the Smithy Python code generation ecosystem. It provides the serialization and deserialization layer that generated service clients use to handle JSON payloads. The package is part of a larger toolchain (Smithy Python) that generates asynchronous Python service clients from Smithy service models; this module specifically handles the JSON protocol support.
The package is in early development (pre-alpha) and is not intended for production use. It depends on ijson and smithy-core to perform its work. Most developers will encounter this package indirectly as a runtime dependency of generated Smithy clients rather than using it directly in their own code.
Use it for:
- Runtime dependency for generated Smithy service clients that communicate over restJson1 protocol
- Part of the Smithy Python code generation pipeline when building clients for custom Smithy-defined services
- JSON payload handling in asynchronous service client implementations generated from Smithy models
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides JSON serialization and deserialization support for Smithy-based service client code generation in Python.
Yes, if you are using generated Smithy Python clients or actively developing with the Smithy Python code generation toolchain. No, if you need stable production-ready JSON handling—the pre-alpha status and unstable interfaces make this unsuitable for production systems. Install only as a transitive dependency of a generated client or as part of active Smithy development.
Install
smithy-json on PyPI
pip
pip install smithy-jsonuv
uv add smithy-jsonpoetry
poetry add smithy-jsonInstalling smithy-json
Before you install
Active maintenance with recent releases; low install friction. Pre-alpha status means interfaces remain unstable and the package is not recommended for production use yet.
License in practice
Apache License 2.0 (permissive) allows commercial and private use with minimal restrictions.
Quickstart
# Install
pip install smithy-json
# Import and use (typically within generated Smithy client code)
from smithy_json import SomeJsonHandler # exact API depends on generated client
# Usage is typically indirect via generated service clients
Requires Python 3.12 or newer; pre-alpha interfaces subject to change without notice.
Verify before relying
- Whether this package can be used standalone or only as part of the full Smithy Python code generation workflow
- Performance characteristics or throughput limits for JSON serialization with ijson and smithy-core
- Stability timeline or roadmap for moving beyond pre-alpha status
Package facts
| License | Apache License 2.0 (permissive) |
| Python support | supports the current Python release (>=3.12) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — ijson, smithy-core |
| Maintenance | actively maintained — 52 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 423,382/month — #6,773 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: smithy_json-0.2.3-py3-none-any.whl
Keywords: json, sdk, smithy
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
smithy-aws-event-streamProvides low-level Python components for…
permissive · top 15,000 on PyPI
smithy-coreProvides core Python interfaces and components…
permissive · top 15,000 on PyPI
smithy-aws-coreProvides core runtime components and protocol…
permissive · top 15,000 on PyPI
smithy-httpProvides HTTP primitives, interfaces, and…
permissive · top 15,000 on PyPI
ocp-tessellateConverts OCP (OpenCascade Python bindings) CAD…
permissive · top 15,000 on PyPI
aws_sdk_bedrock_runtimeProvides a Python client for interacting with…
permissive · top 15,000 on PyPI
plum-pyTransforms byte sequences into Python objects…
permissive · top 15,000 on PyPI
chargehoundChargehound provides Python bindings to…
permissive · top 15,000 on PyPI
vsdxvsdx reads, modifies, and creates Microsoft…
permissive · top 15,000 on PyPI