Update a Memory changedapi/beta/memory_stores/memories/update
Nearest release: v2.1.306, published 2 hours after this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
Recorded here
Lines+32added
Lines−12removed
From line
1
where the diff opens
First seen
14 Aug 2026
this site's first read of the page
Recorded edits19to this page, all time
# Update a Memory # Update a memory
The whole hunk
from line 1, old and new numbered
/
from line 1
11---
2title: Update a memory
2title: Update a Memory
33url: https://platform.claude.com/docs/en/api/beta/memory_stores/memories/update
44---
55
6# Update a memory
6# Update a Memory
77
88**POST** `/v1/memory_stores/{memory_store_id}/memories/{memory_id}`
99
10Update a memory
10Update a Memory
1111
1212## Path parameters
1313
from line 23
2323
2424- `view: optional BetaManagedAgentsMemoryView`
2525
26 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.
26 Whether a `memory` or `memory_version` in the response includes its `content`. Defaults to `full` on retrieve operations and to `basic` on list, create, and update operations.
2727
28 With `full`, list operations return at most 20 items per page.
29
2830 - `"basic"`
2931
3032 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.
from line 165
163165
164166- `path: optional string or null`
165167
166 New path for the memory (a rename). Must start with `/`, contain at least one non-empty segment, and be at most 1,024 bytes. Must not contain empty segments, `.` or `..` segments, control or format characters, or the Unicode line and paragraph separators (U+2028, U+2029), and must be NFC-normalized. Paths are case-sensitive. The memory's `id` is preserved across renames. Omit to leave the path unchanged.
168 The new path of the memory, which renames it. Omit it to keep the current path.
167169
170 The memory keeps its `id`. A path starts with `/` and has 1 to 20 segments. A segment can't be empty and can't be `.` or `..`. A path can't contain control characters, format characters, or the line and paragraph separators U+2028 and U+2029. It must be in Unicode Normalization Form C and at most 1,024 bytes long. Paths are case-sensitive.
171
168172 minLength: 2, maxLength: 1024
169173
170174- `precondition: optional BetaManagedAgentsPrecondition`
171175
172 Optional optimistic-concurrency precondition. When supplied, the update applies only if the memory's current state matches; on mismatch the request returns `memory_precondition_failed_error` (HTTP 409). When omitted, the update is unconditional.
176 The condition that the memory must meet for the update to apply. Omit it to update unconditionally.
173177
178 If the condition fails, the request fails with HTTP status 409.
179
174180 - `type: "content_sha256"`
175181
176182 - `content_sha256: optional string`
from line 187
181187
182188- `BetaManagedAgentsMemory object`
183189
184 A `memory` object: a single text document at a hierarchical path inside a memory store. The `content` field is populated when `view=full` and `null` when `view=basic`; the `content_size_bytes` and `content_sha256` fields are always populated so sync clients can diff without fetching content. Memories are addressed by their `mem_...` ID; the path is the create key and can be changed via update.
190 A text document at a path inside a memory store.
185191
192 `content` is `null` when the response uses `view=basic`. `content_size_bytes` and `content_sha256` are always set, so you can detect changes without fetching the content. To retrieve, update, or delete a memory, pass its ID, which stays the same when its path changes.
193
194 See the [memory guide](https://platform.claude.com/docs/en/managed-agents/memory?sdk_languages=http#view-and-edit-memories) to learn more about working with memories.
195
186196 - `type: "memory"`
187197
188198 - `id: string`
189199
190 Unique identifier for this memory (a `mem_...` value). Stable across renames; use this ID, not the path, to read, update, or delete the memory.
200 The unique ID of the memory (`mem_...`). It stays the same when the memory's path changes.
191201
202 To retrieve, update, or delete the memory, pass this ID.
203
192204 - `content_sha256: string`
193205
194206 Lowercase hex SHA-256 digest of the UTF-8 `content` bytes (64 characters). The server applies no normalization, so clients can compute the same hash locally for staleness checks and as the value for a `content_sha256` precondition on update. Always populated, regardless of `view`.
from line 207
195207
196208 - `content_size_bytes: number`
197209
198 Size of `content` in bytes (the UTF-8 plaintext length). Always populated, regardless of `view`.
210 The size of the memory's `content` in UTF-8 bytes. It is set regardless of `view`.
199211
200212 format: int32
201213
from line 223
211223
212224 - `memory_version_id: string`
213225
214 ID of the `memory_version` representing this memory's current content (a `memver_...` value). This is the authoritative head pointer; `memory_version` objects do not carry an `is_latest` flag, so compare against this field instead. Enumerate the history via [List memory versions](https://platform.claude.com/docs/en/api/beta/memory_stores/memory_versions/list?sdk_languages=http).
226 The ID of the memory version that holds the memory's current content (`memver_...`).
215227
228 Memory versions don't have a flag that marks the latest one. Compare their IDs with this field instead.
229
230 See the [memory guide](https://platform.claude.com/docs/en/managed-agents/memory?sdk_languages=http#audit-memory-changes) to learn more about memory versions.
231
216232 - `path: string`
217233
218234 Hierarchical path of the memory within the store, e.g. `/projects/foo/notes.md`. Always starts with `/`. Paths are case-sensitive and unique within a store. Maximum 1,024 bytes.
from line 235
219235
220236 - `updated_at: string`
221237
222 When this memory was last modified, in RFC 3339 format. Use this as a cheap freshness signal; for who made the change, look up the head version's `created_by` via [List memory versions](https://platform.claude.com/docs/en/api/beta/memory_stores/memory_versions/list?sdk_languages=http).
238 When the memory was last changed, in RFC 3339.
223239
240 To find out who made the change, look at `created_by` on the memory version that `memory_version_id` references.
241
224242 format: date-time
225243
226244 - `content: optional string or null`
227245
228 The memory's UTF-8 text content. Populated when `view=full`; `null` when `view=basic`. Maximum 100 kB (102,400 bytes).
246 The memory's UTF-8 text content, or `null` when the response uses `view=basic`.
247
248 The maximum size is 100 kB (102,400 bytes).
229249
230250## Example
231251
No line in this hunk matches that.