OriginChainDB docs
elasticsearch

The Elasticsearch-compatible API

OriginChainDB answers the Elasticsearch REST API and Query DSL over the same store your SQL and HTTP calls see. Point the official client at your instance and the requests you already write keep working — but the documents live in your database, so a write is searchable the moment it commits and your row-level security and column masking apply to the search itself.

What you point at it

Any Elasticsearch 7.x client, or plain HTTP. The cluster reports version 7.14.2, which clears the product check the official clients run on connect. The base path is your tenant's ES endpoint; every index lives under it.

POST /v1/tenants/:tenant/es/:index/_search
PUT  /v1/tenants/:tenant/es/:index/_doc/:id
POST /v1/tenants/:tenant/es/_bulk

What makes it different from a search cluster

  • No sync, no lag. A document is written by the same transaction that writes the row, so it is searchable the instant the call returns. There is no refresh interval to wait on and no connector to keep running.
  • Your policies apply to the search. Row-level security and column masking are enforced on the query itself, not just on the documents it returns. A caller who cannot see a row will not find it, and a query against a masked column is refused rather than answered.
  • One store. The same data answers SQL, the HTTP API, vector search and this. Nothing is copied anywhere.

What it does not do

This is a drop-in for the API real clients and dashboards exercise, not the entire Elasticsearch surface. Anything not answered faithfully is refused with an explicit error — it never returns a wrong or silently partial result. Each page below states its own limits where you meet them; the short list:

AreaAnsweredRefused, and why
Aggregationsterms, metrics, range, histogram, date_histogram, percentiles, top_hits, filters, sub-aggregations, pipelinesextended_stats, composite, nested have no executor yet; missing on a metric aggregation would fill in a value you did not choose
Suggestersthe term suggester, with suggest_modephrase and completion have no executor; popular ranks by a document frequency this API does not report
Pagingsearch_after within a 10,000-hit windowPoint-in-Time and scroll hold a snapshot this engine does not take
Scoringfunction_score, per-field boostsscript_score and rescore would run arbitrary script
Cluster managementindex create, delete, mapping, _field_capsindex lifecycle, snapshots and templates are managed by OriginChainDB, not over this API

Vector and hybrid search live on their own surface — see querying.

Elasticsearch is a trademark of Elasticsearch B.V., registered in the U.S. and in other countries. OriginChainDB is not affiliated with, endorsed by, or sponsored by Elasticsearch B.V. OriginChainDB implements a compatible HTTP API so that existing Elasticsearch clients can talk to it; it does not distribute Elasticsearch software.