From 62a00cc6729a017b16533ed4a1cb6dadb20d9761 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 18:15:10 -0800 Subject: [PATCH] fix: remove deprecation from agent passages endpoints (#9117) * fix: remove deprecation from agent passages endpoints The client.agent.passages endpoints (list, create, search, delete) were incorrectly marked as deprecated. This would break significant amounts of user code and negatively impact developer experience. Fixes #9116 Co-authored-by: Ari Webb * stage publish api --------- Co-authored-by: letta-code <248085862+letta-code@users.noreply.github.com> Co-authored-by: Ari Webb Co-authored-by: Ari Webb --- fern/openapi.json | 4 ---- letta/server/rest_api/routers/v1/agents.py | 7 +++---- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/fern/openapi.json b/fern/openapi.json index 78e85da4..95d6a9c9 100644 --- a/fern/openapi.json +++ b/fern/openapi.json @@ -7007,7 +7007,6 @@ "summary": "List Passages", "description": "Retrieve the memories in an agent's archival memory store (paginated query).", "operationId": "list_passages", - "deprecated": true, "parameters": [ { "name": "agent_id", @@ -7149,7 +7148,6 @@ "summary": "Create Passage", "description": "Insert a memory into an agent's archival memory store.", "operationId": "create_passage", - "deprecated": true, "parameters": [ { "name": "agent_id", @@ -7211,7 +7209,6 @@ "summary": "Search Archival Memory", "description": "Search archival memory using semantic (embedding-based) search with optional temporal filtering.\n\nThis endpoint allows manual triggering of archival memory searches, enabling users to query\nan agent's archival memory store directly via the API. The search uses the same functionality\nas the agent's archival_memory_search tool but is accessible for external API usage.", "operationId": "search_archival_memory", - "deprecated": true, "parameters": [ { "name": "agent_id", @@ -7360,7 +7357,6 @@ "summary": "Delete Passage", "description": "Delete a memory from an agent's archival memory store.", "operationId": "delete_passage", - "deprecated": true, "parameters": [ { "name": "memory_id", diff --git a/letta/server/rest_api/routers/v1/agents.py b/letta/server/rest_api/routers/v1/agents.py index 35a2b898..e0abe150 100644 --- a/letta/server/rest_api/routers/v1/agents.py +++ b/letta/server/rest_api/routers/v1/agents.py @@ -1276,7 +1276,7 @@ async def detach_identity_from_agent( return None -@router.get("/{agent_id}/archival-memory", response_model=list[Passage], operation_id="list_passages", deprecated=True) +@router.get("/{agent_id}/archival-memory", response_model=list[Passage], operation_id="list_passages") async def list_passages( agent_id: AgentId, server: "SyncServer" = Depends(get_letta_server), @@ -1305,7 +1305,7 @@ async def list_passages( ) -@router.post("/{agent_id}/archival-memory", response_model=list[Passage], operation_id="create_passage", deprecated=True) +@router.post("/{agent_id}/archival-memory", response_model=list[Passage], operation_id="create_passage") async def create_passage( agent_id: AgentId, request: CreateArchivalMemory = Body(...), @@ -1326,7 +1326,6 @@ async def create_passage( "/{agent_id}/archival-memory/search", response_model=ArchivalMemorySearchResponse, operation_id="search_archival_memory", - deprecated=True, ) async def search_archival_memory( agent_id: AgentId, @@ -1374,7 +1373,7 @@ async def search_archival_memory( # TODO(ethan): query or path parameter for memory_id? # @router.delete("/{agent_id}/archival") -@router.delete("/{agent_id}/archival-memory/{memory_id}", response_model=None, operation_id="delete_passage", deprecated=True) +@router.delete("/{agent_id}/archival-memory/{memory_id}", response_model=None, operation_id="delete_passage") async def delete_passage( memory_id: str, agent_id: AgentId,