BerriAI/litellm · error · HTTPException
Only proxy admins can delete organizations
Error message
Only proxy admins can delete organizations
What it means
Role guard on organization delete: deletion cascades — it removes the org's teams, memberships, and keys — so it is restricted to PROXY_ADMIN. Any other role is rejected with 401 before the cascade begins.
Source
Thrown at litellm/proxy/management_endpoints/organization_endpoints.py:926
user_api_key_dict: UserAPIKeyAuth = Depends(user_api_key_auth),
):
"""
Delete an organization
# Parameters:
- organization_ids: List[str] - The organization ids to delete.
"""
from litellm.proxy.proxy_server import prisma_client
if prisma_client is None:
raise HTTPException(
status_code=500,
detail={"error": CommonProxyErrors.db_not_connected_error.value},
)
if user_api_key_dict.user_role != LitellmUserRoles.PROXY_ADMIN:
raise HTTPException(
status_code=401,
detail={"error": "Only proxy admins can delete organizations"},
)
deleted_orgs: Final = []
for organization_id in data.organization_ids:
# delete all teams in the organization
await _table(TeamRepository(prisma_client)).delete_many(where={"organization_id": organization_id})
# delete all members in the organization
await _table(OrganizationMembershipRepository(prisma_client)).delete_many(
where={"organization_id": organization_id}
)
# delete all keys in the organization
await _table(VerificationTokenRepository(prisma_client)).delete_many(where={"organization_id": organization_id})
# delete the organization
deleted_org = await _table(OrganizationRepository(prisma_client)).delete(
where={"organization_id": organization_id},
include={"members": True, "teams": True, "litellm_budget_table": True},View on GitHub (pinned to 77b7c6c40c)
Solutions
- Use a PROXY_ADMIN API key to delete organizations.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at litellm/proxy/management_endpoints/organization_endpoints.py:926 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/54de3d404a4bc50f.
Report an issue: GitHub.