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

HlcTimestamp

Hybrid Logical Clock timestamp.

FieldTypeDescription
wall_timeuint64
logicaluint32

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 per ADR-022.

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_valueHlcTimestamp
vector_valueVector
list_valuePropertyList
map_valuePropertyMap

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