objectpath
The agile query language for semi-structured data. #JSON
What it is and what it does
ObjectPath is a query language designed to search and extract data from nested JSON documents. It combines ideas from XPath, JSONPath, and SQL to provide a more expressive alternative to simple path-based selectors, supporting arithmetic calculations, comparisons, boolean logic, and built-in functions. You create a Tree object from a JSON structure and execute queries against it using ObjectPath's query syntax.
The package is mature but abandoned: the last release was in 2018, and the original maintainer explicitly stated they no longer maintain it and are not accepting pull requests. While it has no runtime dependencies and installs easily, using it in new projects carries the risk of encountering unpatched bugs or incompatibilities with newer Python versions, since there is no active support or development.
Use it for:
- Extract specific fields from deeply nested JSON API responses without manual traversal
- Query large JSON documents with complex filtering conditions that simple path selectors cannot express
- Perform calculations or comparisons on JSON data as part of a query (e.g., find all records where a nested value exceeds a threshold)
- Migrate XPath-based XML processing logic to work with JSON documents using familiar syntax
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
ObjectPath is a query language for finding and extracting data from nested JSON documents using a syntax similar to XPath but with SQL-like expressiveness, arithmetic, and built-in functions.
No, unless you are maintaining legacy code that already depends on ObjectPath. The package is abandoned (last release 2018, no maintenance since), with the maintainer explicitly not accepting contributions. For new projects, use actively maintained alternatives like jsonpath-ng or jmespath that provide similar functionality with ongoing support and Python version compatibility.
Install
objectpath on PyPI
pip
pip install objectpathuv
uv add objectpathpoetry
poetry add objectpathInstalling objectpath
Before you install
Installation is straightforward with no runtime dependencies, but the package has been abandoned since 2018 with no maintenance activity. The maintainer explicitly stated they no longer code in Python and are not accepting pull requests, making this a legacy tool with no active support.
License in practice
Licensed under MIT (permissive), so you can use, modify, and distribute ObjectPath freely in commercial and private projects without restriction, though the lack of active maintenance means no legal updates are forthcoming.
Quickstart
pip install objectpath
from objectpath import Tree
tree = Tree({"a": 1})
result = tree.execute("$.a")
print(result) # Output: 1
Verify before relying
- Whether ObjectPath works reliably with modern Python versions (3.9+) given no releases since 2018
- Current state of the JavaScript implementation mentioned as 'in beta'
- Whether the query language syntax and performance remain suitable for contemporary JSON workloads
Package facts
| License | MIT License (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | abandoned — 2,817 days since the last release |
| First released | |
| Downloads | 282,858/month — #8,083 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: objectpath-0.6.1-py2.py3-none-any.whl
Keywords: query, tree, JSON, nested structures
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
jsonpathImplements JSONPath, a query language for…
permissive · top 5,000 on PyPI
bc-jsonpath-ngParses and queries JSON structures using…
permissive · top 5,000 on PyPI
jsonpath-rw-extExtends JSONPath RW with additional query…
permissive · top 5,000 on PyPI
jsonpath-ngParse, query, and modify JSON structures using…
permissive · top 1,000 on PyPI
yaqlYAQL is an embeddable query language for Python…
permissive · top 15,000 on PyPI
parselParsel extracts data from HTML, JSON, and XML…
permissive · top 5,000 on PyPI
jsonpath-rwParses and executes JSONPath expressions…
permissive · top 5,000 on PyPI
elementpathProvides XPath 1.0, 2.0, 3.0, and 3.1 selectors…
permissive · top 5,000 on PyPI
robotframework-jsonlibraryA Robot Framework library for querying, adding,…
permissive · top 15,000 on PyPI
jsonpath-pythonExtracts, filters, sorts, and updates values in…
permissive · top 1,000 on PyPI