04 · REFERENCE
Native REST API
Port 8080. Use it for anything new. The native surface has the explain plan, the turbo-ingest path, and the log-shaped endpoints the ES compat layer can't express cleanly.
METHOD
PATH
DESCRIPTION
GET
/v1/health
Liveness + readiness. Returns
{status, uptime_s, version}.GET
/v1/metrics
Prometheus text format. Scrape-friendly. See Metrics.
PUT
/v1/indices/:name
Create an index with a field mapping body.
GET
/v1/indices/:name
Return schema, segment list, doc count.
DELETE
/v1/indices/:name
Drop the index.
POST
/v1/indices/:name/docs
Single-doc indexing. JSON body.
POST
/v1/indices/:name/turbo-ingest
NDJSON bulk path. Parallel tokenization behind the scenes.
POST
/v1/indices/:name/search
Unified query endpoint — full-text, term, range, KNN, hybrid.
POST
/v1/indices/:name/_explain
Return the optimizer tree with per-node cost and row counts.
POST
/v1/indices/:name/logs
Log-optimized ingest path. Auto-detects Apache/Nginx/ISO timestamps.
POST
/v1/indices/:name/syslog
Syslog RFC-5424 ingest.
POST
/v1/indices/:name/otlp
OpenTelemetry OTLP ingest. No collector sidecar.
GET
/v1/indices/:name/_mapping
Field catalog. Drives the dashboards' schema-aware UIs.
Request body shape — /v1/indices/:name/search
{
"query": {
"bool": {
"must": [ { "match": { "message": "login failed" } } ],
"filter": [
{ "term": { "service": "auth" } },
{ "range": { "@timestamp": { "gte": "now-1h" } } }
]
}
},
"aggs": {
"by_host": { "terms": { "field": "host", "size": 10 } }
},
"size": 100,
"sort": [ { "@timestamp": "desc" } ]
}
Source · engine/crates/api/src/native.rs · router.rs
◀ PREVEnvironment
NEXT ▶ES-compat API