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

ParameterTypeDefaultDescription
keysstring[]required1–50 exact node keys.
include_relationshipsbooleantrueInclude the node’s binary edges and hyperedges.
relationship_detail"summary" | "full""summary"How much of each relationship to return.
participant_limitinteger20How many participants to list per hyperedge (0–100).
include_duplicatesbooleantrueInclude records that were merged into this node.
include_enrichment_historybooleanfalseInclude the history of background enrichment passes.
include_session_relationshipsbooleanfalseInclude the server’s chat-session groupings.
organization_idstring—Read an organization graph you belong to instead of your own. The result carries read_target.

Response

FieldDescription
nodesAn 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.
missingKeys that don’t exist.
countNumber 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"
}

Equivalents

curl -X POST https://api.hypermemory.io/api/v1/memory/nodes \
  -H "Authorization: Bearer $HYPERMEMORY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"keys":["decision_jwt_auth"]}'