Messages
Search All Messages
ModelsExpand Collapse
class MessageSearchRequest: …
query: str
Text query for full-text search
end_date: Optional[datetime]
Filter messages created on or before this date
limit: Optional[int]
Maximum number of results to return
search_mode: Optional[Literal["vector", "fts", "hybrid"]]
Search mode to use
start_date: Optional[datetime]
Filter messages created after this date
class MessageSearchResult: …
Result from a message search operation with scoring details.
embedded_text: str
The embedded content (LLM-friendly)
The raw message object
id: str
The human-friendly ID of the Message
The role of the participant.
agent_id: Optional[str]
The unique identifier of the agent.
approval_request_id: Optional[str]
The id of the approval request if this message is associated with a tool call request.
approvals: Optional[List[Approval]]
The list of approvals for this message.
class ApprovalReturn: …
approve: bool
Whether the tool has been approved
tool_call_id: str
The ID of the tool call that corresponds to this approval
reason: Optional[str]
An optional explanation for the provided approval status
type: Optional[Literal["approval"]]
The message type to be created.
class ApprovalLettaSchemasMessageToolReturn: …
status: Literal["success", "error"]
The status of the tool call
func_response: Optional[str]
The function response string
stderr: Optional[List[str]]
Captured stderr from the tool invocation
stdout: Optional[List[str]]
Captured stdout (e.g. prints, logs) from the tool invocation
tool_call_id: Optional[object]
The ID for the tool call
approve: Optional[bool]
Whether tool call is approved.
batch_item_id: Optional[str]
The id of the LLMBatchItem that this message is associated with
content: Optional[List[Content]]
The content of the message.
class TextContent: …
text: str
The text content of the message.
signature: Optional[str]
Stores a unique identifier for any reasoning associated with this text content.
type: Optional[Literal["text"]]
The type of the message.
class ImageContent: …
source: Source
The source of the image.
class SourceURLImage: …
url: str
The URL of the image.
type: Optional[Literal["url"]]
The source type for the image.
class SourceBase64Image: …
data: str
The base64 encoded image data.
media_type: str
The media type for the image.
detail: Optional[str]
What level of detail to use when processing and understanding the image (low, high, or auto to let the model decide)
type: Optional[Literal["base64"]]
The source type for the image.
class SourceLettaImage: …
file_id: str
The unique identifier of the image file persisted in storage.
data: Optional[str]
The base64 encoded image data.
detail: Optional[str]
What level of detail to use when processing and understanding the image (low, high, or auto to let the model decide)
media_type: Optional[str]
The media type for the image.
type: Optional[Literal["letta"]]
The source type for the image.
type: Optional[Literal["image"]]
The type of the message.
class ToolCallContent: …
id: str
A unique identifier for this specific tool call instance.
input: Dict[str, object]
The parameters being passed to the tool, structured as a dictionary of parameter names to values.
name: str
The name of the tool being called.
signature: Optional[str]
Stores a unique identifier for any reasoning associated with this tool call.
type: Optional[Literal["tool_call"]]
Indicates this content represents a tool call event.
class ToolReturnContent: …
content: str
The content returned by the tool execution.
is_error: bool
Indicates whether the tool execution resulted in an error.
tool_call_id: str
References the ID of the ToolCallContent that initiated this tool call.
type: Optional[Literal["tool_return"]]
Indicates this content represents a tool return event.
class ReasoningContent: …
Sent via the Anthropic Messages API
is_native: bool
Whether the reasoning content was generated by a reasoner model that processed this step.
reasoning: str
The intermediate reasoning or thought process content.
signature: Optional[str]
A unique identifier for this reasoning step.
type: Optional[Literal["reasoning"]]
Indicates this is a reasoning/intermediate step.
class RedactedReasoningContent: …
Sent via the Anthropic Messages API
data: str
The redacted or filtered intermediate reasoning content.
type: Optional[Literal["redacted_reasoning"]]
Indicates this is a redacted thinking step.
class OmittedReasoningContent: …
A placeholder for reasoning content we know is present, but isn't returned by the provider (e.g. OpenAI GPT-5 on ChatCompletions)
signature: Optional[str]
A unique identifier for this reasoning step.
type: Optional[Literal["omitted_reasoning"]]
Indicates this is an omitted reasoning step.
class ContentSummarizedReasoningContent: …
The style of reasoning content returned by the OpenAI Responses API
id: str
The unique identifier for this reasoning step.
summary: List[ContentSummarizedReasoningContentSummary]
Summaries of the reasoning content.
index: int
The index of the summary part.
text: str
The text of the summary part.
encrypted_content: Optional[str]
The encrypted reasoning content.
type: Optional[Literal["summarized_reasoning"]]
Indicates this is a summarized reasoning step.
created_at: Optional[datetime]
The timestamp when the object was created.
created_by_id: Optional[str]
The id of the user that made this object.
denial_reason: Optional[str]
The reason the tool call request was denied.
group_id: Optional[str]
The multi-agent group that the message was sent in
is_err: Optional[bool]
Whether this message is part of an error step. Used only for debugging purposes.
last_updated_by_id: Optional[str]
The id of the user that made this object.
model: Optional[str]
The model used to make the function call.
name: Optional[str]
For role user/assistant: the (optional) name of the participant. For role tool/function: the name of the function called.
otid: Optional[str]
The offline threading id associated with this message
run_id: Optional[str]
The id of the run that this message was created in.
sender_id: Optional[str]
The id of the sender of the message, can be an identity id or agent id
step_id: Optional[str]
The id of the step that this message was created in.
tool_call_id: Optional[str]
The ID of the tool call. Only applicable for role tool.
tool_calls: Optional[List[ToolCall]]
The list of tool calls requested. Only applicable for role assistant.
function: ToolCallFunction
type: Literal["function"]
tool_returns: Optional[List[ToolReturn]]
Tool execution return information for prior tool calls
status: Literal["success", "error"]
The status of the tool call
func_response: Optional[str]
The function response string
stderr: Optional[List[str]]
Captured stderr from the tool invocation
stdout: Optional[List[str]]
Captured stdout (e.g. prints, logs) from the tool invocation
tool_call_id: Optional[object]
The ID for the tool call
updated_at: Optional[datetime]
The timestamp when the object was last updated.
rrf_score: float
Reciprocal Rank Fusion combined score
fts_rank: Optional[int]
Full-text search rank position if FTS was used
vector_rank: Optional[int]
Vector search rank position if vector search was used