{"record":{"id":"b9bb780091334ad1","repo":"BerriAI/litellm","slug":"user-not-found-in-team","errorCode":null,"errorMessage":"User not found in team","messagePattern":"User not found in team","errorType":"http","errorClass":"HTTPException","httpStatus":400,"severity":"error","filePath":"litellm/proxy/management_endpoints/team_endpoints.py","lineNumber":3253,"sourceCode":"        and not await _is_user_org_admin_for_team(user_api_key_dict=user_api_key_dict, team_obj=existing_team_row)\n    ):\n        raise HTTPException(\n            status_code=403,\n            detail={\n                \"error\": \"Call not allowed. User not proxy admin OR team admin. route={}, team_id={}\".format(\n                    \"/team/member_delete\", existing_team_row.team_id\n                )\n            },\n        )\n\n    ## DELETE MEMBER FROM TEAM\n    removed_team_members, new_team_members = _cleanup_members_with_roles(\n        existing_team_row=existing_team_row,\n        data=data,\n    )\n\n    if not removed_team_members:\n        raise HTTPException(status_code=400, detail={\"error\": \"User not found in team\"})\n\n    existing_team_row.members_with_roles = new_team_members\n\n    _db_new_team_members: Final[list[dict]] = [m.model_dump() for m in new_team_members]\n\n    _ = await _team_db(prisma_client).update(\n        where={\n            \"team_id\": data.team_id,\n        },\n        data={\"members_with_roles\": json.dumps(_db_new_team_members)},\n    )\n\n    _emit_team_members_metric(existing_team_row)\n\n    ## DELETE TEAM ID from USER ROW, IF EXISTS ##\n    # get user row\n    removed_user_ids: Final = frozenset(m.user_id for m in removed_team_members if m.user_id is not None)\n    key_val: Final[Mapping[str, object]] = (","sourceCodeStart":3235,"sourceCodeEnd":3271,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/proxy/management_endpoints/team_endpoints.py#L3235-L3271","documentation":"Error \"User not found in team\" thrown in BerriAI/litellm.","triggerScenarios":"Thrown at litellm/proxy/management_endpoints/team_endpoints.py:3253 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Confirm the user is actually a member of the team (GET /team/info) before removing or updating them."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8","analyzedAt":"2026-08-18T11:44:31.656Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}