Skip to content

Common Types ​

Types shared across multiple services. Each service page links here for shared message definitions.

Messages ​

Edge ​

An edge in the property graph.

FieldTypeDescription
edge_iduint64—
edge_typestring—
source_node_iduint64—
target_node_iduint64—
propertiesmap<string, PropertyValue>—
element_idstringCanonical opaque identifier for the edge endpoints (concatenated source and target element_ids in canonical order). Edges in CoordiNode are typed property bags between two nodes, not first-class entities — this field exists for parity with Neo4j relationships, not as a stable handle.

EdgeId ​

Unique identifier for an edge in the graph.

FieldTypeDescription
iduint64—

Node ​

A node in the property graph.

FieldTypeDescription
node_iduint64Raw 64-bit node identifier. Preserved for Neo4j v4 driver compatibility and direct internal addressing. New client code SHOULD prefer element_id.
labelsstring[]—
propertiesmap<string, PropertyValue>—
element_idstringCanonical opaque identifier: 13-character Crockford base32 encoding of node_id (bijective). Stable across schema changes, restarts, replication. Use this as the primary node reference in application code.
versionuint64The version of this node: the HLC timestamp of the commit that last wrote it. This is the value a conditional write is stated against (CommitTransactionRequest.expect), and it is the same number a write receipt returns as commit_ts, so a read and a later write speak of one thing rather than two. Zero means the server did not resolve a version for this node, not that the node is at version zero: a node that exists always has the commit that wrote it.

NodeId ​

Unique identifier for a node in the graph.

FieldTypeDescription
iduint64—

PaginationRequest ​

Cursor-based pagination request parameters.

FieldTypeDescription
page_sizeint32Maximum number of results to return.
page_tokenstringOpaque cursor from a previous response.

PaginationResponse ​

Cursor-based pagination response metadata.

FieldTypeDescription
next_page_tokenstringOpaque cursor for the next page. Empty if no more results.
total_countint64Total count of matching results (if available, -1 if unknown).

PropertyList ​

A list of property values (homogeneous arrays).

FieldTypeDescription
valuesPropertyValue[]—

PropertyMap ​

A map of string keys to property values.

FieldTypeDescription
entriesmap<string, PropertyValue>—

PropertyValue ​

A typed property value (oneof for all supported types).

FieldTypeDescription
int_valueint64—
float_valuedouble—
string_valuestring—
bool_valuebool—
bytes_valuebytes—
timestamp_valueTimestamp—
vector_valueVector—
list_valuePropertyList—
map_valuePropertyMap—
multi_vector_valueMultiVector—
path_valuePath—

JSON encoding (REST API)

PropertyValue is a oneof — in JSON, encode it as an object with exactly one key matching the camelCase proto field name:

json
{ "stringValue": "hello" }
{ "intValue": "42" }
{ "floatValue": 0.95 }
{ "boolValue": true }
{ "bytesValue": "aGVsbG8=" }
{ "vectorValue": { "values": [0.1, 0.2, 0.3] } }
{ "listValue": { "values": [{"stringValue": "a"}, {"stringValue": "b"}] } }
{ "mapValue": { "entries": { "key": {"intValue": "1"} } } }

Vector parameters: use vectorValue, not listValue. vectorValue maps to the dedicated Vector proto type and enables vector index pushdown in the query planner.

Vector ​

A dense float vector for vector search.

FieldTypeDescription
valuesfloat[]—

Enums ​

ServingStatus ​

ValueNumberDescription
SERVING_STATUS_UNSPECIFIED0—
SERVING_STATUS_SERVING1—
SERVING_STATUS_NOT_SERVING2—

TraversalDirection ​

ValueNumberDescription
TRAVERSAL_DIRECTION_UNSPECIFIED0—
TRAVERSAL_DIRECTION_OUTBOUND1—
TRAVERSAL_DIRECTION_INBOUND2—
TRAVERSAL_DIRECTION_BOTH3—