pub enum Request {
Show 34 variants
CreateNode {
labels: Vec<String>,
properties: Value,
embedding: Option<Vec<f32>>,
},
CreateEdge {
source: u64,
target: u64,
edge_type: String,
properties: Value,
weight: f64,
valid_from: Option<i64>,
valid_to: Option<i64>,
},
GetNode {
id: u64,
},
GetEdge {
id: u64,
},
UpdateNode {
id: u64,
properties: Value,
},
UpdateEdge {
id: u64,
properties: Value,
},
DeleteNode {
id: u64,
},
DeleteEdge {
id: u64,
},
Neighbors {
id: u64,
direction: String,
edge_type: Option<String>,
},
Bfs {
start: u64,
max_depth: usize,
},
ShortestPath {
from: u64,
to: u64,
weighted: bool,
},
VectorSearch {
query: Vec<f32>,
k: usize,
},
HybridSearch {
anchor: u64,
query: Vec<f32>,
max_hops: usize,
k: usize,
alpha: f32,
},
SemanticNeighbors {
id: u64,
concept: Vec<f32>,
direction: String,
k: usize,
},
SemanticWalk {
start: u64,
concept: Vec<f32>,
max_hops: usize,
},
Query {
gql: String,
},
ExtractSubgraph {
center: u64,
hops: usize,
max_nodes: usize,
format: String,
},
GraphRag {
question: String,
question_embedding: Option<Vec<f32>>,
anchor: Option<u64>,
hops: usize,
max_nodes: usize,
format: String,
},
NeighborsAt {
id: u64,
direction: String,
timestamp: i64,
edge_type: Option<String>,
},
BfsAt {
start: u64,
max_depth: usize,
timestamp: i64,
},
ShortestPathAt {
from: u64,
to: u64,
timestamp: i64,
weighted: bool,
},
Dfs {
start: u64,
max_depth: usize,
},
DfsAt {
start: u64,
max_depth: usize,
timestamp: i64,
},
FindByLabel {
label: String,
},
DeleteByLabel {
label: String,
},
FindEdgeByType {
edge_type: String,
},
RunPageRank {
nodes: Option<Vec<u64>>,
damping: f64,
max_iterations: usize,
tolerance: f64,
},
RunLouvain {
nodes: Option<Vec<u64>>,
},
RunConnectedComponents {
nodes: Option<Vec<u64>>,
strong: bool,
},
RunDegreeCentrality {
nodes: Option<Vec<u64>>,
direction: String,
},
RunBetweennessCentrality {
nodes: Option<Vec<u64>>,
},
GraphStats,
GetSubgraph {
center: u64,
hops: usize,
max_nodes: usize,
},
Ping,
}Expand description
Client request sent over the wire.
Variants§
CreateNode
Create a new node.
CreateEdge
Create a new edge between two nodes.
Fields
GetNode
Get a node by ID.
GetEdge
Get an edge by ID.
UpdateNode
Update a node’s properties.
UpdateEdge
Update an edge’s properties.
DeleteNode
Delete a node (and its edges).
DeleteEdge
Delete an edge.
Neighbors
Get neighbors of a node.
Bfs
Run a BFS traversal.
ShortestPath
Find shortest path between two nodes.
VectorSearch
Vector similarity search.
HybridSearch
Hybrid search combining graph proximity and vector similarity.
SemanticNeighbors
Rank neighbors by semantic similarity to a concept embedding.
SemanticWalk
Greedy multi-hop walk toward a semantic concept.
Query
Execute a GQL query string.
ExtractSubgraph
Extract a subgraph around a node and linearize it.
GraphRag
Execute a GraphRAG query (requires LLM provider configuration).
Fields
NeighborsAt
Get neighbors of a node at a specific point in time.
BfsAt
Run a BFS traversal at a specific point in time.
ShortestPathAt
Find shortest path at a specific point in time.
Dfs
Depth-first search traversal.
DfsAt
Depth-first search traversal at a specific point in time.
FindByLabel
Find nodes by label.
DeleteByLabel
Delete every node carrying the given label (and all its edges).
Returns {"deleted": N}. astraeadb-issues.md #4.
FindEdgeByType
Find all edges whose edge_type matches the given string.
Returns {"edges": [{"edge_id": N, "source": N, "target": N}, ...]}.
astraeadb-issues.md #3.
RunPageRank
Run PageRank algorithm.
RunLouvain
Run Louvain community detection.
RunConnectedComponents
Run connected components detection.
RunDegreeCentrality
Run degree centrality.
RunBetweennessCentrality
Run betweenness centrality.
GraphStats
Get graph statistics.
GetSubgraph
Get raw subgraph (nodes + edges) for visualization.
Ping
Server status / health check.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Request
impl<'de> Deserialize<'de> for Request
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for Request
impl RefUnwindSafe for Request
impl Send for Request
impl Sync for Request
impl Unpin for Request
impl UnsafeUnpin for Request
impl UnwindSafe for Request
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request