diff --git a/letta/server/rest_api/routers/v1/identities.py b/letta/server/rest_api/routers/v1/identities.py index 5e6b6853..a4311b12 100644 --- a/letta/server/rest_api/routers/v1/identities.py +++ b/letta/server/rest_api/routers/v1/identities.py @@ -51,9 +51,11 @@ def list_identities( def retrieve_identity( identity_id: str, 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 ): try: - return server.identity_manager.get_identity(identity_id=identity_id) + actor = server.user_manager.get_user_or_default(user_id=user_id) + return server.identity_manager.get_identity(identity_id=identity_id, actor=actor) except NoResultFound as e: raise HTTPException(status_code=404, detail=str(e))