> ## Documentation Index
> Fetch the complete documentation index at: https://docs.helix-db.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Data Model

> For the complete documentation index optimized for AI agents, see [llms.txt](/llms.txt).

Helix Cloud stores data as a labeled property graph. The graph consists of nodes and directed
edges, each carrying typed properties.

## Nodes and Edges

Nodes and edges are identified by 64-bit unsigned IDs. Edges are directed: each edge has a source
node and a target node. Labels are stored as the reserved `$label` property and are used for
type-based filtering and label-scoped secondary, vector, and text indexes.

Properties are strongly typed. Supported types include boolean, integer,
floating-point, string, bytes, typed primitive arrays, generic arrays, and object
maps. Object maps may be nested; query property names such as
`metadata.externalID` read nested fields with exact-first dotted-path lookup. A
stored top-level property literally named `metadata.externalID` wins over the
nested `metadata.externalID` path during scans.

Nested object fields are queryable in filters and projections, but V1 indexing is
top-level only. Keep secondary, text, and vector indexed values as top-level
properties. Generic arrays are stored as values and returned as values, but array
index path syntax such as `tags.0` is not supported.

## Multigraph

Multiple edges between the same pair of nodes are supported. Each edge has a unique ID. The pair
`(from, to)` maps to the set of all edge IDs connecting those nodes. This allows modeling
relationships like "user A sent message B to user C" and "user A sent message D to user C" as
distinct edges with distinct properties.

For how this data is filtered and searched, see [Indexing](/database/indexing/secondary). For
how it is read and mutated, see [Querying](/database/querying).
