velesdb-server 3.0.1

REST API server for VelesDB vector database
Documentation
//! HTTP handlers for VelesDB REST API.
//!
//! This module organizes handlers by domain:
//! - `health`: Health check endpoints
//! - `collections`: Collection CRUD operations
//! - `admin`: Stats, config, guardrails, and analyze endpoints
//! - `points`: Vector point operations
//! - `search`: Vector similarity search
//! - `query`: VelesQL query execution
//! - `indexes`: Property index management (EPIC-009)
//! - `graph`: Graph operations (EPIC-016/US-031)
//! - `metrics`: Prometheus metrics (requires `prometheus` feature)

pub mod admin;
pub mod collections;
pub mod graph;
pub mod health;
pub mod helpers;
pub mod indexes;
pub mod match_query;
pub mod points;
pub mod query;
pub mod search;

#[cfg(feature = "prometheus")]
pub mod metrics;

pub use admin::{
    analyze_collection, collection_diagnostics, compact_collection, get_collection_config,
    get_collection_stats, get_guardrails, rebuild_index, reorder_for_locality, update_guardrails,
    vacuum_collection,
};
pub use collections::{
    collection_sanity, create_collection, delete_collection, flush_collection, get_collection,
    is_empty, list_collections,
};
pub use health::{health_check, readiness_check};
pub use indexes::{create_index, delete_index, list_indexes};
pub use points::{
    bulk_delete_points, delete_point, enable_streaming, get_point, get_point_relations,
    relate_points, scroll_points, set_point_ttl, stream_insert, stream_upsert_points,
    unrelate_points, upsert_points, upsert_points_raw,
};
// EPIC-058 US-007: match_query handler for /collections/{name}/match
pub use match_query::match_query;
pub use query::{aggregate, explain, query};
pub use search::{
    batch_search, hybrid_search, multi_query_search, multi_query_search_ids, search, search_ids,
    text_search,
};

// Graph handlers (EPIC-016) - exported via lib.rs
#[allow(unused_imports)]
pub use graph::{
    add_edge, add_edges_batch, get_edge_count, get_edges, get_node_degree, get_node_edges,
    get_node_payload, graph_search, list_nodes, remove_edge, traverse_graph, traverse_parallel,
    upsert_node_payload, DegreeResponse, TraversalResultItem, TraversalStats, TraverseRequest,
    TraverseResponse,
};

// Metrics handlers - conditional on prometheus feature
#[cfg(feature = "prometheus")]
#[allow(unused_imports)]
pub use metrics::{health_metrics, prometheus_metrics};