@homeflare/distilled-litellm 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +48 -12
- package/dist/services/a2a.js +1 -1
- package/dist/services/a2a_registration.js +1 -1
- package/dist/services/access_groups.d.ts +18 -0
- package/dist/services/access_groups.d.ts.map +1 -1
- package/dist/services/access_groups.js +15 -1
- package/dist/services/access_groups.js.map +1 -1
- package/dist/services/adaptive_router.js +1 -1
- package/dist/services/agents.d.ts +10 -0
- package/dist/services/agents.d.ts.map +1 -1
- package/dist/services/agents.js +10 -1
- package/dist/services/agents.js.map +1 -1
- package/dist/services/alerting.js +1 -1
- package/dist/services/anthropic_passthrough.js +1 -1
- package/dist/services/anthropic_skills.d.ts +7 -1
- package/dist/services/anthropic_skills.d.ts.map +1 -1
- package/dist/services/anthropic_skills.js +6 -2
- package/dist/services/anthropic_skills.js.map +1 -1
- package/dist/services/assistants.js +1 -1
- package/dist/services/audio.js +1 -1
- package/dist/services/audit_logging.d.ts +2 -0
- package/dist/services/audit_logging.d.ts.map +1 -1
- package/dist/services/audit_logging.js +2 -1
- package/dist/services/audit_logging.js.map +1 -1
- package/dist/services/auto_router.d.ts +162 -62
- package/dist/services/auto_router.d.ts.map +1 -1
- package/dist/services/auto_router.js +92 -31
- package/dist/services/auto_router.js.map +1 -1
- package/dist/services/batch.js +1 -1
- package/dist/services/beta_agents.js +1 -1
- package/dist/services/beta_mcp.js +1 -1
- package/dist/services/budget_management.d.ts +8 -3
- package/dist/services/budget_management.d.ts.map +1 -1
- package/dist/services/budget_management.js +7 -4
- package/dist/services/budget_management.js.map +1 -1
- package/dist/services/budget_spend_tracking.d.ts +24 -5
- package/dist/services/budget_spend_tracking.d.ts.map +1 -1
- package/dist/services/budget_spend_tracking.js +17 -4
- package/dist/services/budget_spend_tracking.js.map +1 -1
- package/dist/services/cache_settings.js +1 -1
- package/dist/services/caching.js +1 -1
- package/dist/services/chat_completions.js +1 -1
- package/dist/services/claude_code_marketplace.d.ts +11 -10
- package/dist/services/claude_code_marketplace.d.ts.map +1 -1
- package/dist/services/claude_code_marketplace.js +8 -6
- package/dist/services/claude_code_marketplace.js.map +1 -1
- package/dist/services/cloudzero.js +1 -1
- package/dist/services/completions.js +1 -1
- package/dist/services/compliance.js +1 -1
- package/dist/services/config_overrides.d.ts +5 -1
- package/dist/services/config_overrides.d.ts.map +1 -1
- package/dist/services/config_overrides.js +3 -1
- package/dist/services/config_overrides.js.map +1 -1
- package/dist/services/config_yaml.d.ts +120 -6
- package/dist/services/config_yaml.d.ts.map +1 -1
- package/dist/services/config_yaml.js +67 -1
- package/dist/services/config_yaml.js.map +1 -1
- package/dist/services/containers.d.ts +8 -2
- package/dist/services/containers.d.ts.map +1 -1
- package/dist/services/containers.js +13 -5
- package/dist/services/containers.js.map +1 -1
- package/dist/services/coordination_redis_settings.js +1 -1
- package/dist/services/cost_tracking.d.ts +91 -1
- package/dist/services/cost_tracking.d.ts.map +1 -1
- package/dist/services/cost_tracking.js +82 -2
- package/dist/services/cost_tracking.js.map +1 -1
- package/dist/services/credential_management.d.ts +16 -3
- package/dist/services/credential_management.d.ts.map +1 -1
- package/dist/services/credential_management.js +13 -4
- package/dist/services/credential_management.js.map +1 -1
- package/dist/services/customer_management.d.ts +25 -2
- package/dist/services/customer_management.d.ts.map +1 -1
- package/dist/services/customer_management.js +22 -3
- package/dist/services/customer_management.js.map +1 -1
- package/dist/services/email_management.js +1 -1
- package/dist/services/embeddings.js +1 -1
- package/dist/services/evals.js +1 -1
- package/dist/services/experimental.js +1 -1
- package/dist/services/fallback_management.js +1 -1
- package/dist/services/files.js +1 -1
- package/dist/services/fine_tuning.js +1 -1
- package/dist/services/gemini_agents.js +1 -1
- package/dist/services/google_genai_endpoints.js +1 -1
- package/dist/services/guardrails.d.ts +80 -7
- package/dist/services/guardrails.d.ts.map +1 -1
- package/dist/services/guardrails.js +37 -1
- package/dist/services/guardrails.js.map +1 -1
- package/dist/services/health.d.ts +2 -2
- package/dist/services/health.d.ts.map +1 -1
- package/dist/services/health.js +2 -2
- package/dist/services/health.js.map +1 -1
- package/dist/services/images.js +1 -1
- package/dist/services/index.d.ts +1 -15
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +1 -15
- package/dist/services/index.js.map +1 -1
- package/dist/services/internal_user_management.d.ts +227 -39
- package/dist/services/internal_user_management.d.ts.map +1 -1
- package/dist/services/internal_user_management.js +194 -37
- package/dist/services/internal_user_management.js.map +1 -1
- package/dist/services/invite_links.js +1 -1
- package/dist/services/jwt_mappings.d.ts +3 -0
- package/dist/services/jwt_mappings.d.ts.map +1 -1
- package/dist/services/jwt_mappings.js +4 -1
- package/dist/services/jwt_mappings.js.map +1 -1
- package/dist/services/key_management.d.ts +116 -50
- package/dist/services/key_management.d.ts.map +1 -1
- package/dist/services/key_management.js +95 -40
- package/dist/services/key_management.js.map +1 -1
- package/dist/services/langfuse_passthrough.js +1 -1
- package/dist/services/llm_passthrough.d.ts +1199 -0
- package/dist/services/llm_passthrough.d.ts.map +1 -0
- package/dist/services/llm_passthrough.js +2150 -0
- package/dist/services/llm_passthrough.js.map +1 -0
- package/dist/services/llm_utils.js +1 -1
- package/dist/services/logging_callbacks.js +1 -1
- package/dist/services/mcp_byok_oauth.d.ts +18 -11
- package/dist/services/mcp_byok_oauth.d.ts.map +1 -1
- package/dist/services/mcp_byok_oauth.js +27 -24
- package/dist/services/mcp_byok_oauth.js.map +1 -1
- package/dist/services/mcp_discoverable.d.ts +34 -0
- package/dist/services/mcp_discoverable.d.ts.map +1 -1
- package/dist/services/mcp_discoverable.js +51 -1
- package/dist/services/mcp_discoverable.js.map +1 -1
- package/dist/services/mcp_management.d.ts +90 -2
- package/dist/services/mcp_management.d.ts.map +1 -1
- package/dist/services/mcp_management.js +115 -3
- package/dist/services/mcp_management.js.map +1 -1
- package/dist/services/mcp_rest.d.ts +13 -0
- package/dist/services/mcp_rest.d.ts.map +1 -1
- package/dist/services/mcp_rest.js +10 -2
- package/dist/services/mcp_rest.js.map +1 -1
- package/dist/services/memory_management.d.ts +2 -0
- package/dist/services/memory_management.d.ts.map +1 -1
- package/dist/services/memory_management.js +2 -1
- package/dist/services/memory_management.js.map +1 -1
- package/dist/services/misc.d.ts +86 -1
- package/dist/services/misc.d.ts.map +1 -1
- package/dist/services/misc.js +126 -2
- package/dist/services/misc.js.map +1 -1
- package/dist/services/model_management.d.ts +310 -19
- package/dist/services/model_management.d.ts.map +1 -1
- package/dist/services/model_management.js +240 -7
- package/dist/services/model_management.js.map +1 -1
- package/dist/services/moderations.js +1 -1
- package/dist/services/ocr.js +1 -1
- package/dist/services/open_ai_pass_through.d.ts +35 -90
- package/dist/services/open_ai_pass_through.d.ts.map +1 -1
- package/dist/services/open_ai_pass_through.js +41 -139
- package/dist/services/open_ai_pass_through.js.map +1 -1
- package/dist/services/organization_management.d.ts +21 -1
- package/dist/services/organization_management.d.ts.map +1 -1
- package/dist/services/organization_management.js +20 -2
- package/dist/services/organization_management.js.map +1 -1
- package/dist/services/plugins.js +1 -1
- package/dist/services/policies.d.ts +2 -0
- package/dist/services/policies.d.ts.map +1 -1
- package/dist/services/policies.js +3 -1
- package/dist/services/policies.js.map +1 -1
- package/dist/services/policy_engine.d.ts +6 -0
- package/dist/services/policy_engine.d.ts.map +1 -1
- package/dist/services/policy_engine.js +4 -1
- package/dist/services/policy_engine.js.map +1 -1
- package/dist/services/project_management.d.ts +15 -0
- package/dist/services/project_management.d.ts.map +1 -1
- package/dist/services/project_management.js +14 -1
- package/dist/services/project_management.js.map +1 -1
- package/dist/services/prompts.js +1 -1
- package/dist/services/public.d.ts +124 -0
- package/dist/services/public.d.ts.map +1 -1
- package/dist/services/public.js +158 -1
- package/dist/services/public.js.map +1 -1
- package/dist/services/rag.js +1 -1
- package/dist/services/realtime.d.ts +4 -26
- package/dist/services/realtime.d.ts.map +1 -1
- package/dist/services/realtime.js +7 -57
- package/dist/services/realtime.js.map +1 -1
- package/dist/services/rerank.d.ts +72 -0
- package/dist/services/rerank.d.ts.map +1 -1
- package/dist/services/rerank.js +61 -4
- package/dist/services/rerank.js.map +1 -1
- package/dist/services/responses.d.ts +30 -0
- package/dist/services/responses.d.ts.map +1 -1
- package/dist/services/responses.js +59 -1
- package/dist/services/responses.js.map +1 -1
- package/dist/services/router_settings.js +1 -1
- package/dist/services/rust_control_plane.js +1 -1
- package/dist/services/scim.d.ts +41 -1
- package/dist/services/scim.d.ts.map +1 -1
- package/dist/services/scim.js +60 -2
- package/dist/services/scim.js.map +1 -1
- package/dist/services/search.js +1 -1
- package/dist/services/search_tools.js +1 -1
- package/dist/services/settings.d.ts +88 -0
- package/dist/services/settings.d.ts.map +1 -1
- package/dist/services/settings.js +113 -1
- package/dist/services/settings.js.map +1 -1
- package/dist/services/sso_settings.d.ts +1 -1
- package/dist/services/sso_settings.d.ts.map +1 -1
- package/dist/services/sso_settings.js +1 -1
- package/dist/services/sso_settings.js.map +1 -1
- package/dist/services/tag_management.d.ts +7 -0
- package/dist/services/tag_management.d.ts.map +1 -1
- package/dist/services/tag_management.js +8 -1
- package/dist/services/tag_management.js.map +1 -1
- package/dist/services/team_management.d.ts +265 -17
- package/dist/services/team_management.d.ts.map +1 -1
- package/dist/services/team_management.js +247 -12
- package/dist/services/team_management.js.map +1 -1
- package/dist/services/tools.js +1 -1
- package/dist/services/ui_settings.js +1 -1
- package/dist/services/ui_theme_settings.js +1 -1
- package/dist/services/usage_ai.js +1 -1
- package/dist/services/vantage.js +1 -1
- package/dist/services/vector_store_management.js +1 -1
- package/dist/services/vector_stores.js +1 -1
- package/dist/services/videos.js +1 -1
- package/dist/services/web_socket.d.ts +0 -18
- package/dist/services/web_socket.d.ts.map +1 -1
- package/dist/services/web_socket.js +1 -33
- package/dist/services/web_socket.js.map +1 -1
- package/dist/services/workflow_management.js +1 -1
- package/package.json +1 -1
- package/src/services/a2a.ts +1 -1
- package/src/services/a2a_registration.ts +1 -1
- package/src/services/access_groups.ts +44 -1
- package/src/services/adaptive_router.ts +1 -1
- package/src/services/agents.ts +22 -1
- package/src/services/alerting.ts +1 -1
- package/src/services/anthropic_passthrough.ts +1 -1
- package/src/services/anthropic_skills.ts +12 -2
- package/src/services/assistants.ts +1 -1
- package/src/services/audio.ts +1 -1
- package/src/services/audit_logging.ts +4 -1
- package/src/services/auto_router.ts +303 -93
- package/src/services/batch.ts +1 -1
- package/src/services/beta_agents.ts +1 -1
- package/src/services/beta_mcp.ts +1 -1
- package/src/services/budget_management.ts +12 -4
- package/src/services/budget_spend_tracking.ts +38 -6
- package/src/services/cache_settings.ts +1 -1
- package/src/services/caching.ts +1 -1
- package/src/services/chat_completions.ts +1 -1
- package/src/services/claude_code_marketplace.ts +20 -14
- package/src/services/cloudzero.ts +1 -1
- package/src/services/completions.ts +1 -1
- package/src/services/compliance.ts +1 -1
- package/src/services/config_overrides.ts +8 -2
- package/src/services/config_yaml.ts +251 -6
- package/src/services/containers.ts +29 -11
- package/src/services/coordination_redis_settings.ts +1 -1
- package/src/services/cost_tracking.ts +198 -2
- package/src/services/credential_management.ts +25 -6
- package/src/services/customer_management.ts +49 -3
- package/src/services/email_management.ts +1 -1
- package/src/services/embeddings.ts +1 -1
- package/src/services/evals.ts +1 -1
- package/src/services/experimental.ts +1 -1
- package/src/services/fallback_management.ts +1 -1
- package/src/services/files.ts +1 -1
- package/src/services/fine_tuning.ts +1 -1
- package/src/services/gemini_agents.ts +1 -1
- package/src/services/google_genai_endpoints.ts +1 -1
- package/src/services/guardrails.ts +198 -8
- package/src/services/health.ts +3 -2
- package/src/services/images.ts +1 -1
- package/src/services/index.ts +1 -15
- package/src/services/internal_user_management.ts +565 -103
- package/src/services/invite_links.ts +1 -1
- package/src/services/jwt_mappings.ts +7 -1
- package/src/services/key_management.ts +257 -127
- package/src/services/langfuse_passthrough.ts +1 -1
- package/src/services/llm_passthrough.ts +4542 -0
- package/src/services/llm_utils.ts +1 -1
- package/src/services/logging_callbacks.ts +1 -1
- package/src/services/mcp_byok_oauth.ts +65 -45
- package/src/services/mcp_discoverable.ts +109 -1
- package/src/services/mcp_management.ts +258 -3
- package/src/services/mcp_rest.ts +30 -5
- package/src/services/memory_management.ts +4 -1
- package/src/services/misc.ts +269 -2
- package/src/services/model_management.ts +666 -21
- package/src/services/moderations.ts +1 -1
- package/src/services/ocr.ts +1 -1
- package/src/services/open_ai_pass_through.ts +81 -286
- package/src/services/organization_management.ts +44 -2
- package/src/services/plugins.ts +1 -1
- package/src/services/policies.ts +5 -1
- package/src/services/policy_engine.ts +10 -1
- package/src/services/project_management.ts +33 -1
- package/src/services/prompts.ts +1 -1
- package/src/services/public.ts +356 -1
- package/src/services/rag.ts +1 -1
- package/src/services/realtime.ts +11 -111
- package/src/services/rerank.ts +187 -7
- package/src/services/responses.ts +117 -1
- package/src/services/router_settings.ts +1 -1
- package/src/services/rust_control_plane.ts +1 -1
- package/src/services/scim.ts +134 -3
- package/src/services/search.ts +1 -1
- package/src/services/search_tools.ts +1 -1
- package/src/services/settings.ts +278 -1
- package/src/services/sso_settings.ts +2 -1
- package/src/services/tag_management.ts +15 -1
- package/src/services/team_management.ts +676 -37
- package/src/services/tools.ts +1 -1
- package/src/services/ui_settings.ts +1 -1
- package/src/services/ui_theme_settings.ts +1 -1
- package/src/services/usage_ai.ts +1 -1
- package/src/services/vantage.ts +1 -1
- package/src/services/vector_store_management.ts +1 -1
- package/src/services/vector_stores.ts +1 -1
- package/src/services/videos.ts +1 -1
- package/src/services/web_socket.ts +1 -61
- package/src/services/workflow_management.ts +1 -1
- package/dist/services/anthropic_pass_through.d.ts +0 -70
- package/dist/services/anthropic_pass_through.d.ts.map +0 -1
- package/dist/services/anthropic_pass_through.js +0 -114
- package/dist/services/anthropic_pass_through.js.map +0 -1
- package/dist/services/assembly_ai_eu_pass_through.d.ts +0 -70
- package/dist/services/assembly_ai_eu_pass_through.d.ts.map +0 -1
- package/dist/services/assembly_ai_eu_pass_through.js +0 -114
- package/dist/services/assembly_ai_eu_pass_through.js.map +0 -1
- package/dist/services/assembly_ai_pass_through.d.ts +0 -70
- package/dist/services/assembly_ai_pass_through.d.ts.map +0 -1
- package/dist/services/assembly_ai_pass_through.js +0 -114
- package/dist/services/assembly_ai_pass_through.js.map +0 -1
- package/dist/services/aws_comprehend_medical_pass_through.d.ts +0 -36
- package/dist/services/aws_comprehend_medical_pass_through.d.ts.map +0 -1
- package/dist/services/aws_comprehend_medical_pass_through.js +0 -56
- package/dist/services/aws_comprehend_medical_pass_through.js.map +0 -1
- package/dist/services/azure_ai_pass_through.d.ts +0 -70
- package/dist/services/azure_ai_pass_through.d.ts.map +0 -1
- package/dist/services/azure_ai_pass_through.js +0 -112
- package/dist/services/azure_ai_pass_through.js.map +0 -1
- package/dist/services/azure_pass_through.d.ts +0 -70
- package/dist/services/azure_pass_through.d.ts.map +0 -1
- package/dist/services/azure_pass_through.js +0 -107
- package/dist/services/azure_pass_through.js.map +0 -1
- package/dist/services/bedrock_pass_through.d.ts +0 -70
- package/dist/services/bedrock_pass_through.d.ts.map +0 -1
- package/dist/services/bedrock_pass_through.js +0 -114
- package/dist/services/bedrock_pass_through.js.map +0 -1
- package/dist/services/cohere_pass_through.d.ts +0 -70
- package/dist/services/cohere_pass_through.d.ts.map +0 -1
- package/dist/services/cohere_pass_through.js +0 -112
- package/dist/services/cohere_pass_through.js.map +0 -1
- package/dist/services/cursor_pass_through.d.ts +0 -70
- package/dist/services/cursor_pass_through.d.ts.map +0 -1
- package/dist/services/cursor_pass_through.js +0 -112
- package/dist/services/cursor_pass_through.js.map +0 -1
- package/dist/services/google_ai_studio_pass_through.d.ts +0 -70
- package/dist/services/google_ai_studio_pass_through.d.ts.map +0 -1
- package/dist/services/google_ai_studio_pass_through.js +0 -112
- package/dist/services/google_ai_studio_pass_through.js.map +0 -1
- package/dist/services/milvus_pass_through.d.ts +0 -70
- package/dist/services/milvus_pass_through.d.ts.map +0 -1
- package/dist/services/milvus_pass_through.js +0 -112
- package/dist/services/milvus_pass_through.js.map +0 -1
- package/dist/services/mistral_pass_through.d.ts +0 -70
- package/dist/services/mistral_pass_through.d.ts.map +0 -1
- package/dist/services/mistral_pass_through.js +0 -114
- package/dist/services/mistral_pass_through.js.map +0 -1
- package/dist/services/vertex_ai_pass_through.d.ts +0 -180
- package/dist/services/vertex_ai_pass_through.d.ts.map +0 -1
- package/dist/services/vertex_ai_pass_through.js +0 -334
- package/dist/services/vertex_ai_pass_through.js.map +0 -1
- package/dist/services/vllm_pass_through.d.ts +0 -70
- package/dist/services/vllm_pass_through.d.ts.map +0 -1
- package/dist/services/vllm_pass_through.js +0 -104
- package/dist/services/vllm_pass_through.js.map +0 -1
- package/dist/services/watsonx_pass_through.d.ts +0 -70
- package/dist/services/watsonx_pass_through.d.ts.map +0 -1
- package/dist/services/watsonx_pass_through.js +0 -114
- package/dist/services/watsonx_pass_through.js.map +0 -1
- package/src/services/anthropic_pass_through.ts +0 -233
- package/src/services/assembly_ai_eu_pass_through.ts +0 -237
- package/src/services/assembly_ai_pass_through.ts +0 -237
- package/src/services/aws_comprehend_medical_pass_through.ts +0 -109
- package/src/services/azure_ai_pass_through.ts +0 -231
- package/src/services/azure_pass_through.ts +0 -227
- package/src/services/bedrock_pass_through.ts +0 -229
- package/src/services/cohere_pass_through.ts +0 -227
- package/src/services/cursor_pass_through.ts +0 -227
- package/src/services/google_ai_studio_pass_through.ts +0 -227
- package/src/services/milvus_pass_through.ts +0 -227
- package/src/services/mistral_pass_through.ts +0 -229
- package/src/services/vertex_ai_pass_through.ts +0 -684
- package/src/services/vllm_pass_through.ts +0 -227
- package/src/services/watsonx_pass_through.ts +0 -229
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// AUTO-GENERATED by scripts/generate.ts from .generated-specs (pinned litellm-openapi @ 1.
|
|
1
|
+
// AUTO-GENERATED by scripts/generate.ts from .generated-specs (pinned litellm-openapi @ 1.103.0 — see README). Do not edit.
|
|
2
2
|
import * as S from "@distilled.cloud/core/schema";
|
|
3
3
|
import * as Redacted from "effect/Redacted";
|
|
4
4
|
import * as API from "@distilled.cloud/core/api";
|
|
@@ -18,6 +18,25 @@ export class Forbidden extends /*@__PURE__*/ /*@__PURE__*/ T.applyErrorMatchers(
|
|
|
18
18
|
message: S.String,
|
|
19
19
|
}).pipe(C.withAuthError), [{ status: 403 }]) {
|
|
20
20
|
}
|
|
21
|
+
/** The caller may not delete a key it named (it is not a proxy admin and not allowed to modify that key). LiteLLM answers 403 with the message `You are not authorized to delete this key`; the key was not deleted. */
|
|
22
|
+
export class KeyDeleteForbidden extends /*@__PURE__*/ /*@__PURE__*/ T.applyErrorMatchers(
|
|
23
|
+
/*@__PURE__*/ S.TaggedError()("KeyDeleteForbidden", {
|
|
24
|
+
code: S.Number,
|
|
25
|
+
message: S.String,
|
|
26
|
+
}).pipe(C.withAuthError), [
|
|
27
|
+
{
|
|
28
|
+
status: 403,
|
|
29
|
+
message: { includes: "not authorized to delete this key" },
|
|
30
|
+
},
|
|
31
|
+
]) {
|
|
32
|
+
}
|
|
33
|
+
/** No key matches what /key/delete was asked to delete: the alias (or key) is absent, or another caller deleted it first. LiteLLM answers 404 with the message `No keys found`. Whether the key is still there is a question for /key/list, not for this error. */
|
|
34
|
+
export class KeyNotFound extends /*@__PURE__*/ /*@__PURE__*/ T.applyErrorMatchers(
|
|
35
|
+
/*@__PURE__*/ S.TaggedError()("KeyNotFound", {
|
|
36
|
+
code: S.Number,
|
|
37
|
+
message: S.String,
|
|
38
|
+
}).pipe(C.withBadRequestError), [{ status: 404, message: { includes: "No keys found" } }]) {
|
|
39
|
+
}
|
|
21
40
|
export class NotFound extends /*@__PURE__*/ /*@__PURE__*/ T.applyErrorMatchers(
|
|
22
41
|
/*@__PURE__*/ S.TaggedError()("NotFound", {
|
|
23
42
|
code: S.Number,
|
|
@@ -30,11 +49,46 @@ export class UnprocessableEntity extends /*@__PURE__*/ /*@__PURE__*/ T.applyErro
|
|
|
30
49
|
message: S.String,
|
|
31
50
|
}).pipe(C.withBadRequestError), [{ status: 422 }]) {
|
|
32
51
|
}
|
|
52
|
+
export const LiteLLMObjectPermissionBaseAgentAccessGroupsList =
|
|
53
|
+
/*@__PURE__*/ S.Array(S.String);
|
|
54
|
+
export const LiteLLMObjectPermissionBaseAgentsList = /*@__PURE__*/ S.Array(S.String);
|
|
55
|
+
export const LiteLLMObjectPermissionBaseBlockedToolsList =
|
|
56
|
+
/*@__PURE__*/ S.Array(S.String);
|
|
57
|
+
export const LiteLLMObjectPermissionBaseMcpAccessGroupsList =
|
|
58
|
+
/*@__PURE__*/ S.Array(S.String);
|
|
59
|
+
export const LiteLLMObjectPermissionBaseMcpServersList = /*@__PURE__*/ S.Array(S.String);
|
|
60
|
+
export const LiteLLMObjectPermissionBaseMcpToolPermissionsValueList =
|
|
61
|
+
/*@__PURE__*/ S.Array(S.String);
|
|
62
|
+
export const LiteLLMObjectPermissionBaseMcpToolPermissionsMap =
|
|
63
|
+
/*@__PURE__*/ S.Record(S.String, LiteLLMObjectPermissionBaseMcpToolPermissionsValueList);
|
|
64
|
+
export const LiteLLMObjectPermissionBaseMcpToolsetsList = /*@__PURE__*/ S.Array(S.String);
|
|
65
|
+
export const LiteLLMObjectPermissionBaseModelsList = /*@__PURE__*/ S.Array(S.String);
|
|
66
|
+
export const LiteLLMObjectPermissionBaseSearchToolsList = /*@__PURE__*/ S.Array(S.String);
|
|
67
|
+
export const LiteLLMObjectPermissionBaseSkillsList = /*@__PURE__*/ S.Array(S.String);
|
|
68
|
+
export const LiteLLMObjectPermissionBaseVectorStoresList =
|
|
69
|
+
/*@__PURE__*/ S.Array(S.String);
|
|
70
|
+
export const LiteLLMObjectPermissionBase = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
71
|
+
agent_access_groups: S.optional(S.NullOr(LiteLLMObjectPermissionBaseAgentAccessGroupsList)),
|
|
72
|
+
agents: S.optional(S.NullOr(LiteLLMObjectPermissionBaseAgentsList)),
|
|
73
|
+
blocked_tools: S.optional(S.NullOr(LiteLLMObjectPermissionBaseBlockedToolsList)),
|
|
74
|
+
mcp_access_groups: S.optional(S.NullOr(LiteLLMObjectPermissionBaseMcpAccessGroupsList)),
|
|
75
|
+
mcp_servers: S.optional(S.NullOr(LiteLLMObjectPermissionBaseMcpServersList)),
|
|
76
|
+
mcp_tool_permissions: S.optional(S.NullOr(LiteLLMObjectPermissionBaseMcpToolPermissionsMap)),
|
|
77
|
+
mcp_tool_search_enabled: S.optional(S.NullOr(S.Boolean)),
|
|
78
|
+
mcp_toolsets: S.optional(S.NullOr(LiteLLMObjectPermissionBaseMcpToolsetsList)),
|
|
79
|
+
models: S.optional(S.NullOr(LiteLLMObjectPermissionBaseModelsList)),
|
|
80
|
+
search_tools: S.optional(S.NullOr(LiteLLMObjectPermissionBaseSearchToolsList)),
|
|
81
|
+
skills: S.optional(S.NullOr(LiteLLMObjectPermissionBaseSkillsList)),
|
|
82
|
+
vector_stores: S.optional(S.NullOr(LiteLLMObjectPermissionBaseVectorStoresList)),
|
|
83
|
+
})).annotate({
|
|
84
|
+
identifier: "LiteLLMObjectPermissionBase",
|
|
85
|
+
});
|
|
33
86
|
export const BulkUpdateKeyRequestItemTagsList = /*@__PURE__*/ S.Array(S.String);
|
|
34
87
|
export const BulkUpdateKeyRequestItem = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
35
88
|
budget_id: S.optional(S.NullOr(S.String)),
|
|
36
89
|
key: S.String,
|
|
37
90
|
max_budget: S.optional(S.NullOr(S.Number)),
|
|
91
|
+
object_permission: S.optional(S.NullOr(LiteLLMObjectPermissionBase)),
|
|
38
92
|
tags: S.optional(S.NullOr(BulkUpdateKeyRequestItemTagsList)),
|
|
39
93
|
team_id: S.optional(S.NullOr(S.String)),
|
|
40
94
|
})).annotate({
|
|
@@ -180,38 +234,6 @@ export const GenerateKeyFnKeyGeneratePostRequestModelTpmLimitMap =
|
|
|
180
234
|
/*@__PURE__*/ S.Record(S.String, S.Unknown);
|
|
181
235
|
export const GenerateKeyFnKeyGeneratePostRequestModelsList =
|
|
182
236
|
/*@__PURE__*/ S.Array(S.Unknown);
|
|
183
|
-
export const LiteLLMObjectPermissionBaseAgentAccessGroupsList =
|
|
184
|
-
/*@__PURE__*/ S.Array(S.String);
|
|
185
|
-
export const LiteLLMObjectPermissionBaseAgentsList = /*@__PURE__*/ S.Array(S.String);
|
|
186
|
-
export const LiteLLMObjectPermissionBaseBlockedToolsList =
|
|
187
|
-
/*@__PURE__*/ S.Array(S.String);
|
|
188
|
-
export const LiteLLMObjectPermissionBaseMcpAccessGroupsList =
|
|
189
|
-
/*@__PURE__*/ S.Array(S.String);
|
|
190
|
-
export const LiteLLMObjectPermissionBaseMcpServersList = /*@__PURE__*/ S.Array(S.String);
|
|
191
|
-
export const LiteLLMObjectPermissionBaseMcpToolPermissionsValueList =
|
|
192
|
-
/*@__PURE__*/ S.Array(S.String);
|
|
193
|
-
export const LiteLLMObjectPermissionBaseMcpToolPermissionsMap =
|
|
194
|
-
/*@__PURE__*/ S.Record(S.String, LiteLLMObjectPermissionBaseMcpToolPermissionsValueList);
|
|
195
|
-
export const LiteLLMObjectPermissionBaseMcpToolsetsList = /*@__PURE__*/ S.Array(S.String);
|
|
196
|
-
export const LiteLLMObjectPermissionBaseModelsList = /*@__PURE__*/ S.Array(S.String);
|
|
197
|
-
export const LiteLLMObjectPermissionBaseSearchToolsList = /*@__PURE__*/ S.Array(S.String);
|
|
198
|
-
export const LiteLLMObjectPermissionBaseVectorStoresList =
|
|
199
|
-
/*@__PURE__*/ S.Array(S.String);
|
|
200
|
-
export const LiteLLMObjectPermissionBase = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
201
|
-
agent_access_groups: S.optional(S.NullOr(LiteLLMObjectPermissionBaseAgentAccessGroupsList)),
|
|
202
|
-
agents: S.optional(S.NullOr(LiteLLMObjectPermissionBaseAgentsList)),
|
|
203
|
-
blocked_tools: S.optional(S.NullOr(LiteLLMObjectPermissionBaseBlockedToolsList)),
|
|
204
|
-
mcp_access_groups: S.optional(S.NullOr(LiteLLMObjectPermissionBaseMcpAccessGroupsList)),
|
|
205
|
-
mcp_servers: S.optional(S.NullOr(LiteLLMObjectPermissionBaseMcpServersList)),
|
|
206
|
-
mcp_tool_permissions: S.optional(S.NullOr(LiteLLMObjectPermissionBaseMcpToolPermissionsMap)),
|
|
207
|
-
mcp_tool_search_enabled: S.optional(S.NullOr(S.Boolean)),
|
|
208
|
-
mcp_toolsets: S.optional(S.NullOr(LiteLLMObjectPermissionBaseMcpToolsetsList)),
|
|
209
|
-
models: S.optional(S.NullOr(LiteLLMObjectPermissionBaseModelsList)),
|
|
210
|
-
search_tools: S.optional(S.NullOr(LiteLLMObjectPermissionBaseSearchToolsList)),
|
|
211
|
-
vector_stores: S.optional(S.NullOr(LiteLLMObjectPermissionBaseVectorStoresList)),
|
|
212
|
-
})).annotate({
|
|
213
|
-
identifier: "LiteLLMObjectPermissionBase",
|
|
214
|
-
});
|
|
215
237
|
export const GenerateKeyFnKeyGeneratePostRequestPermissionsMap =
|
|
216
238
|
/*@__PURE__*/ S.Record(S.String, S.Unknown);
|
|
217
239
|
export const GenerateKeyFnKeyGeneratePostRequestPoliciesList =
|
|
@@ -236,12 +258,17 @@ export const RetryPolicy = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
|
236
258
|
AuthenticationErrorRetries: S.optional(S.NullOr(S.Number)),
|
|
237
259
|
BadRequestErrorRetries: S.optional(S.NullOr(S.Number)),
|
|
238
260
|
ContentPolicyViolationErrorRetries: S.optional(S.NullOr(S.Number)),
|
|
261
|
+
DefaultRetries: S.optional(S.NullOr(S.Number)),
|
|
239
262
|
InternalServerErrorRetries: S.optional(S.NullOr(S.Number)),
|
|
240
263
|
RateLimitErrorRetries: S.optional(S.NullOr(S.Number)),
|
|
264
|
+
ServiceUnavailableErrorRetries: S.optional(S.NullOr(S.Number)),
|
|
241
265
|
TimeoutErrorRetries: S.optional(S.NullOr(S.Number)),
|
|
242
266
|
})).annotate({ identifier: "RetryPolicy" });
|
|
243
267
|
export const UpdateRouterConfigModelGroupRetryPolicyMap =
|
|
244
268
|
/*@__PURE__*/ S.Record(S.String, RetryPolicy);
|
|
269
|
+
export const UpdateRouterConfigOptionalPreCallChecksItem = S.String;
|
|
270
|
+
export const UpdateRouterConfigOptionalPreCallChecksList =
|
|
271
|
+
/*@__PURE__*/ S.Array(UpdateRouterConfigOptionalPreCallChecksItem);
|
|
245
272
|
export const RoutingGroupModelsList = /*@__PURE__*/ S.Array(S.String);
|
|
246
273
|
export const RoutingGroupRoutingStrategyArgsMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
|
|
247
274
|
export const RoutingGroup = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
@@ -263,6 +290,7 @@ export const UpdateRouterConfig = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
|
263
290
|
model_group_alias: S.optional(S.NullOr(UpdateRouterConfigModelGroupAliasMap)),
|
|
264
291
|
model_group_retry_policy: S.optional(S.NullOr(UpdateRouterConfigModelGroupRetryPolicyMap)),
|
|
265
292
|
num_retries: S.optional(S.NullOr(S.Number)),
|
|
293
|
+
optional_pre_call_checks: S.optional(S.NullOr(UpdateRouterConfigOptionalPreCallChecksList)),
|
|
266
294
|
retry_after: S.optional(S.NullOr(S.Number)),
|
|
267
295
|
retry_policy: S.optional(S.NullOr(RetryPolicy)),
|
|
268
296
|
routing_groups: S.optional(S.NullOr(UpdateRouterConfigRoutingGroupsList)),
|
|
@@ -270,6 +298,7 @@ export const UpdateRouterConfig = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
|
270
298
|
routing_strategy_args: S.optional(S.NullOr(UpdateRouterConfigRoutingStrategyArgsMap)),
|
|
271
299
|
tag_routing_prefix: S.optional(S.NullOr(S.String)),
|
|
272
300
|
timeout: S.optional(S.NullOr(S.Number)),
|
|
301
|
+
weights: S.optional(S.NullOr(S.Unknown)),
|
|
273
302
|
})).annotate({
|
|
274
303
|
identifier: "UpdateRouterConfig",
|
|
275
304
|
});
|
|
@@ -299,6 +328,7 @@ export const GenerateKeyFnKeyGeneratePostRequest = /*@__PURE__*/ S.suspend(() =>
|
|
|
299
328
|
disable_global_guardrails: S.optional(S.NullOr(S.Boolean)),
|
|
300
329
|
duration: S.optional(S.NullOr(S.String)),
|
|
301
330
|
enable_prompt_caching: S.optional(S.NullOr(S.Boolean)),
|
|
331
|
+
end_user_budget_id: S.optional(S.NullOr(S.String)),
|
|
302
332
|
enforced_params: S.optional(S.NullOr(GenerateKeyFnKeyGeneratePostRequestEnforcedParamsList)),
|
|
303
333
|
guardrails: S.optional(S.NullOr(GenerateKeyFnKeyGeneratePostRequestGuardrailsList)),
|
|
304
334
|
key: S.optional(S.NullOr(S.String)),
|
|
@@ -329,6 +359,7 @@ export const GenerateKeyFnKeyGeneratePostRequest = /*@__PURE__*/ S.suspend(() =>
|
|
|
329
359
|
tags: S.optional(S.NullOr(GenerateKeyFnKeyGeneratePostRequestTagsList)),
|
|
330
360
|
team_id: S.optional(S.NullOr(S.String)),
|
|
331
361
|
throttle_on_budget_exceeded: S.optional(S.NullOr(S.Boolean)),
|
|
362
|
+
tpd_limit: S.optional(S.NullOr(S.Number)),
|
|
332
363
|
tpm_limit: S.optional(S.NullOr(S.Number)),
|
|
333
364
|
tpm_limit_type: S.optional(S.NullOr(GenerateKeyFnKeyGeneratePostRequestTpmLimitType)),
|
|
334
365
|
user_id: S.optional(S.NullOr(S.String)),
|
|
@@ -387,6 +418,7 @@ export const GenerateKeyResponse = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
|
387
418
|
disable_global_guardrails: S.optional(S.NullOr(S.Boolean)),
|
|
388
419
|
duration: S.optional(S.NullOr(S.String)),
|
|
389
420
|
enable_prompt_caching: S.optional(S.NullOr(S.Boolean)),
|
|
421
|
+
end_user_budget_id: S.optional(S.NullOr(S.String)),
|
|
390
422
|
enforced_params: S.optional(S.NullOr(GenerateKeyResponseEnforcedParamsList)),
|
|
391
423
|
expires: S.optional(S.NullOr(S.String)),
|
|
392
424
|
guardrails: S.optional(S.NullOr(GenerateKeyResponseGuardrailsList)),
|
|
@@ -419,6 +451,7 @@ export const GenerateKeyResponse = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
|
419
451
|
throttle_on_budget_exceeded: S.optional(S.NullOr(S.Boolean)),
|
|
420
452
|
token: S.optional(S.NullOr(S.String)),
|
|
421
453
|
token_id: S.optional(S.NullOr(S.String)),
|
|
454
|
+
tpd_limit: S.optional(S.NullOr(S.Number)),
|
|
422
455
|
tpm_limit: S.optional(S.NullOr(S.Number)),
|
|
423
456
|
tpm_limit_type: S.optional(S.NullOr(GenerateKeyResponseTpmLimitType)),
|
|
424
457
|
updated_at: S.optional(S.NullOr(S.String)),
|
|
@@ -498,6 +531,7 @@ export const GenerateServiceAccountKeyFnKeyServiceAccountGeneratePostRequest =
|
|
|
498
531
|
disable_global_guardrails: S.optional(S.NullOr(S.Boolean)),
|
|
499
532
|
duration: S.optional(S.NullOr(S.String)),
|
|
500
533
|
enable_prompt_caching: S.optional(S.NullOr(S.Boolean)),
|
|
534
|
+
end_user_budget_id: S.optional(S.NullOr(S.String)),
|
|
501
535
|
enforced_params: S.optional(S.NullOr(GenerateServiceAccountKeyFnKeyServiceAccountGeneratePostRequestEnforcedParamsList)),
|
|
502
536
|
guardrails: S.optional(S.NullOr(GenerateServiceAccountKeyFnKeyServiceAccountGeneratePostRequestGuardrailsList)),
|
|
503
537
|
key: S.optional(S.NullOr(S.String)),
|
|
@@ -528,6 +562,7 @@ export const GenerateServiceAccountKeyFnKeyServiceAccountGeneratePostRequest =
|
|
|
528
562
|
tags: S.optional(S.NullOr(GenerateServiceAccountKeyFnKeyServiceAccountGeneratePostRequestTagsList)),
|
|
529
563
|
team_id: S.optional(S.NullOr(S.String)),
|
|
530
564
|
throttle_on_budget_exceeded: S.optional(S.NullOr(S.Boolean)),
|
|
565
|
+
tpd_limit: S.optional(S.NullOr(S.Number)),
|
|
531
566
|
tpm_limit: S.optional(S.NullOr(S.Number)),
|
|
532
567
|
tpm_limit_type: S.optional(S.NullOr(GenerateServiceAccountKeyFnKeyServiceAccountGeneratePostRequestTpmLimitType)),
|
|
533
568
|
user_id: S.optional(S.NullOr(S.String)),
|
|
@@ -577,6 +612,7 @@ export const ListKeysKeyListGetRequest = /*@__PURE__*/ S.suspend(() => S.Struct(
|
|
|
577
612
|
organization_id: S.optional(S.String.pipe(T.Query())),
|
|
578
613
|
key_hash: S.optional(S.String.pipe(T.Query())),
|
|
579
614
|
key_alias: S.optional(S.String.pipe(T.Query())),
|
|
615
|
+
search: S.optional(S.String.pipe(T.Query())),
|
|
580
616
|
return_full_object: S.optional(S.Boolean.pipe(T.Query())),
|
|
581
617
|
include_team_keys: S.optional(S.Boolean.pipe(T.Query())),
|
|
582
618
|
include_created_by_keys: S.optional(S.Boolean.pipe(T.Query())),
|
|
@@ -620,6 +656,7 @@ export const LiteLLMObjectPermissionTableMcpToolsetsList =
|
|
|
620
656
|
export const LiteLLMObjectPermissionTableModelsList = /*@__PURE__*/ S.Array(S.String);
|
|
621
657
|
export const LiteLLMObjectPermissionTableSearchToolsList =
|
|
622
658
|
/*@__PURE__*/ S.Array(S.String);
|
|
659
|
+
export const LiteLLMObjectPermissionTableSkillsList = /*@__PURE__*/ S.Array(S.String);
|
|
623
660
|
export const LiteLLMObjectPermissionTableVectorStoresList =
|
|
624
661
|
/*@__PURE__*/ S.Array(S.String);
|
|
625
662
|
export const LiteLLMObjectPermissionTable = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
@@ -634,6 +671,7 @@ export const LiteLLMObjectPermissionTable = /*@__PURE__*/ S.suspend(() => S.Stru
|
|
|
634
671
|
models: S.optional(S.NullOr(LiteLLMObjectPermissionTableModelsList)),
|
|
635
672
|
object_permission_id: S.String,
|
|
636
673
|
search_tools: S.optional(S.NullOr(LiteLLMObjectPermissionTableSearchToolsList)),
|
|
674
|
+
skills: S.optional(S.NullOr(LiteLLMObjectPermissionTableSkillsList)),
|
|
637
675
|
vector_stores: S.optional(S.NullOr(LiteLLMObjectPermissionTableVectorStoresList)),
|
|
638
676
|
})).annotate({
|
|
639
677
|
identifier: "LiteLLMObjectPermissionTable",
|
|
@@ -657,6 +695,7 @@ export const Member = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
|
657
695
|
})).annotate({ identifier: "Member" });
|
|
658
696
|
export const UserAPIKeyAuthTeamMetadataMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
|
|
659
697
|
export const UserAPIKeyAuthTeamModelAliasesMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
|
|
698
|
+
export const UserAPIKeyAuthTeamModelMaxBudgetMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
|
|
660
699
|
export const UserAPIKeyAuthTeamModelsList = /*@__PURE__*/ S.Array(S.Unknown);
|
|
661
700
|
export const UserAPIKeyAuthTpmLimitPerModelMap = /*@__PURE__*/ S.Record(S.String, S.Number);
|
|
662
701
|
export const UserAPIKeyAuthUserModelMaxBudgetMap = /*@__PURE__*/ S.Record(S.String, S.Unknown);
|
|
@@ -685,6 +724,7 @@ export const UserAPIKeyAuth = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
|
685
724
|
end_user_model_max_budget: S.optional(S.NullOr(UserAPIKeyAuthEndUserModelMaxBudgetMap)),
|
|
686
725
|
end_user_object_permission: S.optional(S.NullOr(LiteLLMObjectPermissionTable)),
|
|
687
726
|
end_user_rpm_limit: S.optional(S.NullOr(S.Number)),
|
|
727
|
+
end_user_tpd_limit: S.optional(S.NullOr(S.Number)),
|
|
688
728
|
end_user_tpm_limit: S.optional(S.NullOr(S.Number)),
|
|
689
729
|
expires: S.optional(S.NullOr(S.String)),
|
|
690
730
|
is_session_token: S.optional(S.Boolean),
|
|
@@ -736,14 +776,18 @@ export const UserAPIKeyAuth = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
|
736
776
|
team_member_tpm_limit: S.optional(S.NullOr(S.Number)),
|
|
737
777
|
team_metadata: S.optional(S.NullOr(UserAPIKeyAuthTeamMetadataMap)),
|
|
738
778
|
team_model_aliases: S.optional(S.NullOr(UserAPIKeyAuthTeamModelAliasesMap)),
|
|
779
|
+
team_model_max_budget: S.optional(S.NullOr(UserAPIKeyAuthTeamModelMaxBudgetMap)),
|
|
739
780
|
team_models: S.optional(UserAPIKeyAuthTeamModelsList),
|
|
740
781
|
team_object_permission: S.optional(S.NullOr(LiteLLMObjectPermissionTable)),
|
|
741
782
|
team_object_permission_id: S.optional(S.NullOr(S.String)),
|
|
742
783
|
team_rpm_limit: S.optional(S.NullOr(S.Number)),
|
|
743
784
|
team_soft_budget: S.optional(S.NullOr(S.Number)),
|
|
744
785
|
team_spend: S.optional(S.NullOr(S.Number)),
|
|
786
|
+
team_tpd_limit: S.optional(S.NullOr(S.Number)),
|
|
745
787
|
team_tpm_limit: S.optional(S.NullOr(S.Number)),
|
|
746
788
|
token: S.optional(S.NullOr(S.String)),
|
|
789
|
+
total_spend: S.optional(S.Number),
|
|
790
|
+
tpd_limit: S.optional(S.NullOr(S.Number)),
|
|
747
791
|
tpm_limit: S.optional(S.NullOr(S.Number)),
|
|
748
792
|
tpm_limit_per_model: S.optional(S.NullOr(UserAPIKeyAuthTpmLimitPerModelMap)),
|
|
749
793
|
updated_at: S.optional(S.NullOr(S.String)),
|
|
@@ -825,6 +869,7 @@ export const LiteLLMDeletedVerificationToken = /*@__PURE__*/ S.suspend(() => S.S
|
|
|
825
869
|
object_permission: S.optional(S.NullOr(LiteLLMObjectPermissionTable)),
|
|
826
870
|
object_permission_id: S.optional(S.NullOr(S.String)),
|
|
827
871
|
org_id: S.optional(S.NullOr(S.String)),
|
|
872
|
+
organization_id: S.optional(S.NullOr(S.String)),
|
|
828
873
|
permissions: S.optional(LiteLLMDeletedVerificationTokenPermissionsMap),
|
|
829
874
|
project_id: S.optional(S.NullOr(S.String)),
|
|
830
875
|
rotation_count: S.optional(S.NullOr(S.Number)),
|
|
@@ -836,6 +881,8 @@ export const LiteLLMDeletedVerificationToken = /*@__PURE__*/ S.suspend(() => S.S
|
|
|
836
881
|
spend: S.optional(S.Number),
|
|
837
882
|
team_id: S.optional(S.NullOr(S.String)),
|
|
838
883
|
token: S.optional(S.NullOr(S.String)),
|
|
884
|
+
total_spend: S.optional(S.Number),
|
|
885
|
+
tpd_limit: S.optional(S.NullOr(S.Number)),
|
|
839
886
|
tpm_limit: S.optional(S.NullOr(S.Number)),
|
|
840
887
|
updated_at: S.optional(S.NullOr(S.String)),
|
|
841
888
|
updated_by: S.optional(S.NullOr(S.String)),
|
|
@@ -923,6 +970,8 @@ export const LiteLLMVerificationToken = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
|
923
970
|
spend: S.optional(S.Number),
|
|
924
971
|
team_id: S.optional(S.NullOr(S.String)),
|
|
925
972
|
token: S.optional(S.NullOr(S.String)),
|
|
973
|
+
total_spend: S.optional(S.Number),
|
|
974
|
+
tpd_limit: S.optional(S.NullOr(S.Number)),
|
|
926
975
|
tpm_limit: S.optional(S.NullOr(S.Number)),
|
|
927
976
|
updated_at: S.optional(S.NullOr(S.String)),
|
|
928
977
|
updated_by: S.optional(S.NullOr(S.String)),
|
|
@@ -1021,6 +1070,7 @@ export const RegenerateKeyRequest = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
|
1021
1070
|
disable_global_guardrails: S.optional(S.NullOr(S.Boolean)),
|
|
1022
1071
|
duration: S.optional(S.NullOr(S.String)),
|
|
1023
1072
|
enable_prompt_caching: S.optional(S.NullOr(S.Boolean)),
|
|
1073
|
+
end_user_budget_id: S.optional(S.NullOr(S.String)),
|
|
1024
1074
|
enforced_params: S.optional(S.NullOr(RegenerateKeyRequestEnforcedParamsList)),
|
|
1025
1075
|
grace_period: S.optional(S.NullOr(S.String)),
|
|
1026
1076
|
guardrails: S.optional(S.NullOr(RegenerateKeyRequestGuardrailsList)),
|
|
@@ -1054,6 +1104,7 @@ export const RegenerateKeyRequest = /*@__PURE__*/ S.suspend(() => S.Struct({
|
|
|
1054
1104
|
tags: S.optional(S.NullOr(RegenerateKeyRequestTagsList)),
|
|
1055
1105
|
team_id: S.optional(S.NullOr(S.String)),
|
|
1056
1106
|
throttle_on_budget_exceeded: S.optional(S.NullOr(S.Boolean)),
|
|
1107
|
+
tpd_limit: S.optional(S.NullOr(S.Number)),
|
|
1057
1108
|
tpm_limit: S.optional(S.NullOr(S.Number)),
|
|
1058
1109
|
tpm_limit_type: S.optional(S.NullOr(RegenerateKeyRequestTpmLimitType)),
|
|
1059
1110
|
user_id: S.optional(S.NullOr(S.String)),
|
|
@@ -1174,6 +1225,7 @@ export const UpdateKeyFnKeyUpdatePostRequest = /*@__PURE__*/ S.suspend(() => S.S
|
|
|
1174
1225
|
disable_global_guardrails: S.optional(S.NullOr(S.Boolean)),
|
|
1175
1226
|
duration: S.optional(S.NullOr(S.String)),
|
|
1176
1227
|
enable_prompt_caching: S.optional(S.NullOr(S.Boolean)),
|
|
1228
|
+
end_user_budget_id: S.optional(S.NullOr(S.String)),
|
|
1177
1229
|
enforced_params: S.optional(S.NullOr(UpdateKeyFnKeyUpdatePostRequestEnforcedParamsList)),
|
|
1178
1230
|
guardrails: S.optional(S.NullOr(UpdateKeyFnKeyUpdatePostRequestGuardrailsList)),
|
|
1179
1231
|
key: S.optional(S.NullOr(S.String)),
|
|
@@ -1190,11 +1242,13 @@ export const UpdateKeyFnKeyUpdatePostRequest = /*@__PURE__*/ S.suspend(() => S.S
|
|
|
1190
1242
|
organization_id: S.optional(S.NullOr(S.String)),
|
|
1191
1243
|
permissions: S.optional(S.NullOr(UpdateKeyFnKeyUpdatePostRequestPermissionsMap)),
|
|
1192
1244
|
policies: S.optional(S.NullOr(UpdateKeyFnKeyUpdatePostRequestPoliciesList)),
|
|
1245
|
+
project_id: S.optional(S.NullOr(S.String)),
|
|
1193
1246
|
prompts: S.optional(S.NullOr(UpdateKeyFnKeyUpdatePostRequestPromptsList)),
|
|
1194
1247
|
rotation_interval: S.optional(S.NullOr(S.String)),
|
|
1195
1248
|
router_settings: S.optional(S.NullOr(UpdateRouterConfig)),
|
|
1196
1249
|
rpm_limit: S.optional(S.NullOr(S.Number)),
|
|
1197
1250
|
rpm_limit_type: S.optional(S.NullOr(UpdateKeyFnKeyUpdatePostRequestRpmLimitType)),
|
|
1251
|
+
soft_budget: S.optional(S.NullOr(S.Number)),
|
|
1198
1252
|
spend: S.optional(S.NullOr(S.Number)),
|
|
1199
1253
|
tag_rpm_limit: S.optional(S.NullOr(UpdateKeyFnKeyUpdatePostRequestTagRpmLimitMap)),
|
|
1200
1254
|
tags: S.optional(S.NullOr(UpdateKeyFnKeyUpdatePostRequestTagsList)),
|
|
@@ -1202,6 +1256,7 @@ export const UpdateKeyFnKeyUpdatePostRequest = /*@__PURE__*/ S.suspend(() => S.S
|
|
|
1202
1256
|
temp_budget_expiry: S.optional(S.NullOr(S.String)),
|
|
1203
1257
|
temp_budget_increase: S.optional(S.NullOr(S.Number)),
|
|
1204
1258
|
throttle_on_budget_exceeded: S.optional(S.NullOr(S.Boolean)),
|
|
1259
|
+
tpd_limit: S.optional(S.NullOr(S.Number)),
|
|
1205
1260
|
tpm_limit: S.optional(S.NullOr(S.Number)),
|
|
1206
1261
|
tpm_limit_type: S.optional(S.NullOr(UpdateKeyFnKeyUpdatePostRequestTpmLimitType)),
|
|
1207
1262
|
user_id: S.optional(S.NullOr(S.String)),
|
|
@@ -1213,7 +1268,7 @@ export const UpdateKeyFnKeyUpdatePostResponse = /*@__PURE__*/ S.suspend(() => S.
|
|
|
1213
1268
|
})).annotate({
|
|
1214
1269
|
identifier: "UpdateKeyFnKeyUpdatePostResponse",
|
|
1215
1270
|
});
|
|
1216
|
-
/** Bulk Update Keys Bulk update multiple keys at once. This endpoint allows updating multiple keys in a single request. Each key update is processed independently - if some updates fail, others will still succeed. Parameters: - keys: List[BulkUpdateKeyRequestItem] - List of key update requests, each containing: - key: str - The key identifier (token) to update - budget_id: Optional[str] - Budget ID associated with the key - max_budget: Optional[float] - Max budget for key - team_id: Optional[str] - Team ID associated with key - tags: Optional[List[str]] - Tags for organizing keys Returns: - total_requested: int - Total number of keys requested for update - successful_updates: List[SuccessfulKeyUpdate] - List of successfully updated keys with their updated info - failed_updates: List[FailedKeyUpdate] - List of failed updates with key_info and failed_reason Example request: ```bash curl --location 'http://0.0.0.0:4000/key/bulk_update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ "keys": [ { "key": "sk-1234", "max_budget": 100.0, "team_id": "team-123", "tags": ["production", "api"] }, { "key": "sk-5678", "budget_id": "budget-456", "tags": ["staging"] } ] }' ``` */
|
|
1271
|
+
/** Bulk Update Keys Bulk update multiple keys at once. This endpoint allows updating multiple keys in a single request. Each key update is processed independently - if some updates fail, others will still succeed. Parameters: - keys: List[BulkUpdateKeyRequestItem] - List of key update requests, each containing: - key: str - The key identifier (token) to update - budget_id: Optional[str] - Budget ID associated with the key - max_budget: Optional[float] - Max budget for key - team_id: Optional[str] - Team ID associated with key - tags: Optional[List[str]] - Tags for organizing keys - object_permission: Optional[LiteLLM_ObjectPermissionBase] - key-specific object permission, as on /key/update Only the fields an item carries are written: a field left out keeps its current value, and a field sent explicitly, null included, is applied exactly as /key/update applies it. Returns: - total_requested: int - Total number of keys requested for update - successful_updates: List[SuccessfulKeyUpdate] - List of successfully updated keys with their updated info - failed_updates: List[FailedKeyUpdate] - List of failed updates with key_info and failed_reason Example request: ```bash curl --location 'http://0.0.0.0:4000/key/bulk_update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ "keys": [ { "key": "sk-1234", "max_budget": 100.0, "team_id": "team-123", "tags": ["production", "api"] }, { "key": "sk-5678", "budget_id": "budget-456", "tags": ["staging"] } ] }' ``` */
|
|
1217
1272
|
export const bulkUpdateKeysKeyBulkUpdatePost = /*@__PURE__*/ API.make(() => ({
|
|
1218
1273
|
input: BulkUpdateKeysKeyBulkUpdatePostRequest,
|
|
1219
1274
|
output: BulkUpdateKeyResponse,
|
|
@@ -1233,11 +1288,11 @@ export const bulkUpdateTeamKeysTeamKeyBulkUpdatePost = /*@__PURE__*/ API.make(()
|
|
|
1233
1288
|
export const deleteKeyFnKeyDeletePost = /*@__PURE__*/ API.make(() => ({
|
|
1234
1289
|
input: DeleteKeyFnKeyDeletePostRequest,
|
|
1235
1290
|
output: DeleteKeyFnKeyDeletePostResponse,
|
|
1236
|
-
errors: [BadRequest, UnprocessableEntity],
|
|
1291
|
+
errors: [BadRequest, UnprocessableEntity, KeyNotFound, KeyDeleteForbidden],
|
|
1237
1292
|
protocol: LitellmProtocol,
|
|
1238
1293
|
retry: Retry.Retry,
|
|
1239
1294
|
}));
|
|
1240
|
-
/** Generate Key Fn Generate an API key based on the provided data. Docs: https://docs.litellm.ai/docs/proxy/virtual_keys Parameters: - duration: Optional[str] - Specify the length of time the token is valid for. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - key_alias: Optional[str] - User defined key alias - key: Optional[str] - User defined key value. Must start with 'sk-' and be at least 16 characters long. If not set, a 16-digit unique sk-key is created for you. - team_id: Optional[str] - The team id of the key - user_id: Optional[str] - The user id of the key - agent_id: Optional[str] - The agent id associated with the key. - organization_id: Optional[str] - The organization id of the key. If not set, and team_id is set, the organization id will be the same as the team id. If conflict, an error will be raised. - project_id: Optional[str] - The project id of the key. When set, models and max_budget are validated against the project's limits. - budget_id: Optional[str] - The budget id associated with the key. Created by calling `/budget/new`. - models: Optional[list] - Model_name's a user is allowed to call. (if empty, key is allowed to call all models) - aliases: Optional[dict] - Any alias mappings, on top of anything in the config.yaml model list. - https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models - config: Optional[dict] - any key-specific configs, overrides config in config.yaml - spend: Optional[int] - Amount spent by key. Default is 0. Will be updated by proxy whenever key is used. https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend - send_invite_email: Optional[bool] - Whether to send an invite email to the user_id, with the generate key - max_budget: Optional[float] - Specify max budget for a given key. - budget_duration: Optional[str] - Budget is reset at the end of specified duration. If not set, budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - max_parallel_requests: Optional[int] - Rate limit a user based on the number of parallel requests. Raises 429 error, if user's parallel requests > x. - metadata: Optional[dict] - Metadata for key, store information for key. Example metadata = {"team": "core-infra", "app": "app2", "email": "ishaan@berri.ai" } - guardrails: Optional[List[str]] - List of active guardrails for the key - policies: Optional[List[str]] - List of policy names to apply to the key. Policies define guardrails, conditions, and inheritance rules. - disable_global_guardrails: Optional[bool] - Whether to disable global guardrails for the key. - throttle_on_budget_exceeded: Optional[bool] - When the key exceeds its max_budget, throttle its tpm/rpm to the global budget_exceeded_throttle_percentage instead of blocking the key entirely. - enable_prompt_caching: Optional[bool] - Auto-inject prompt caching breakpoints (Anthropic cache_control markers) on requests made with this key. Anthropic and
|
|
1295
|
+
/** Generate Key Fn Generate an API key based on the provided data. Docs: https://docs.litellm.ai/docs/proxy/virtual_keys Parameters: - duration: Optional[str] - Specify the length of time the token is valid for. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - key_alias: Optional[str] - User defined key alias - key: Optional[str] - User defined key value. Must start with 'sk-' and be at least 16 characters long. If not set, a 16-digit unique sk-key is created for you. - team_id: Optional[str] - The team id of the key - user_id: Optional[str] - The user id of the key - agent_id: Optional[str] - The agent id associated with the key. - organization_id: Optional[str] - The organization id of the key. If not set, and team_id is set, the organization id will be the same as the team id. If conflict, an error will be raised. - project_id: Optional[str] - The project id of the key. When set, models and max_budget are validated against the project's limits. - budget_id: Optional[str] - The budget id associated with the key. Created by calling `/budget/new`. - end_user_budget_id: Optional[str] - Proxy admin only. Budget id applied to end users first seen through this key that carry no budget of their own. Takes precedence over `litellm_settings.max_end_user_budget_id`. - models: Optional[list] - Model_name's a user is allowed to call. (if empty, key is allowed to call all models) - aliases: Optional[dict] - Any alias mappings, on top of anything in the config.yaml model list. - https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models - config: Optional[dict] - any key-specific configs, overrides config in config.yaml - spend: Optional[int] - Amount spent by key. Default is 0. Will be updated by proxy whenever key is used. https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend - send_invite_email: Optional[bool] - Whether to send an invite email to the user_id, with the generate key - max_budget: Optional[float] - Specify max budget for a given key. - budget_duration: Optional[str] - Budget is reset at the end of specified duration. If not set, budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - max_parallel_requests: Optional[int] - Rate limit a user based on the number of parallel requests. Raises 429 error, if user's parallel requests > x. - metadata: Optional[dict] - Metadata for key, store information for key. Example metadata = {"team": "core-infra", "app": "app2", "email": "ishaan@berri.ai" } - guardrails: Optional[List[str]] - List of active guardrails for the key - policies: Optional[List[str]] - List of policy names to apply to the key. Policies define guardrails, conditions, and inheritance rules. - disable_global_guardrails: Optional[bool] - Whether to disable global guardrails for the key. - throttle_on_budget_exceeded: Optional[bool] - When the key exceeds its max_budget, throttle its tpm/rpm to the global budget_exceeded_throttle_percentage instead of blocking the key entirely. - enable_prompt_caching: Optional[bool] - Auto-inject prompt caching breakpoints (Anthropic cache_control markers) on requests made with this key. Supported Claude models on Anthropic, Bedrock, Vertex AI, and Azure AI only. - permissions: Optional[dict] - key-specific permissions. Currently just used for turning off pii masking (if connected). Example - {"pii": false} - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}}}. IF null or {} then no model specific budget. - budget_fallbacks: Optional[Dict[str, List[str]]] - Per-model fallback chain tried in order when that model's own `model_max_budget` is exceeded, e.g. {"gpt-4o": ["gpt-4o-mini"]}. - model_rpm_limit: Optional[dict] - key-specific model rpm limit. Example - {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model specific rpm limit. - model_tpm_limit: Optional[dict] - key-specific model tpm limit. Example - {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model specific tpm limit. - default_estimated_output_tokens: Optional[int] - Proxy admin only. Expected output tokens reserved for TPM limiting when a request omits max_tokens. Positive integer. Falls back to the team setting, then to the built-in estimate. - default_estimated_output_tokens_per_model: Optional[dict] - Proxy admin only. Per-model override of the above. Example - {"gpt-4": 4096, "gpt-3.5-turbo": 1024}. Takes precedence over the key-wide value. - mcp_rpm_limit: Optional[dict] - key-specific per-MCP-server rpm limit, keyed by MCP server name (alias if set, else the configured name). Example - {"github": 100, "slack": 200}. IF null or {} then no MCP-specific rpm limit. - tag_rpm_limit: Optional[dict] - key-specific per-request-tag rpm limit, keyed by request tag. Example - {"cell-1": 1000, "cell-2": 500}. Each tag gets an independent counter; requests whose tag is absent fall back to the key-level rpm limit. - tpm_limit_type: Optional[str] - Type of tpm limit. Options: "best_effort_throughput" (no error if we're overallocating tpm), "guaranteed_throughput" (raise an error if we're overallocating tpm), "dynamic" (dynamically exceed limit when no 429 errors). Defaults to "best_effort_throughput". - rpm_limit_type: Optional[str] - Type of rpm limit. Options: "best_effort_throughput" (no error if we're overallocating rpm), "guaranteed_throughput" (raise an error if we're overallocating rpm), "dynamic" (dynamically exceed limit when no 429 errors). Defaults to "best_effort_throughput". - allowed_cache_controls: Optional[list] - List of allowed cache control values. Example - ["no-cache", "no-store"]. See all values - https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request - blocked: Optional[bool] - Whether the key is blocked. - rpm_limit: Optional[int] - Specify rpm limit for a given key (Requests per minute) - tpm_limit: Optional[int] - Specify tpm limit for a given key (Tokens per minute) - tpd_limit: Optional[int] - Specify tpd limit for a given key (Tokens per day). Charged by batch submissions instead of tpm_limit/rpm_limit. - soft_budget: Optional[float] - Specify soft budget for a given key. Will trigger a slack alert when this soft budget is reached. - tags: Optional[List[str]] - Tags for [tracking spend](https://litellm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) and/or doing [tag-based routing](https://litellm.vercel.app/docs/proxy/tag_routing). - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. - enforced_params: Optional[List[str]] - List of enforced params for the key (Enterprise only). [Docs](https://docs.litellm.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. - allowed_routes: Optional[list] - List of allowed routes for the key. Store the actual route or store a wildcard pattern for a set of routes. Example - ["/chat/completions", "/embeddings", "/keys/*"] - allowed_passthrough_routes: Optional[list] - List of allowed pass through endpoints for the key. Store the actual endpoint or store a wildcard pattern for a set of endpoints. Example - ["/my-custom-endpoint"]. Use this instead of allowed_routes, if you just want to specify which pass through endpoints the key can access, without specifying the routes. If allowed_routes is specified, allowed_pass_through_endpoints is ignored. - object_permission: Optional[LiteLLM_ObjectPermissionBase] - key-specific object permission. Example - {"vector_stores": ["vector_store_1", "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": ["dev_group"]}. IF null or {} then no object permission. - key_type: Optional[str] - Type of key that determines default allowed routes. Options: "llm_api" (can call LLM API routes), "management" (can call management routes), "read_only" (can only call info/read routes), "default" (uses default allowed routes). Defaults to "default". - prompts: Optional[List[str]] - List of allowed prompts for the key. If specified, the key will only be able to use these specific prompts. - auto_rotate: Optional[bool] - Whether this key should be automatically rotated (regenerated) - rotation_interval: Optional[str] - How often to auto-rotate this key (e.g., '30s', '30m', '30h', '30d'). Required if auto_rotate=True. - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector store indexes for the key. Example - [{"index_name": "my-index", "index_permissions": ["write", "read"]}]. If specified, the key will only be able to use these specific vector store indexes. Create index, using `/v1/indexes` endpoint. - router_settings: Optional[UpdateRouterConfig] - key-specific router settings. Example - {"model_group_retry_policy": {"gpt-4": {"RateLimitErrorRetries": 5}}}. IF null or {} then no router settings. - access_group_ids: Optional[List[str]] - List of access group IDs to associate with the key. Access groups define which models a key can access. Example - ["access_group_1", "access_group_2"]. - budget_limits: Optional[list] - List of concurrent budget windows for the key. Each window specifies a budget_limit, time_period, and optional budget_duration. Example - [{"budget_limit": 10.0, "time_period": "1d"}, {"budget_limit": 50.0, "time_period": "7d"}]. Examples: 1. Allow users to turn on/off pii masking ```bash curl --location 'http://0.0.0.0:4000/key/generate' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ "permissions": {"allow_pii_controls": true} }' ``` Returns: - key: (str) The generated api key - expires: (datetime) Datetime object for when key expires. - user_id: (str) Unique user id - used for tracking spend across multiple keys for same user id. */
|
|
1241
1296
|
export const generateKeyFnKeyGeneratePost = /*@__PURE__*/ API.make(() => ({
|
|
1242
1297
|
input: GenerateKeyFnKeyGeneratePostRequest,
|
|
1243
1298
|
output: GenerateKeyResponse,
|
|
@@ -1245,7 +1300,7 @@ export const generateKeyFnKeyGeneratePost = /*@__PURE__*/ API.make(() => ({
|
|
|
1245
1300
|
protocol: LitellmProtocol,
|
|
1246
1301
|
retry: Retry.Retry,
|
|
1247
1302
|
}));
|
|
1248
|
-
/** Generate Service Account Key Fn Generate a Service Account API key based on the provided data. This key does not belong to any user. It belongs to the team. Why use a service account key? - Prevent key from being deleted when user is deleted. - Apply team limits, not team member limits to key. Docs: https://docs.litellm.ai/docs/proxy/virtual_keys Parameters: - duration: Optional[str] - Specify the length of time the token is valid for. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - key_alias: Optional[str] - User defined key alias - key: Optional[str] - User defined key value. Must start with 'sk-' and be at least 16 characters long. If not set, a 16-digit unique sk-key is created for you. - team_id: Optional[str] - The team id of the key - user_id: Optional[str] - [NON-FUNCTIONAL] THIS WILL BE IGNORED. The user id of the key - budget_id: Optional[str] - The budget id associated with the key. Created by calling `/budget/new`. - models: Optional[list] - Model_name's a user is allowed to call. (if empty, key is allowed to call all models) - aliases: Optional[dict] - Any alias mappings, on top of anything in the config.yaml model list. - https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models - config: Optional[dict] - any key-specific configs, overrides config in config.yaml - spend: Optional[int] - Amount spent by key. Default is 0. Will be updated by proxy whenever key is used. https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend - send_invite_email: Optional[bool] - Whether to send an invite email to the user_id, with the generate key - max_budget: Optional[float] - Specify max budget for a given key. - budget_duration: Optional[str] - Budget is reset at the end of specified duration. If not set, budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - max_parallel_requests: Optional[int] - Rate limit a user based on the number of parallel requests. Raises 429 error, if user's parallel requests > x. - metadata: Optional[dict] - Metadata for key, store information for key. Example metadata = {"team": "core-infra", "app": "app2", "email": "ishaan@berri.ai" } - guardrails: Optional[List[str]] - List of active guardrails for the key - permissions: Optional[dict] - key-specific permissions. Currently just used for turning off pii masking (if connected). Example - {"pii": false} - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}}}. IF null or {} then no model specific budget. - budget_fallbacks: Optional[Dict[str, List[str]]] - Per-model fallback chain tried in order when that model's own `model_max_budget` is exceeded, e.g. {"gpt-4o": ["gpt-4o-mini"]}. - model_rpm_limit: Optional[dict] - key-specific model rpm limit. Example - {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model specific rpm limit. - model_tpm_limit: Optional[dict] - key-specific model tpm limit. Example - {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model specific tpm limit. - default_estimated_output_tokens: Optional[int] - Proxy admin only. Expected output tokens reserved for TPM limiting when a request omits max_tokens. Positive integer. Falls back to the team setting, then to the built-in estimate. - default_estimated_output_tokens_per_model: Optional[dict] - Proxy admin only. Per-model override of the above. Example - {"gpt-4": 4096, "gpt-3.5-turbo": 1024}. Takes precedence over the key-wide value. - mcp_rpm_limit: Optional[dict] - key-specific per-MCP-server rpm limit, keyed by MCP server name (alias if set, else the configured name). Example - {"github": 100, "slack": 200}. IF null or {} then no MCP-specific rpm limit. - tpm_limit_type: Optional[str] - TPM rate limit type - "best_effort_throughput", "guaranteed_throughput", or "dynamic" - rpm_limit_type: Optional[str] - RPM rate limit type - "best_effort_throughput", "guaranteed_throughput", or "dynamic" - allowed_cache_controls: Optional[list] - List of allowed cache control values. Example - ["no-cache", "no-store"]. See all values - https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request - blocked: Optional[bool] - Whether the key is blocked. - rpm_limit: Optional[int] - Specify rpm limit for a given key (Requests per minute) - tpm_limit: Optional[int] - Specify tpm limit for a given key (Tokens per minute) - soft_budget: Optional[float] - Specify soft budget for a given key. Will trigger a slack alert when this soft budget is reached. - tags: Optional[List[str]] - Tags for [tracking spend](https://litellm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) and/or doing [tag-based routing](https://litellm.vercel.app/docs/proxy/tag_routing). - enforced_params: Optional[List[str]] - List of enforced params for the key (Enterprise only). [Docs](https://docs.litellm.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) - allowed_routes: Optional[list] - List of allowed routes for the key. Store the actual route or store a wildcard pattern for a set of routes. Example - ["/chat/completions", "/embeddings", "/keys/*"] - object_permission: Optional[LiteLLM_ObjectPermissionBase] - key-specific object permission. Example - {"vector_stores": ["vector_store_1", "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": ["dev_group"]}. IF null or {} then no object permission. Examples: - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector store indexes for the key. Example - [{"index_name": "my-index", "index_permissions": ["write", "read"]}]. If specified, the key will only be able to use these specific vector store indexes. Create index, using `/v1/indexes` endpoint. 1. Allow users to turn on/off pii masking ```bash curl --location 'http://0.0.0.0:4000/key/generate' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ "permissions": {"allow_pii_controls": true} }' ``` Returns: - key: (str) The generated api key - expires: (datetime) Datetime object for when key expires. - user_id: (str) Unique user id - used for tracking spend across multiple keys for same user id. */
|
|
1303
|
+
/** Generate Service Account Key Fn Generate a Service Account API key based on the provided data. This key does not belong to any user. It belongs to the team. Why use a service account key? - Prevent key from being deleted when user is deleted. - Apply team limits, not team member limits to key. Docs: https://docs.litellm.ai/docs/proxy/virtual_keys Parameters: - duration: Optional[str] - Specify the length of time the token is valid for. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - key_alias: Optional[str] - User defined key alias - key: Optional[str] - User defined key value. Must start with 'sk-' and be at least 16 characters long. If not set, a 16-digit unique sk-key is created for you. - team_id: Optional[str] - The team id of the key - user_id: Optional[str] - [NON-FUNCTIONAL] THIS WILL BE IGNORED. The user id of the key - budget_id: Optional[str] - The budget id associated with the key. Created by calling `/budget/new`. - end_user_budget_id: Optional[str] - Proxy admin only. Budget id applied to end users first seen through this key that carry no budget of their own. Omit to keep the current value, pass an empty string to clear it. - models: Optional[list] - Model_name's a user is allowed to call. (if empty, key is allowed to call all models) - aliases: Optional[dict] - Any alias mappings, on top of anything in the config.yaml model list. - https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---upgradedowngrade-models - config: Optional[dict] - any key-specific configs, overrides config in config.yaml - spend: Optional[int] - Amount spent by key. Default is 0. Will be updated by proxy whenever key is used. https://docs.litellm.ai/docs/proxy/virtual_keys#managing-auth---tracking-spend - send_invite_email: Optional[bool] - Whether to send an invite email to the user_id, with the generate key - max_budget: Optional[float] - Specify max budget for a given key. - budget_duration: Optional[str] - Budget is reset at the end of specified duration. If not set, budget is never reset. You can set duration as seconds ("30s"), minutes ("30m"), hours ("30h"), days ("30d"). - max_parallel_requests: Optional[int] - Rate limit a user based on the number of parallel requests. Raises 429 error, if user's parallel requests > x. - metadata: Optional[dict] - Metadata for key, store information for key. Example metadata = {"team": "core-infra", "app": "app2", "email": "ishaan@berri.ai" } - guardrails: Optional[List[str]] - List of active guardrails for the key - permissions: Optional[dict] - key-specific permissions. Currently just used for turning off pii masking (if connected). Example - {"pii": false} - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}}}. IF null or {} then no model specific budget. - budget_fallbacks: Optional[Dict[str, List[str]]] - Per-model fallback chain tried in order when that model's own `model_max_budget` is exceeded, e.g. {"gpt-4o": ["gpt-4o-mini"]}. - model_rpm_limit: Optional[dict] - key-specific model rpm limit. Example - {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model specific rpm limit. - model_tpm_limit: Optional[dict] - key-specific model tpm limit. Example - {"text-davinci-002": 1000, "gpt-3.5-turbo": 1000}. IF null or {} then no model specific tpm limit. - default_estimated_output_tokens: Optional[int] - Proxy admin only. Expected output tokens reserved for TPM limiting when a request omits max_tokens. Positive integer. Falls back to the team setting, then to the built-in estimate. - default_estimated_output_tokens_per_model: Optional[dict] - Proxy admin only. Per-model override of the above. Example - {"gpt-4": 4096, "gpt-3.5-turbo": 1024}. Takes precedence over the key-wide value. - mcp_rpm_limit: Optional[dict] - key-specific per-MCP-server rpm limit, keyed by MCP server name (alias if set, else the configured name). Example - {"github": 100, "slack": 200}. IF null or {} then no MCP-specific rpm limit. - tpm_limit_type: Optional[str] - TPM rate limit type - "best_effort_throughput", "guaranteed_throughput", or "dynamic" - rpm_limit_type: Optional[str] - RPM rate limit type - "best_effort_throughput", "guaranteed_throughput", or "dynamic" - allowed_cache_controls: Optional[list] - List of allowed cache control values. Example - ["no-cache", "no-store"]. See all values - https://docs.litellm.ai/docs/proxy/caching#turn-on--off-caching-per-request - blocked: Optional[bool] - Whether the key is blocked. - rpm_limit: Optional[int] - Specify rpm limit for a given key (Requests per minute) - tpm_limit: Optional[int] - Specify tpm limit for a given key (Tokens per minute) - tpd_limit: Optional[int] - Specify tpd limit for a given key (Tokens per day). Charged by batch submissions instead of tpm_limit/rpm_limit. - soft_budget: Optional[float] - Specify soft budget for a given key. Will trigger a slack alert when this soft budget is reached. - tags: Optional[List[str]] - Tags for [tracking spend](https://litellm.vercel.app/docs/proxy/enterprise#tracking-spend-for-custom-tags) and/or doing [tag-based routing](https://litellm.vercel.app/docs/proxy/tag_routing). - enforced_params: Optional[List[str]] - List of enforced params for the key (Enterprise only). [Docs](https://docs.litellm.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) - allowed_routes: Optional[list] - List of allowed routes for the key. Store the actual route or store a wildcard pattern for a set of routes. Example - ["/chat/completions", "/embeddings", "/keys/*"] - object_permission: Optional[LiteLLM_ObjectPermissionBase] - key-specific object permission. Example - {"vector_stores": ["vector_store_1", "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": ["dev_group"]}. IF null or {} then no object permission. Examples: - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector store indexes for the key. Example - [{"index_name": "my-index", "index_permissions": ["write", "read"]}]. If specified, the key will only be able to use these specific vector store indexes. Create index, using `/v1/indexes` endpoint. 1. Allow users to turn on/off pii masking ```bash curl --location 'http://0.0.0.0:4000/key/generate' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ "permissions": {"allow_pii_controls": true} }' ``` Returns: - key: (str) The generated api key - expires: (datetime) Datetime object for when key expires. - user_id: (str) Unique user id - used for tracking spend across multiple keys for same user id. */
|
|
1249
1304
|
export const generateServiceAccountKeyFnKeyServiceAccountGeneratePost = /*@__PURE__*/ API.make(() => ({
|
|
1250
1305
|
input: GenerateServiceAccountKeyFnKeyServiceAccountGeneratePostRequest,
|
|
1251
1306
|
output: GenerateServiceAccountKeyFnKeyServiceAccountGeneratePostResponse,
|
|
@@ -1253,7 +1308,7 @@ export const generateServiceAccountKeyFnKeyServiceAccountGeneratePost = /*@__PUR
|
|
|
1253
1308
|
protocol: LitellmProtocol,
|
|
1254
1309
|
retry: Retry.Retry,
|
|
1255
1310
|
}));
|
|
1256
|
-
/** Info Key Fn Retrieve information about a key. Parameters: - key: str | None (query parameter) - The key to look up. Accepts the plaintext key or its hash. Defaults to the key in the Authorization header. Returns: - key: str - The key that was looked up, echoed back as it was passed in - info: dict - The key's row, minus the hashed token - key_alias: str | None - User-friendly key alias - spend: float - Amount spent by the key. When budget_duration is set this covers only the current budget window, not the key's lifetime - max_budget: float | None - Max budget for the key, enforced against spend - budget_duration: str | None - Budget reset period ("30d", "1h", etc.) - budget_reset_at: datetime | None - When the current budget window ends and spend is next reset to 0, not when it was last reset. Reset times snap to standard boundaries in the configured timezone (30d and 1mo land on the 1st of the month, 7d on Monday, 1h on the hour), so subtracting budget_duration from it does not give the window's start - model_max_budget: dict - Per-model budgets, e.g. {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} - model_max_budget_usage: dict | None - Current-window spend per model, present only when the key has per-model budgets - models: list - Model_name's the key is allowed to call - tpm_limit / rpm_limit: int | None - Tokens and requests per minute limits - metadata: dict - Metadata for the key, e.g. {"team": "core-infra"} - blocked: bool | None - Whether the key is blocked - expires: datetime | None - When the key stops authenticating requests - last_active: datetime | None - When the key was last used - object_permission: dict | None - Resolved vector store / MCP permissions when the key has an object_permission_id Example Curl: ``` curl -X GET "http://0.0.0.0:4000/key/info?key=
|
|
1311
|
+
/** Info Key Fn Retrieve information about a key. Parameters: - key: str | None (query parameter) - The key to look up. Accepts the plaintext key or its hash; prefer the hash, since a query parameter is recorded verbatim by any HTTP access log in front of the proxy. Defaults to the key in the Authorization header. Returns: - key: str - The key that was looked up, echoed back as it was passed in - info: dict - The key's row, minus the hashed token. Deleted keys are served from the LiteLLM_DeletedVerificationToken archive and carry deleted_at / deleted_by - status: "active" | "expired" | "revoked" | "deleted" - Derived from blocked, expires and whether the row came from the archive - key_alias: str | None - User-friendly key alias - spend: float - Amount spent by the key. When budget_duration is set this covers only the current budget window, not the key's lifetime - max_budget: float | None - Max budget for the key, enforced against spend - budget_duration: str | None - Budget reset period ("30d", "1h", etc.) - budget_reset_at: datetime | None - When the current budget window ends and spend is next reset to 0, not when it was last reset. Reset times snap to standard boundaries in the configured timezone (30d and 1mo land on the 1st of the month, 7d on Monday, 1h on the hour), so subtracting budget_duration from it does not give the window's start - model_max_budget: dict - Per-model budgets, e.g. {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} - model_max_budget_usage: dict | None - Current-window spend per model, present only when the key has per-model budgets - budget_limits: list | None - Concurrent budget windows, exactly as stored - budget_limits_usage: dict | None - Current-window spend per budget window, e.g. {"1h": {"current_spend": 0.0009}}, present only when the key has budget windows (read from the same cross-pod spend counter the budget enforcement uses) - models: list - Model_name's the key is allowed to call - tpm_limit / rpm_limit: int | None - Tokens and requests per minute limits - metadata: dict - Metadata for the key, e.g. {"team": "core-infra"} - blocked: bool | None - Whether the key is blocked - expires: datetime | None - When the key stops authenticating requests - last_active: datetime | None - When the key was last used - object_permission: dict | None - Resolved vector store / MCP permissions when the key has an object_permission_id Example Curl: ``` curl -X GET "http://0.0.0.0:4000/key/info?key=d5345c0ecc68ae6295c69f91926b2bd379e25481a40c34b5884d157a9f65d8fa" -H "Authorization: Bearer sk-1234" ``` Example Curl - if no key is passed, it will use the Key Passed in Authorization Header ``` curl -X GET "http://0.0.0.0:4000/key/info" -H "Authorization: Bearer sk-test-example-key-123" ``` */
|
|
1257
1312
|
export const getInfoKeyFnKeyInfo = /*@__PURE__*/ API.make(() => ({
|
|
1258
1313
|
input: GetInfoKeyFnKeyInfoRequest,
|
|
1259
1314
|
output: GetInfoKeyFnKeyInfoResponse,
|
|
@@ -1269,7 +1324,7 @@ export const getKeyAliasesKeyAlias = /*@__PURE__*/ API.make(() => ({
|
|
|
1269
1324
|
protocol: LitellmProtocol,
|
|
1270
1325
|
retry: Retry.Retry,
|
|
1271
1326
|
}));
|
|
1272
|
-
/** List Keys List all keys for a given user / team / organization. Parameters: expand: Optional[List[str]] - Expand related objects (e.g. 'user' to include user information) status: Optional[str] - Filter by status
|
|
1327
|
+
/** List Keys List all keys for a given user / team / organization. Parameters: expand: Optional[List[str]] - Expand related objects (e.g. 'user' to include user information) status: Optional[str] - Filter by status: "active", "expired", "revoked" (blocked) or "deleted". "deleted" reads the LiteLLM_DeletedVerificationToken archive; the other values partition the live key table, so every live key matches exactly one of them. Returns: { "keys": List[str] or List[UserAPIKeyAuth], "total_count": int, "current_page": int, "total_pages": int, } When expand includes "user", each key object will include a "user" field with the associated user object. Note: When expand=user is specified, full key objects are returned regardless of the return_full_object parameter. */
|
|
1273
1328
|
export const listKeysKeyListGet = /*@__PURE__*/ API.make(() => ({
|
|
1274
1329
|
input: ListKeysKeyListGetRequest,
|
|
1275
1330
|
output: KeyListResponseObject,
|
|
@@ -1333,7 +1388,7 @@ export const unblockKeyKeyUnblockPost = /*@__PURE__*/ API.make(() => ({
|
|
|
1333
1388
|
protocol: LitellmProtocol,
|
|
1334
1389
|
retry: Retry.Retry,
|
|
1335
1390
|
}));
|
|
1336
|
-
/** Update Key Fn Update an existing API key's parameters. Parameters: - key: Optional[str] - The key to update. Either key or key_alias must be provided. - key_alias: Optional[str] - User-friendly key alias. If key is omitted, also identifies the key to update (must match exactly one key, same as /key/delete's key_aliases) - user_id: Optional[str] - User ID associated with key - team_id: Optional[str] - Team ID associated with key - agent_id: Optional[str] - The agent id associated with the key. - organization_id: Optional[str] - The organization id of the key. - budget_id: Optional[str] - The budget id associated with the key. Created by calling `/budget/new`. - models: Optional[list] - Model_name's a user is allowed to call - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. - enforced_params: Optional[List[str]] - List of enforced params for the key (Enterprise only). [Docs](https://docs.litellm.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) - spend: Optional[float] - Amount spent by key - max_budget: Optional[float] - Max budget for key - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} - budget_fallbacks: Optional[Dict[str, List[str]]] - Per-model fallback chain tried in order when that model's own `model_max_budget` is exceeded, e.g. {"gpt-4o": ["gpt-4o-mini"]}. - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) - soft_budget: Optional[float] -
|
|
1391
|
+
/** Update Key Fn Update an existing API key's parameters. The body is a merge patch: a field left out keeps its stored value, and on the key's own columns an explicit null clears it. The metadata-backed fields below are the exception, merging into the stored metadata instead: passing one as null leaves it unchanged, while `metadata` itself replaces the stored metadata wholesale. Parameters: - key: Optional[str] - The key to update. Either key or key_alias must be provided. - key_alias: Optional[str] - User-friendly key alias. If key is omitted, also identifies the key to update (must match exactly one key, same as /key/delete's key_aliases) - user_id: Optional[str] - User ID associated with key - team_id: Optional[str] - Team ID associated with key - agent_id: Optional[str] - The agent id associated with the key. - project_id: Optional[str] - Omit to retain the project, or send null to detach. A different project ID is rejected. - organization_id: Optional[str] - The organization id of the key. - budget_id: Optional[str] - The budget id associated with the key. Created by calling `/budget/new`. - end_user_budget_id: Optional[str] - Proxy admin only. Budget id applied to end users first seen through this key that carry no budget of their own. Omit to keep the current value, pass an empty string to clear it. - models: Optional[list] - Model_name's a user is allowed to call - tags: Optional[List[str]] - Tags for organizing keys (Enterprise only) - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. - enforced_params: Optional[List[str]] - List of enforced params for the key (Enterprise only). [Docs](https://docs.litellm.ai/docs/proxy/enterprise#enforce-required-params-for-llm-requests) - spend: Optional[float] - Amount spent by key - max_budget: Optional[float] - Max budget for key - model_max_budget: Optional[Dict[str, BudgetConfig]] - Model-specific budgets {"gpt-4": {"budget_limit": 0.0005, "time_period": "30d"}} - budget_fallbacks: Optional[Dict[str, List[str]]] - Per-model fallback chain tried in order when that model's own `model_max_budget` is exceeded, e.g. {"gpt-4o": ["gpt-4o-mini"]}. - budget_duration: Optional[str] - Budget reset period ("30d", "1h", etc.) - soft_budget: Optional[float] - Soft budget limit (warning vs. hard stop). Will trigger a slack alert when this soft budget is reached. Set to null to remove the soft budget. - max_parallel_requests: Optional[int] - Rate limit for parallel requests - metadata: Optional[dict] - Metadata for key. Example {"team": "core-infra", "app": "app2"} - tpm_limit: Optional[int] - Tokens per minute limit - rpm_limit: Optional[int] - Requests per minute limit - tpd_limit: Optional[int] - Tokens per day limit, charged by batch submissions instead of tpm_limit/rpm_limit - model_rpm_limit: Optional[dict] - Model-specific RPM limits {"gpt-4": 100, "claude-v1": 200} - mcp_rpm_limit: Optional[dict] - Per-MCP-server RPM limits, keyed by MCP server name {"github": 100, "slack": 200} - tag_rpm_limit: Optional[dict] - Per-request-tag RPM limits, keyed by request tag {"cell-1": 1000, "cell-2": 500}. Each tag gets an independent counter; absent tags fall back to the key-level rpm limit. - model_tpm_limit: Optional[dict] - Model-specific TPM limits {"gpt-4": 100000, "claude-v1": 200000} - default_estimated_output_tokens: Optional[int] - Proxy admin only. Expected output tokens reserved for TPM limiting when a request omits max_tokens. Positive integer. - default_estimated_output_tokens_per_model: Optional[dict] - Proxy admin only. Per-model override of the above {"gpt-4": 4096, "gpt-3.5-turbo": 1024} - tpm_limit_type: Optional[str] - TPM rate limit type - "best_effort_throughput", "guaranteed_throughput", or "dynamic" - rpm_limit_type: Optional[str] - RPM rate limit type - "best_effort_throughput", "guaranteed_throughput", or "dynamic" - allowed_cache_controls: Optional[list] - List of allowed cache control values - duration: Optional[str] - Key validity duration ("30d", "1h", etc.), null to never expire, or "-1" to never expire (deprecated, use null) - permissions: Optional[dict] - Key-specific permissions - send_invite_email: Optional[bool] - Send invite email to user_id - guardrails: Optional[List[str]] - List of active guardrails for the key - policies: Optional[List[str]] - List of policy names to apply to the key. Policies define guardrails, conditions, and inheritance rules. - disable_global_guardrails: Optional[bool] - Whether to disable global guardrails for the key. - throttle_on_budget_exceeded: Optional[bool] - When the key exceeds its max_budget, throttle its tpm/rpm to the global budget_exceeded_throttle_percentage instead of blocking the key entirely. - enable_prompt_caching: Optional[bool] - Auto-inject prompt caching breakpoints (Anthropic cache_control markers) on requests made with this key. Supported Claude models on Anthropic, Bedrock, Vertex AI, and Azure AI only. - prompts: Optional[List[str]] - List of prompts that the key is allowed to use. - blocked: Optional[bool] - Whether the key is blocked - aliases: Optional[dict] - Model aliases for the key - [Docs](https://litellm.vercel.app/docs/proxy/virtual_keys#model-aliases) - config: Optional[dict] - [DEPRECATED PARAM] Key-specific config. - temp_budget_increase: Optional[float] - Temporary budget increase for the key (Enterprise only). - temp_budget_expiry: Optional[str] - Expiry time for the temporary budget increase (Enterprise only). - allowed_routes: Optional[list] - List of allowed routes for the key. Store the actual route or store a wildcard pattern for a set of routes. Example - ["/chat/completions", "/embeddings", "/keys/*"] - allowed_passthrough_routes: Optional[list] - List of allowed pass through routes for the key. Store the actual route or store a wildcard pattern for a set of routes. Example - ["/my-custom-endpoint"]. Use this instead of allowed_routes, if you just want to specify which pass through routes the key can access, without specifying the routes. If allowed_routes is specified, allowed_passthrough_routes is ignored. - prompts: Optional[List[str]] - List of allowed prompts for the key. If specified, the key will only be able to use these specific prompts. - object_permission: Optional[LiteLLM_ObjectPermissionBase] - key-specific object permission. Example - {"vector_stores": ["vector_store_1", "vector_store_2"], "agents": ["agent_1", "agent_2"], "agent_access_groups": ["dev_group"]}. IF null or {} then no object permission. - auto_rotate: Optional[bool] - Whether this key should be automatically rotated - rotation_interval: Optional[str] - How often to rotate this key (e.g., '30d', '90d'). Required if auto_rotate=True - allowed_vector_store_indexes: Optional[List[dict]] - List of allowed vector store indexes for the key. Example - [{"index_name": "my-index", "index_permissions": ["write", "read"]}]. If specified, the key will only be able to use these specific vector store indexes. Create index, using `/v1/indexes` endpoint. - router_settings: Optional[UpdateRouterConfig] - key-specific router settings. Example - {"model_group_retry_policy": {"gpt-4": {"RateLimitErrorRetries": 5}}}. IF null or {} then no router settings. - access_group_ids: Optional[List[str]] - List of access group IDs to associate with the key. Access groups define which models a key can access. Example - ["access_group_1", "access_group_2"]. - budget_limits: Optional[list] - List of concurrent budget windows for the key. Each window specifies a budget_limit, time_period, and optional budget_duration. Example - [{"budget_limit": 10.0, "time_period": "1d"}, {"budget_limit": 50.0, "time_period": "7d"}]. Example: ```bash curl --location 'http://0.0.0.0:4000/key/update' --header 'Authorization: Bearer sk-1234' --header 'Content-Type: application/json' --data '{ "key": "sk-1234", "key_alias": "my-key", "user_id": "user-1234", "team_id": "team-1234", "max_budget": 100, "metadata": {"any_key": "any-val"}, }' ``` */
|
|
1337
1392
|
export const updateKeyFnKeyUpdatePost = /*@__PURE__*/ API.make(() => ({
|
|
1338
1393
|
input: UpdateKeyFnKeyUpdatePostRequest,
|
|
1339
1394
|
output: UpdateKeyFnKeyUpdatePostResponse,
|