BerriAI/litellm · error · HTTPException

organization_alias cannot be cleared; it is required

Error message

organization_alias cannot be cleared; it is required

What it means

Immutability guard on organization update: the payload explicitly sets organization_alias to null (field present in model_fields_set). Aliases are required for every organization, so clearing is rejected with 422 — send a non-null value to rename instead.

Source

Thrown at litellm/proxy/management_endpoints/organization_endpoints.py:807

            detail={"error": f"max_budget must be a non-negative finite number. Received: {data.max_budget}"},
        )
    if data.soft_budget is not None and (not math.isfinite(data.soft_budget) or data.soft_budget < 0):
        raise HTTPException(
            status_code=422,
            detail={"error": f"soft_budget must be a non-negative finite number. Received: {data.soft_budget}"},
        )
    if data.model_max_budget:
        from litellm.proxy.management_endpoints.key_management_endpoints import (
            validate_model_max_budget,
        )

        try:
            validate_model_max_budget(data.model_max_budget)
        except ValueError as e:
            raise HTTPException(status_code=422, detail={"error": str(e)})

    if "organization_alias" in data.model_fields_set and data.organization_alias is None:
        raise HTTPException(
            status_code=422,
            detail={"error": "organization_alias cannot be cleared; it is required"},
        )
    if "models" in data.model_fields_set and data.models is None:
        raise HTTPException(
            status_code=422,
            detail={"error": "models cannot be set to null; send [] to clear it"},
        )
    if data.object_permission is not None and not data.object_permission.model_dump(exclude_none=True):
        raise HTTPException(
            status_code=422,
            detail={
                "error": "object_permission cannot be an empty object; send null to clear it, or a non-empty object to set grants"
            },
        )

    await _verify_org_access(
        organization_id=organization_id,

View on GitHub (pinned to 77b7c6c40c)

Solutions

  1. Provide a non-empty organization_alias; it cannot be cleared.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at litellm/proxy/management_endpoints/organization_endpoints.py:807 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/2006235f6b523265. Report an issue: GitHub.