From cc6a965db598ad010bc8fdb13b4b0cc91fb9326b Mon Sep 17 00:00:00 2001 From: Shubham Naik Date: Wed, 19 Feb 2025 11:31:02 -0800 Subject: [PATCH] fix: attach actor to list identities (#1060) Co-authored-by: Shubham Naik --- letta/server/rest_api/routers/v1/identities.py | 5 ++++- letta/services/identity_manager.py | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/letta/server/rest_api/routers/v1/identities.py b/letta/server/rest_api/routers/v1/identities.py index fa155e13..ecb6c7cc 100644 --- a/letta/server/rest_api/routers/v1/identities.py +++ b/letta/server/rest_api/routers/v1/identities.py @@ -20,13 +20,16 @@ def list_identities( after: Optional[str] = Query(None), limit: Optional[int] = Query(50), server: "SyncServer" = Depends(get_letta_server), + user_id: Optional[str] = Header(None, alias="user_id"), # Extract user_id from header, default to None if not present ): """ Get a list of all identities in the database """ try: + actor = server.user_manager.get_user_or_default(user_id=user_id) + identities = server.identity_manager.list_identities( - name=name, project_id=project_id, identity_type=identity_type, before=before, after=after, limit=limit + name=name, project_id=project_id, identity_type=identity_type, before=before, after=after, limit=limit, actor=actor ) except HTTPException: raise diff --git a/letta/services/identity_manager.py b/letta/services/identity_manager.py index 7372a34c..43228e47 100644 --- a/letta/services/identity_manager.py +++ b/letta/services/identity_manager.py @@ -27,6 +27,7 @@ class IdentityManager: before: Optional[str] = None, after: Optional[str] = None, limit: Optional[int] = 50, + actor: PydanticUser = None, ) -> list[PydanticIdentity]: with self.session_maker() as session: filters = {"organization_id": actor.organization_id}