BerriAI/litellm · error · HTTPException
Only proxy admins can set `allowed_routes` on a key. Use `ke
Error message
Only proxy admins can set `allowed_routes` on a key. Use `key_type` to pick a preset route bucket instead.
What it means
Error "Only proxy admins can set `allowed_routes` on a key. Use `key_type` to pick a preset route bucket instead." thrown in BerriAI/litellm.
Source
Thrown at litellm/proxy/management_endpoints/key_management_endpoints.py:664
one that sends any explicit value.
Post-`handle_key_type` call sites pass `allow_safe_presets=True` with the
values derived by `handle_key_type`; those values are not from the request
body, so `allowed_routes_was_provided` stays False and the safe-preset
carve-out below accepts any list of tokens in
`_NON_ADMIN_SAFE_ALLOWED_ROUTES_PRESETS`.
"""
if not allowed_routes_was_provided and not allowed_routes:
return
if user_api_key_dict.user_role == LitellmUserRoles.PROXY_ADMIN.value:
return
if (
allow_safe_presets
and allowed_routes
and all(r in _NON_ADMIN_SAFE_ALLOWED_ROUTES_PRESETS for r in allowed_routes)
):
return
raise HTTPException(
status_code=403,
detail={
"error": (
"Only proxy admins can set `allowed_routes` on a key. "
"Use `key_type` to pick a preset route bucket instead."
)
},
)
def _check_permissions_caller_permission(
data: GenerateRequestBase,
user_api_key_dict: UserAPIKeyAuth,
) -> None:
"""
Require PROXY_ADMIN when `permissions` is present in the request body.
Presence is detected via `data.model_fields_set` so a caller thatView on GitHub (pinned to 77b7c6c40c)
Solutions
- Use the key_type parameter to select a preset route bucket instead of allowed_routes.
- Ask a proxy admin to set allowed_routes on the key.
When it happens
Trigger: Thrown at litellm/proxy/management_endpoints/key_management_endpoints.py:664 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/59cb2b538e59c704.
Report an issue: GitHub.