BerriAI/litellm · error · HTTPException
Not authorized to view spend for another user.
Error message
Not authorized to view spend for another user.
What it means
Error "Not authorized to view spend for another user." thrown in BerriAI/litellm.
Source
Thrown at litellm/proxy/spend_tracking/spend_management_endpoints.py:353
```
curl -X GET "http://0.0.0.0:8000/spend/users?user_id=1234" \
-H "Authorization: Bearer sk-1234"
```
"""
from litellm.proxy.proxy_server import prisma_client
try:
if prisma_client is None:
raise Exception(
"Database not connected. Connect a database to your proxy - https://docs.litellm.ai/docs/simple_proxy#managing-auth---virtual-keys"
)
if not _is_admin_view_safe(user_api_key_dict=user_api_key_dict):
caller_user_id: Final = user_api_key_dict.user_id
if not caller_user_id:
return []
if user_id is not None and user_id != caller_user_id:
raise HTTPException(
status_code=status.HTTP_403_FORBIDDEN,
detail={"error": "Not authorized to view spend for another user."},
)
user_id = caller_user_id
if user_id is not None:
user_info = await prisma_client.get_data(table_name="user", query_type="find_unique", user_id=user_id)
result = [user_info]
else:
user_info = await prisma_client.get_data(table_name="user", query_type="find_all")
result = user_info
_strip_password_from_users(result)
return result
except HTTPException:
raise
except Exception as e:View on GitHub (pinned to 77b7c6c40c)
Solutions
- Query spend only for your own user_id, or use a proxy admin key to view other users' spend.
When it happens
Trigger: Thrown at litellm/proxy/spend_tracking/spend_management_endpoints.py:353 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/0cf906a25772564d.
Report an issue: GitHub.