Documentation Index
Fetch the complete documentation index at: https://docs.qoder.com/llms.txt
Use this file to discover all available pages before exploring further.
GET /v1/memory_stores/{memory_store_id}/versions
Retrieves the version history of all memory entries in the specified Memory Store. Records are sorted by time in descending order (newest first) and support cursor pagination.
Path parameters
| Parameter | Type | Required | Description |
|---|
memory_store_id | string | Yes | Memory Store ID with the memstore_ prefix |
| Header | Required | Description |
|---|
Authorization | Yes | Bearer $QODER_PAT |
Query parameters
| Parameter | Type | Required | Description |
|---|
limit | integer | No | Maximum number of records per page |
after_id | string | No | Cursor pagination: return records after this ID |
Example request
curl -X GET "https://openapi.qoder.sh/api/v1/cloud/memory_stores/memstore_xxx/versions" \
-H "Authorization: Bearer $QODER_PAT"
# Paginate
curl -X GET "https://openapi.qoder.sh/api/v1/cloud/memory_stores/memstore_xxx/versions?limit=2&after_id=memver_xxx" \
-H "Authorization: Bearer $QODER_PAT"
Example response
HTTP 200 OK
Returns a paginated list object sorted in reverse chronological order.
{
"data": [
{
"id": "memver_019e3bb9e5197b0c816e621050a8394e",
"type": "memory_version",
"store_id": "memstore_019e3bb93b7074f9a5130d39ddcca90f",
"entry_id": "mem_019e3bb9cf417d7dbb11fe9784dbb65c",
"entry_path": "versions/test.md",
"action": "updated",
"size": 27,
"content_sha256": "ff1328301132f954eeac24cd379ab7f6f5a540573bfe3eb2db3995abe3678210",
"redacted": false,
"created_at": "2026-05-18T15:34:59.125612Z"
},
{
"id": "memver_019e3bb9cf417d89970ba7f45e728c56",
"type": "memory_version",
"store_id": "memstore_019e3bb93b7074f9a5130d39ddcca90f",
"entry_id": "mem_019e3bb9cf417d7dbb11fe9784dbb65c",
"entry_path": "versions/test.md",
"action": "created",
"size": 17,
"content_sha256": "fe80a065cb120813abf7dfceb4018a53d6eb7140c785181634e019656176c64e",
"redacted": false,
"created_at": "2026-05-18T15:34:53.528628Z"
},
{
"id": "memver_019e3bb9a511741f89f28d5e7efb7844",
"type": "memory_version",
"store_id": "memstore_019e3bb93b7074f9a5130d39ddcca90f",
"entry_id": "mem_019e3bb965a671fca51bde1cf8d87de0",
"entry_path": "test/note.md",
"action": "deleted",
"size": 0,
"content_sha256": "",
"redacted": false,
"created_at": "2026-05-18T15:34:42.707852Z"
}
],
"first_id": "memver_019e3bb9e5197b0c816e621050a8394e",
"last_id": "memver_019e3bb9a511741f89f28d5e7efb7844",
"has_more": false
}
Response fields
| Field | Type | Description |
|---|
data | array | Array of MemoryVersion objects (without content) |
first_id | string | ID of the first record on the current page |
last_id | string | ID of the last record on the current page |
has_more | boolean | Whether more pages are available |
Per-record fields in the list
| Field | Type | Description |
|---|
id | string | Version unique identifier with the memver_ prefix |
type | string | Always "memory_version" |
store_id | string | Owning Memory Store ID |
entry_id | string | Associated memory entry ID |
entry_path | string | Path of the associated memory entry |
action | string | Action type: "created", "updated", "deleted" |
size | int64 | Version content size (0 when deleted) |
content_sha256 | string | Version content hash (empty when deleted) |
redacted | boolean | Whether the version has been redacted |
redacted_at | string | Redaction time (only present when redacted is true) |
created_at | string | Version creation time (ISO 8601) |
Errors
| HTTP | Type | Trigger |
|---|
| 401 | TOKEN_INVALID | Missing or invalid authentication token |
| 404 | not_found_error | Memory Store does not exist |
Notes
- Version records contain the full change history for all memory entries (creation, update, deletion).
- The list endpoint does not return the
content field.
- Records are sorted in reverse chronological order (newest first).
- For
action: "deleted" records, size is 0 and content_sha256 is an empty string.
- Redacted versions show
redacted: true along with redacted_at.
See Errors for the full error envelope.