BerriAI/litellm · error · HTTPException

Multiple users found with email '{member.user_email}'. Pleas

Error message

Multiple users found with email '{member.user_email}'. Please use 'user_id' instead.

What it means

Error "Multiple users found with email '{member.user_email}'. Please use 'user_id' instead." thrown in BerriAI/litellm.

Source

Thrown at litellm/proxy/management_endpoints/team_endpoints.py:2943

            detail={"error": "Either user_id or user_email must be provided"},
        )

    # Case 1: Both user_email and user_id provided - verify they match
    if member.user_email is not None and member.user_id is not None:
        # Use user_email as source of truth
        # Check for multiple users with same email first
        users_by_email = await prisma_client.get_data(
            key_val={"user_email": member.user_email},
            table_name="user",
            query_type="find_all",
        )

        if users_by_email is None or (isinstance(users_by_email, list) and len(users_by_email) == 0):
            # User doesn't exist yet - this is fine, will be created later
            return member

        if isinstance(users_by_email, list) and len(users_by_email) > 1:
            raise HTTPException(
                status_code=400,
                detail={
                    "error": f"Multiple users found with email '{member.user_email}'. Please use 'user_id' instead."
                },
            )

        # Get the single user
        user_by_email = users_by_email[0]

        # Verify the user_id matches
        if user_by_email.user_id != member.user_id:
            raise HTTPException(
                status_code=400,
                detail={
                    "error": f"user_email '{member.user_email}' and user_id '{member.user_id}' do not belong to the same user."
                },
            )

View on GitHub (pinned to 77b7c6c40c)

Solutions

  1. Use user_id instead of user_email to disambiguate between multiple users with that email.

When it happens

Trigger: Thrown at litellm/proxy/management_endpoints/team_endpoints.py:2943 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18). Data as JSON: /api/errors/59d3c24625820e0b. Report an issue: GitHub.