BerriAI/litellm · error · HTTPException
'{field}' cannot be set in ingest_options.vector_store. Cred
Error message
'{field}' cannot be set in ingest_options.vector_store. Credentials must be configured server-side. What it means
Security guard in RAG ingest: a credential-style field (api_key, api_base, aws_*, azure tokens, etc.) was found in ingest_options.vector_store. Client requests may not supply provider credentials; they must be configured server-side, so the request is rejected naming the offending field.
Source
Thrown at litellm/proxy/rag_endpoints/endpoints.py:393
"vertex_ai_credentials",
"aws_access_key_id",
"aws_secret_access_key",
"aws_session_token",
"aws_web_identity_token",
"aws_role_name",
"aws_session_name",
"aws_profile_name",
"aws_sts_endpoint",
"aws_external_id",
"azure_ad_token",
"api_key",
"api_base",
}
vector_store_opts: Final[object] = ingest_options.get("vector_store", {})
if isinstance(vector_store_opts, dict):
for field in _BLOCKED_VECTOR_STORE_CREDENTIAL_PARAMS:
if field in vector_store_opts:
raise HTTPException(
status_code=400,
detail={
"error": f"'{field}' cannot be set in ingest_options.vector_store. "
"Credentials must be configured server-side."
},
)
return ingest_options, file_data, file_url, file_id
@router.post(
"/v1/rag/ingest",
dependencies=[Depends(user_api_key_auth)],
response_class=ORJSONResponse,
tags=["rag"],
)
@router.post(
"/rag/ingest",View on GitHub (pinned to 77b7c6c40c)
Solutions
- Remove credential fields from ingest_options.vector_store; configure vector store credentials server-side in config.yaml.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at litellm/proxy/rag_endpoints/endpoints.py:393 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/242cd3d39eeb4334.
Report an issue: GitHub.