Records
This page presents the record value types returned by Oracle Agent Memory stores and search APIs.
Base Record
class oracleagentmemory.apis.records.Record
Bases: object
Base persisted record returned by memory stores and search results.
- Parameters:
- id
str– Stable identifier for the stored record. - record_type
str– Logical record type such as"message","memory","guideline","fact","preference","thread","user_profile", or"agent_profile", or"thread_summary". - content
str | None– Optional textual payload stored for the record. - timestamp
str | None– Timestamp saved for the record. It represents when the record was created. When no caller timestamp was supplied, stores use the time the record was added to the store. - metadata
MetadataValue– Optional JSON-like metadata payload attached to the record. - status
RecordStatus– Lifecycle status of the record. Stores default this toRecordStatus.VALID. - linked_results
Sequence tuple[[RecordRelation, Record]]– Related records attached by graph-expanded search. Each item contains the stored relation and the record reached through it. Records returned outside graph-expanded search have an empty sequence.
- id
Record Status
class oracleagentmemory.apis.records.RecordStatus
Bases: str, Enum
Lifecycle status of a persisted record.
VALID is the normal active status. INVALID retains a record for
historical use while allowing applications to exclude it from retrieval.
INVALID = ‘invalid’
VALID = ‘valid’
Scoped Record
class oracleagentmemory.apis.records.ScopedRecord
Bases: Record
Persisted record that exposes public scope identifiers.
ScopedRecord is the shared base class for record types whose public
shape includes scoping attributes like thread_id, user_id, and
agent_id. Typical examples are threads, messages, and memories.
- Parameters:
- thread_id
str | None– Optional thread scope identifier stored with the record. - user_id
str | None– Optional user scope identifier stored with the record. - agent_id
str | None– Optional agent scope identifier stored with the record. - id
str - record_type
str - content
str | None - timestamp
str | None - metadata
MetadataValue - status
RecordStatus - linked_results
Sequence tuple[[RecordRelation, Record]]
- thread_id
Message Records
class oracleagentmemory.apis.records.MessageRecord
Bases: ScopedRecord
Stored chat message record.
content accepts either a string or an ordered sequence of message
content parts.
- Parameters:
- role
str | None– Optional role associated with the message, such as"user"or"assistant". - content
str | Sequence[MessageContent]– Message text for direct construction, or an ordered sequence of TextContent and ImageContent parts. - seq_no
int– Required stable, increasing sequence number within the message’s thread. Gaps are allowed. Use it withlist_thread_messages()range boundaries to retrieve a portion of a thread’s history. - id
str - timestamp
str | None - metadata
MetadataValue - status
RecordStatus - linked_results
Sequence tuple[[RecordRelation, Record]] - thread_id
str | None - user_id
str | None - agent_id
str | None
- role
Memory Records
class oracleagentmemory.apis.records.MemoryRecord
Bases: ScopedRecord
Durable memory record.
- Parameters:
- id
str - content
str | None - timestamp
str | None - metadata
MetadataValue - status
RecordStatus - linked_results
Sequence tuple[[RecordRelation, Record]] - thread_id
str | None - user_id
str | None - agent_id
str | None
- id
Guideline Records
class oracleagentmemory.apis.records.GuidelineRecord
Bases: MemoryRecord
Guideline record stored separately from general memories.
- Parameters:
- id
str - content
str | None - timestamp
str | None - metadata
MetadataValue - status
RecordStatus - linked_results
Sequence tuple[[RecordRelation, Record]] - thread_id
str | None - user_id
str | None - agent_id
str | None
- id
Fact Records
class oracleagentmemory.apis.records.FactRecord
Bases: MemoryRecord
Fact record stored separately from general memories.
- Parameters:
- id
str - content
str | None - timestamp
str | None - metadata
MetadataValue - status
RecordStatus - linked_results
Sequence tuple[[RecordRelation, Record]] - thread_id
str | None - user_id
str | None - agent_id
str | None
- id
Preference Records
class oracleagentmemory.apis.records.PreferenceRecord
Bases: MemoryRecord
Preference record stored separately from general memories.
- Parameters:
- id
str - content
str | None - timestamp
str | None - metadata
MetadataValue - status
RecordStatus - linked_results
Sequence tuple[[RecordRelation, Record]] - thread_id
str | None - user_id
str | None - agent_id
str | None
- id
User Profile Records
class oracleagentmemory.apis.records.UserProfileRecord
Bases: Record
Unscoped user profile record.
- Parameters:
- id
str - content
str | None - timestamp
str | None - metadata
MetadataValue - status
RecordStatus - linked_results
Sequence tuple[[RecordRelation, Record]]
- id
Agent Profile Records
class oracleagentmemory.apis.records.AgentProfileRecord
Bases: Record
Unscoped agent profile record.
- Parameters:
- id
str - content
str | None - timestamp
str | None - metadata
MetadataValue - status
RecordStatus - linked_results
Sequence tuple[[RecordRelation, Record]]
- id
Image Records
class oracleagentmemory.apis.records.ImageRecord
Bases: ScopedRecord
Persisted image document record.
Image bytes are omitted by default. A scoped listing can load bytes for an explicit allowlist of image identifiers.
- Parameters:
- message_id
str | None– Optional identifier of the message that contains this image part. - mime_type
ImageMimeType– MIME type of the image. This is always required, including whenbytesis omitted from the record. - bytes
builtins.bytes | None– Image data when requested by the retrieval operation; otherwiseNone. - id
str - content
str | None - timestamp
str | None - metadata
MetadataValue - status
RecordStatus - linked_results
Sequence tuple[[RecordRelation, Record]] - thread_id
str | None - user_id
str | None - agent_id
str | None
- message_id
Thread Records
class oracleagentmemory.apis.records.ThreadRecord
Bases: ScopedRecord
Thread-scoped store record.
- Parameters:
- id
str - content
str | None - timestamp
str | None - metadata
MetadataValue - status
RecordStatus - linked_results
Sequence tuple[[RecordRelation, Record]] - thread_id
str | None - user_id
str | None - agent_id
str | None - runtime_config
dict[str, Any] | None - runtime_state
dict[str, Any] | None
- id
Helper
oracleagentmemory.apis.records.build_record
Construct the most specific record implementation for a stored row.
- Parameters:
- record_type
str– Canonical record type label. - record_id
str– Stable public identifier for the record. - content
str | dict[str, object] | Sequence[MessageContent] | None– Optional record payload. Message records may also contain an ordered sequence of structured message content parts. - thread_id
str | None– Optional thread scope identifier for scoped record types. - user_id
str | None– Optional user scope identifier for scoped record types. - agent_id
str | None– Optional agent scope identifier for scoped record types. - role
str | None– Optional chat role, used only for message records. - seq_no
int | None– Stable message sequence number required for message records. It is ignored for other record types. - timestamp
str | None– Timestamp saved for the record. It represents when the record was created. When omitted, stores use the time the record was added to the store. - metadata
dict[str, Any] | None– Optional metadata payload. - status
RecordStatus– Lifecycle status for the record. Stores default this toRecordStatus.VALID. - kwargs
Any– Additional keyword arguments for specific record types.
- record_type
- Returns:
The most specific record class known for
record_type. - Return type: Record