skillfed

amazon-ion

Amazon Ion

amazon-ion v0.14.6 19.5M downloads/30d#1,062 on PyPI
Permissive license Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for… (full text in the JSON record) Active released

What it is and what it does

amazon-ion is a Python implementation of Amazon Ion, a data serialization format that combines JSON-like readability with binary efficiency and richer type semantics. It provides a simpleion module with four familiar APIs (dump, dumps, load, loads) that mirror Python's json module, making it easy for developers already comfortable with JSON parsing to work with Ion data.

The package handles both text and binary Ion formats, with optional C extension acceleration for the simpleion module. It depends on jsonconversion for type conversion and is actively maintained with prebuilt wheels for modern Python versions (3.9+) across multiple platforms, though it also supports compilation from source.

Use it for:

  • Serialize and deserialize Ion-formatted data in AWS services or applications that use Ion as their primary data interchange format.
  • Parse Ion text format (e.g., '{abc: 123}') into Python objects without learning a new API beyond json-like methods.
  • Store or transmit data in Ion binary format for more compact representation than JSON while retaining self-describing structure.
  • Migrate from JSON to Ion in existing Python applications by swapping json module calls with amazon.ion.simpleion equivalents.
  • Work with Ion's extended type system (timestamps, decimals, symbols) when JSON's limited types are insufficient.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Parses and serializes Amazon Ion, a self-describing data format that extends JSON with richer type support and binary encoding, using a Python API modeled on the standard library's json module.

Yes, if you work with Amazon Ion data or AWS services that use Ion. The API is familiar to JSON users, maintenance is active, and no known vulnerabilities exist. Medium install friction is acceptable for most environments given the availability of prebuilt wheels. Not necessary if you only work with JSON or other formats.

Install

amazon-ion on PyPI

pip

pip install amazon-ion

uv

uv add amazon-ion

poetry

poetry add amazon-ion

Installing amazon-ion

Before you install

Medium install friction due to optional C extension compilation, but prebuilt wheels cover common platforms (macOS, Linux, Windows across x86_64 and ARM architectures). Active maintenance with a release 49 days ago.

License in practice

Apache License 2.0 permits commercial and private use with attribution; derivative works must carry prominent modification notices and include a copy of the license.

Quickstart

pip install amazon-ion
import amazon.ion.simpleion as ion
obj = ion.loads('{abc: 123}')
print(ion.dumps(obj, binary=False))

Requires Python 3.9 or later; C extension is optional but improves simpleion performance.

Verify before relying

  • Whether the optional C extension is automatically built and used when wheels are unavailable
  • Current status of known test vector skips listed in test_vectors.py

Package facts

License Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for… (full text in the JSON record) (permissive)
Python support supports the current Python release (>=3.9)
Install friction medium — platform-specific wheel
Runtime dependencies 1 — jsonconversion
Maintenance actively maintained — 49 days since the last release
First released
Downloads 19,541,701/month — #1,062 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: amazon_ion-0.14.6-cp310-cp310-macosx_10_9_x86_64.whl; amazon_ion-0.14.6-cp310-cp310-macosx_11_0_arm64.whl; amazon_ion-0.14.6-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl; amazon_ion-0.14.6-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; amazon_ion-0.14.6-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; amazon_ion-0.14.6-cp310-cp310-musllinux_1_2_aarch64.whl; amazon_ion-0.14.6-cp310-cp310-musllinux_1_2_i686.whl; amazon_ion-0.14.6-cp310-cp310-musllinux_1_2_x86_64.whl; amazon_ion-0.14.6-cp310-cp310-win_amd64.whl; amazon_ion-0.14.6-cp311-cp311-macosx_10_9_x86_64.whl; amazon_ion-0.14.6-cp311-cp311-macosx_11_0_arm64.whl; amazon_ion-0.14.6-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl; amazon_ion-0.14.6-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; amazon_ion-0.14.6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl; amazon_ion-0.14.6-cp311-cp311-musllinux_1_2_aarch64.whl; amazon_ion-0.14.6-cp311-cp311-musllinux_1_2_i686.whl; amazon_ion-0.14.6-cp311-cp311-musllinux_1_2_x86_64.whl; amazon_ion-0.14.6-cp311-cp311-win_amd64.whl; amazon_ion-0.14.6-cp312-cp312-macosx_10_13_x86_64.whl; amazon_ion-0.14.6-cp312-cp312-macosx_11_0_arm64.whl

Tags

amazon ion parser pythonion format serializationself-describing data formation binary encodingion text format parsingamazon ion loads dumpsion data interchange
data-serializationaws-ecosystem

More Text Processing packages