$npx skillfedfor your agent

opensearch-dsl

Python client for OpenSearch

SkipPyPI DatabaseReleased Mar 2023702.3K downloads / moApache-2.0Pure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — opensearch_dsl-2.1.0-py2.py3-none-any.whl
v2.1.0 · released 2023-03-21 · Python >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.* · 4 runtime deps: six, python-dateutil, opensearch-py, ipaddress

No. The package is explicitly deprecated and abandoned as of version 2.1.0, with the maintainers recommending migration to opensearch-py. Unless you are maintaining legacy code that already depends on it, you should use opensearch-py directly instead. Starting new projects with this package is not advisable.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires a running OpenSearch cluster.
  • The package is abandoned and not recommended for new projects.
  • Low install friction with a pure-Python wheel distribution.

License · maintenance · safety

Apache-2.0 (permissive) — Licensed under Apache-2.0 (permissive), so commercial use and modification are permitted without restriction, though you should review the license terms if redistribution is planned.

last release 2023-03-21 (1242 days) · last repo commit 2024-01-18 · 40 stars · archived

0 known vulnerabilities (OSV.dev, 2026-08-14) · 702,269 downloads/mo, #5,285 on PyPI

Verify before relying

pip install opensearch-dsl==2.1.0

from opensearch_dsl import Search
from opensearch_py import OpenSearch

client = OpenSearch()
s = Search(using=client, index='my_index')
results = s.execute()
  • Whether opensearch-py now fully replaces the DSL functionality or if specific use cases still require this package.
  • Compatibility with OpenSearch versions released after the package's final release in March 2023.
  • Whether the deprecated package will receive security updates or bug fixes.
Same gist for agents: .md · .json

What it is and what it does

opensearch-dsl-py is a high-level Python client for OpenSearch that provides a domain-specific language for constructing and executing queries. It wraps opensearch-py and offers an object-oriented interface for building complex search queries, filters, and aggregations against OpenSearch clusters.

The package is now deprecated and abandoned. The maintainers explicitly recommend switching to opensearch-py, which has absorbed the DSL functionality. It depends on six, python-dateutil, opensearch-py, and ipaddress, and supports Python 2.7 and Python 3.4 through 3.9. The repository is archived and has not received updates since January 2024.

Use it for

  • Building OpenSearch queries programmatically using a Pythonic DSL instead of raw JSON.
  • Mapping Python objects to OpenSearch documents with automatic serialization and deserialization.
  • Constructing aggregations and filters in a readable way for search applications.
  • Maintaining legacy systems that already depend on opensearch-dsl-py.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Skip

No.

The package is explicitly deprecated and abandoned as of version 2.1.0, with the maintainers recommending migration to opensearch-py. Unless you are maintaining legacy code that already depends on it, you should use opensearch-py directly instead. Starting new projects with this package is not advisable.

Install

opensearch-dsl on PyPI

Before you install

Low install friction with a pure-Python wheel distribution. However, the package is abandoned as of version 2.1.0 (last release 2023-03-21, last commit 2024-01-18, repository archived); the maintainers explicitly recommend migrating to opensearch-py instead.

Requires a running OpenSearch cluster. The package is abandoned and not recommended for new projects.

License in practice

Licensed under Apache-2.0 (permissive), so commercial use and modification are permitted without restriction, though you should review the license terms if redistribution is planned.

Quickstart

pip install opensearch-dsl==2.1.0

from opensearch_dsl import Search
from opensearch_py import OpenSearch

client = OpenSearch()
s = Search(using=client, index='my_index')
results = s.execute()

Verify before relying

  • Whether opensearch-py now fully replaces the DSL functionality or if specific use cases still require this package.
  • Compatibility with OpenSearch versions released after the package's final release in March 2023.
  • Whether the deprecated package will receive security updates or bug fixes.

Package facts

LicenseApache-2.0 permissive
Python supportSupports the current Python release >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
Install frictionLow. Pure-Python wheel
Runtime dependencies
4 packages
sixpython-dateutilopensearch-pyipaddress
MaintenanceAbandoned 1,242 days since the last release
Last repo commit repository archived
First released
Downloads702,269 / month, #5,285 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy

Evidence: opensearch_dsl-2.1.0-py2.py3-none-any.whl

Tags

Capabilities
opensearch query builder pythonopensearch dsl clientpython opensearch queriesopensearch python ormopensearch search api pythonopensearch document mappingopensearch query dsl
Topics
deprecatedopensearchabandoned

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “opensearch query builder python”

Give your agent the search over MCP, or paste the wish link into any chat.

More Database packages

psycopg2-binary Worth it
PyPI · Software Development · released Apr 2026

psycopg2-binary is a PostgreSQL database adapter for Python that implements the DB API 2.0 specification, enabling Python applications to connect to and query PostgreSQL databases with thread-safe concurrent operations.

copyleftcompiled wheel · 3.9+
271.6Mdownloads / mo
redis Worth it
PyPI · Database · released Jul 2026

Python client library for connecting to and executing commands against Redis key-value stores, supporting both synchronous and asynchronous operations.

Install it if your application needs to interact with Redis; the only prerequisite is a running Redis server instance.

MITpure Python · 3.10+
268.3Mdownloads / mo
ydb Worth it
PyPI · Database · released Jul 2026

YDB Python SDK is the official client library for connecting to and querying YDB databases from Python applications.

Install it if you need to connect Python applications to YDB databases.

permissive licensepure Python · 3.10+
210.0Mdownloads / mo
snowflake-connector-python Worth it
PyPI · Software Development · released Aug 2026

Connects Python applications to Snowflake data warehouses using the DB API 2.0 specification, enabling SQL queries, data transfers, and warehouse operations.

Apache-2.0compiled wheel · 3.10+
193.6Mdownloads / mo
sqlparse Worth it
PyPI · Software Development · released Aug 2026

sqlparse tokenizes SQL text into a tree of statements, clauses, and expressions, and provides functions to split scripts, format queries, and inspect parsed tokens without validating dialect or syntax.

Install it if you need to manipulate, format, or analyze SQL text programmatically.

BSD-3-Clausepure Python · 3.10+
148.9Mdownloads / mo
dbt-adapters With conditions
PyPI · Database · released Jul 2026

Provides base adapter protocols and shared functionality that database adapters use to integrate with dbt-core, handling connections, dialect translation, relation caching, and core interface management.

Apache-2.0pure Python · 3.10.0+
121.3Mdownloads / mo

See also django-opensearch-dsl · opensearch-py · elasticsearch-dsl · opensearch-logger · opensearch-mcp-server-py · elasticsearch8-dsl · apache-airflow-providers-opensearch · elasticsearch-dbapi · wolframalpha · yaql