Memory
hm_get_nodes
Fetch full, untruncated details for nodes whose keys you already know
Use hm_recall to find memories and hm_get_nodes to read them in full. It returns each requested node with its complete description, data, relationships and hyperedges.
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
keys | string[] | required | 1–50 exact node keys. |
include_relationships | boolean | true | Include the node’s binary edges and hyperedges. |
relationship_detail | "summary" | "full" | "summary" | How much of each relationship to return. |
participant_limit | integer | 20 | How many participants to list per hyperedge (0–100). |
include_duplicates | boolean | true | Include records that were merged into this node. |
include_enrichment_history | boolean | false | Include the history of background enrichment passes. |
include_session_relationships | boolean | false | Include the server’s chat-session groupings. |
organization_id | string | — | Read an organization graph you belong to instead of your own. The result carries read_target. |
Response
| Field | Description |
|---|---|
nodes | An object keyed by node key. Each entry has node (key, type, description, data, enrichment status, write_version), binary_edges (each with its id, from_key, to_key, relationship, write_version), hyperedges, and duplicate_records. |
missing | Keys that don’t exist. |
count | Number of nodes returned. |
A node with more relationships than one read covers returns the ones that fit, with relationships_truncated: true.
The id of each edge and its write_version are what hm_update and hm_forget take as edge_id and edge_version.
Example
{
"keys": ["decision_jwt_auth", "project_public_api"],
"relationship_detail": "full"
}