Create a memory
Create a memory through the OMA API.
?beta=true.Authorizations
OMA workspace API key.
Path Parameters
Path parameter memory_store_id
Query Parameters
Selects the beta API contract for this endpoint. Must be true.
true Query parameter for view
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, full Body
Request parameters for Create a memory. The path must be unoccupied: if a memory already exists at the path, or the path is an ancestor or descendant of an existing memory's path, the request returns memory_path_conflict_error (HTTP 409). Create never overwrites; to modify an existing memory, use Update a memory.
Hierarchical path for the new memory, e.g. /projects/foo/notes.md. 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, and must be NFC-normalized. Paths are case-sensitive.
2 - 1024UTF-8 text content for the new memory. Maximum 100 kB (102,400 bytes). Required; pass "" explicitly to create an empty memory.
Response
Successful response (OK)
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.
memory Unique identifier for this memory (a mem_... value). Stable across renames; use this ID, not the path, to read, update, or delete the memory.
ID of the memory store this memory belongs to (a memstore_... value).
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.
Size of content in bytes (the UTF-8 plaintext length). Always populated, regardless of view.
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.
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 full history via List memory versions.
When this memory was created, in RFC 3339 format.
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.
The memory's UTF-8 text content. Populated when view=full; null when view=basic. Maximum 100 kB (102,400 bytes).