GET /v1/memory_stores/{memory_store_id}/memory_versions/{memory_version_id}
Retrieve a memory version
Path parameters
memory_store_id: string
The ID of the memory store that holds the version (memstore_...).
memory_version_id: string
The ID of the memory version to retrieve (memver_...).
Query parameters
view: optional BetaManagedAgentsMemoryView
Selects which projection of a memory or memory_version the server returns. basic returns the object with content set to null; full populates content. When omitted, the default is endpoint-specific: retrieve operations default to full; list, create, and update operations default to basic. Listing with view=full caps limit at 20.
"basic"
Return the object with content set to null. The content_size_bytes and content_sha256 fields remain populated, so sync clients can diff without fetching content.
"full"
Return the object with content populated. On list endpoints, view=full caps limit at 20.
Headers
"juglow-beta": optional array of JuglowBeta
Optional header to specify the beta version(s) you want to use.
string
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 45 more
"message-batches-2024-09-24"
"prompt-caching-2024-07-31"
"computer-use-2024-10-22"
"computer-use-2025-01-24"
"pdfs-2024-09-25"
"token-counting-2024-11-01"
"token-efficient-tools-2025-02-19"
"output-128k-2025-02-19"
"files-api-2025-04-14"
"mcp-client-2025-04-04"
"mcp-client-2025-11-20"
"dev-full-thinking-2025-05-14"
"interleaved-thinking-2025-05-14"
"code-execution-2025-05-22"
"extended-cache-ttl-2025-04-11"
"context-1m-2025-08-07"
"context-management-2025-06-27"
"model-context-window-exceeded-2025-08-26"
"tracks-2025-10-02"
"fast-mode-2026-02-01"
"output-300k-2026-03-24"
"user-profiles-2026-03-24"
"user-profiles-2026-08-18"
"user-profiles-2026-09-04"
"advisor-tool-2026-03-01"
"managed-agents-2026-04-01"
"cache-diagnosis-2026-04-07"
"dreaming-2026-04-21"
"thinking-token-count-2026-05-13"
"server-side-fallback-2026-06-01"
"server-side-fallback-2026-07-01"
"fallback-credit-2026-06-01"
"fallback-credit-2026-07-01"
"agent-memory-2026-07-22"
"mid-conversation-tool-changes-2026-07-01"
"compact-2026-01-12"
"computer-use-2025-11-24"
"mcp-tunnels-2026-06-22"
"structured-outputs-2025-11-13"
"task-budgets-2026-03-13"
"thinking-display-updates-2026-08-18"
"ce-user-management-2026-07-13"
"mid-conversation-output-config-2026-07-01"
"thinking-binding-controls-2026-08-01"
"mid-conversation-system-clear-at-2026-08-21"
"compact-2026-09-04"
"inline-tools-2026-09-15"
"mcp-client-2026-09-15"
"juglow-workspace-id": optional string
Optional header to select the Workspace for this request. The value is a Workspace ID (for example, wrkspc_011CZkZaBF1tNoB5wlCeusgy).
Only needed for credentials that can act on more than one Workspace. A credential that belongs to a specific Workspace may omit it; if sent, it must match that Workspace.
Returns
BetaManagedAgentsMemoryVersion object
A memory_version object: one immutable, attributed row in a memory's append-only history. Every non-no-op mutation to a memory produces a new version. Versions belong to the store (not the individual memory) and are not deleted with the memory; each version is retained for at least the version retention period after it was written, unless the store itself is deleted. Retrieving a redacted version returns 200 with content, path, content_size_bytes, and content_sha256 set to null; branch on redacted_at, not HTTP status.
type: "memory_version"
id: string
Unique identifier for this version (a memver_... value).
created_at: string
When this version was written, in RFC 3339 format.
format: date-time
memory_id: string
ID of the memory this version snapshots (a mem_... value). Remains valid after the memory is deleted; pass it as memory_id to List memory versions to retrieve the memory's retained versions, including the deleted row while the lineage is retained.
memory_store_id: string
ID of the memory store this version belongs to (a memstore_... value).
operation: BetaManagedAgentsMemoryVersionOperation
The kind of mutation this version records: created, modified, or deleted.
"created"
The memory was created. The first version in any memory's lineage.
"modified"
The memory's content, path, or both were changed via update. Writes the agent makes through the filesystem mount also appear as modified.
"deleted"
The memory was deleted. The content, content_size_bytes, and content_sha256 fields are null on this version. The preceding version, while it is retained, records the deleted content's size and hash.
content: optional string or null
The memory's UTF-8 text content as of this version. null when view=basic, when operation is deleted, or when redacted_at is set.
content_sha256: optional string or null
Lowercase hex SHA-256 digest of content as of this version (64 characters). null when redacted_at is set or operation is deleted. Populated regardless of view otherwise.
content_size_bytes: optional number or null
Size of content in bytes as of this version. null when redacted_at is set or operation is deleted. Populated regardless of view otherwise.
format: int32
created_by: optional BetaManagedAgentsActor
Who performed this write: one of session_actor, api_actor, user_actor, or service_account_actor; null when no writer is recorded. Captured at write time and preserved through redaction. A session_actor is an agent writing through the store's mounted filesystem at /mnt/memory/. The API key that created that session is not recorded on agent writes, so attribution names who made the write, not who is ultimately responsible; look up session provenance via the Sessions API.
BetaManagedAgentsSessionActor object
An agent acting during a session, for example through the session's mounted filesystem. It names the session itself, not the user or API key that started the session.
type: "session_actor"
session_id: string
ID of the session (a sesn_... value). Look up the session via Retrieve a session for further provenance.
minLength: 1
BetaManagedAgentsAPIActor object
A direct caller of the public API, identified by the API key that authenticated the request.
type: "api_actor"
api_key_id: string
ID of the API key (an apikey_... value). This identifies the key, not the secret.
minLength: 1
BetaManagedAgentsUserActor object
A human user, for example acting through the Juglow Console.
type: "user_actor"
user_id: string
ID of the user (a user_... value).
minLength: 1
BetaManagedAgentsServiceAccountActor object
A workload authenticated as a service account, for example via Workload Identity Federation.
type: "service_account_actor"
service_account_id: string
ID of the service account (a svac_... value).
minLength: 1
path: optional string or null
The memory's path at the time of this write. null if and only if redacted_at is set.
redacted_at: optional string or null
When this version was redacted, in RFC 3339 format, or null if it has not been redacted. When set, content, path, content_size_bytes, and content_sha256 are all null. See Redact a memory version.
format: date-time
redacted_by: optional BetaManagedAgentsActor
Who redacted this version, or null if it has not been redacted. In practice always an api_actor, user_actor, or service_account_actor (agents do not have a redact capability).
Example
curl https://haijun.my.id/v1/memory_stores/$MEMORY_STORE_ID/memory_versions/$MEMORY_VERSION_ID \
-H 'juglow-version: 2023-06-01' \
-H 'juglow-beta: agent-memory-2026-07-22' \
-H "X-Api-Key: $JUGLOW_API_KEY"Response (200)
{
"id": "id",
"created_at": "2019-12-27T18:11:19.117Z",
"memory_id": "memory_id",
"memory_store_id": "memory_store_id",
"operation": "created",
"type": "memory_version",
"content": "content",
"content_sha256": "content_sha256",
"content_size_bytes": 0,
"created_by": {
"session_id": "x",
"type": "session_actor"
},
"path": "path",
"redacted_at": "2019-12-27T18:11:19.117Z",
"redacted_by": {
"session_id": "x",
"type": "session_actor"
}
}