โš ๏ธ Important Notice: This module is minimally maintained and provides low-level OpenSearch integration. Most users should use the well-regarded Search API module with the Search API OpenSearch backend instead, which offers better features, documentation, and community support.

This module offers basic OpenSearch/Elasticsearch integration with minimal abstraction. It's designed for developers who want semi-direct communication with the search engine rather than working through higher-level APIs and plugins.

Basic functionality includes:

  • Direct query execution via QueryInterface with simple ::toArray() method
  • Service-based API: \Drupal::service(SearchApi::class)->search($query)
  • Basic content indexing system
  • JSON search endpoint
  • Drush commands for index management

Use this module only if you need direct control over OpenSearch queries and are comfortable handling low-level search implementation. The indexing functionality is basic compared to the more mature search solutions.

Post-Installation

After installation, configure your OpenSearch endpoint in settings.php or configuration. The module provides a service interface for executing queries programmatically. There's no administrative UI - all interaction happens through code or Drush commands.

Developers will need to (themselves):

  • Implement QueryInterface for custom queries
  • Use the search service in custom code
  • Set up indexing for content types programmatically
  • Configure the optional JSON search endpoint if needed

Seriously, consider using these instead:

Short name
opensearch_index
Supporting organizations
Development