- Add mask_api_key() and is_masked_or_placeholder() to llm_provider service - Return masked keys in all provider CRUD endpoints - Reject masked/placeholder keys in fetch_models and test_provider_config - Show masked key with Change button in ProviderConfig.svelte edit form - Exclude masked keys from fetch-models, test, and submit payloads on frontend - Update semantics-core skill with clarified complexity tier rules - Switch agent modes from subagent to all
4957 lines
101 KiB
JSON
4957 lines
101 KiB
JSON
{
|
|
"ModelGroupInfoProxy": {
|
|
"properties": {
|
|
"model_group": {
|
|
"type": "string",
|
|
"title": "Model Group"
|
|
},
|
|
"providers": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Providers"
|
|
},
|
|
"max_input_tokens": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Input Tokens"
|
|
},
|
|
"max_output_tokens": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Output Tokens"
|
|
},
|
|
"input_cost_per_token": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Input Cost Per Token"
|
|
},
|
|
"output_cost_per_token": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Output Cost Per Token"
|
|
},
|
|
"input_cost_per_pixel": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Input Cost Per Pixel"
|
|
},
|
|
"mode": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"chat",
|
|
"embedding",
|
|
"completion",
|
|
"image_generation",
|
|
"audio_transcription",
|
|
"rerank",
|
|
"moderations"
|
|
]
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Mode",
|
|
"default": "chat"
|
|
},
|
|
"tpm": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tpm"
|
|
},
|
|
"rpm": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Rpm"
|
|
},
|
|
"supports_parallel_function_calling": {
|
|
"type": "boolean",
|
|
"title": "Supports Parallel Function Calling",
|
|
"default": false
|
|
},
|
|
"supports_vision": {
|
|
"type": "boolean",
|
|
"title": "Supports Vision",
|
|
"default": false
|
|
},
|
|
"supports_web_search": {
|
|
"type": "boolean",
|
|
"title": "Supports Web Search",
|
|
"default": false
|
|
},
|
|
"supports_url_context": {
|
|
"type": "boolean",
|
|
"title": "Supports Url Context",
|
|
"default": false
|
|
},
|
|
"supports_reasoning": {
|
|
"type": "boolean",
|
|
"title": "Supports Reasoning",
|
|
"default": false
|
|
},
|
|
"supports_function_calling": {
|
|
"type": "boolean",
|
|
"title": "Supports Function Calling",
|
|
"default": false
|
|
},
|
|
"supported_openai_params": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Supported Openai Params",
|
|
"default": []
|
|
},
|
|
"configurable_clientside_auth_params": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/ConfigurableClientsideParamsCustomAuth-Output"
|
|
}
|
|
]
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Configurable Clientside Auth Params"
|
|
},
|
|
"is_public_model_group": {
|
|
"type": "boolean",
|
|
"title": "Is Public Model Group",
|
|
"default": false
|
|
},
|
|
"health_status": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Health Status"
|
|
},
|
|
"health_response_time": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Health Response Time"
|
|
},
|
|
"health_checked_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Health Checked At"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"model_group",
|
|
"providers"
|
|
],
|
|
"title": "ModelGroupInfoProxy"
|
|
},
|
|
"ModelInfo": {
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Id"
|
|
},
|
|
"db_model": {
|
|
"type": "boolean",
|
|
"title": "Db Model",
|
|
"default": false
|
|
},
|
|
"updated_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Updated At"
|
|
},
|
|
"updated_by": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Updated By"
|
|
},
|
|
"created_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Created At"
|
|
},
|
|
"created_by": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Created By"
|
|
},
|
|
"base_model": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Base Model"
|
|
},
|
|
"tier": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"free",
|
|
"paid"
|
|
]
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tier"
|
|
},
|
|
"team_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Id"
|
|
},
|
|
"team_public_model_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Public Model Name"
|
|
}
|
|
},
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"required": [
|
|
"id"
|
|
],
|
|
"title": "ModelInfo"
|
|
},
|
|
"ModelInfoDelete": {
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"title": "Id"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"id"
|
|
],
|
|
"title": "ModelInfoDelete"
|
|
},
|
|
"ModelResponse": {
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"title": "Id"
|
|
},
|
|
"created": {
|
|
"type": "integer",
|
|
"title": "Created"
|
|
},
|
|
"model": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model"
|
|
},
|
|
"object": {
|
|
"type": "string",
|
|
"title": "Object"
|
|
},
|
|
"system_fingerprint": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "System Fingerprint"
|
|
},
|
|
"choices": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/Choices"
|
|
},
|
|
"type": "array",
|
|
"title": "Choices"
|
|
}
|
|
},
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"created",
|
|
"object",
|
|
"choices"
|
|
],
|
|
"title": "ModelResponse"
|
|
},
|
|
"MutualTLSSecurityScheme": {
|
|
"properties": {
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"const": "mutualTLS",
|
|
"title": "Type"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"type"
|
|
],
|
|
"title": "MutualTLSSecurityScheme",
|
|
"description": "Defines a security scheme using mTLS authentication."
|
|
},
|
|
"NewCustomerRequest": {
|
|
"properties": {
|
|
"budget_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Id"
|
|
},
|
|
"max_budget": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Budget",
|
|
"description": "Requests will fail if this budget (in USD) is exceeded."
|
|
},
|
|
"soft_budget": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Soft Budget",
|
|
"description": "Requests will NOT fail if this is exceeded. Will fire alerting though."
|
|
},
|
|
"max_parallel_requests": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Parallel Requests",
|
|
"description": "Max concurrent requests allowed for this budget id."
|
|
},
|
|
"tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tpm Limit",
|
|
"description": "Max tokens per minute, allowed for this budget id."
|
|
},
|
|
"rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Rpm Limit",
|
|
"description": "Max requests per minute, allowed for this budget id."
|
|
},
|
|
"budget_duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Duration",
|
|
"description": "Max duration budget should be set for (e.g. '1hr', '1d', '28d')"
|
|
},
|
|
"model_max_budget": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/BudgetConfig"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Max Budget",
|
|
"description": "Max budget for each model (e.g. {'gpt-4o': {'max_budget': '0.0000001', 'budget_duration': '1d', 'tpm_limit': 1000, 'rpm_limit': 1000}})"
|
|
},
|
|
"budget_reset_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Reset At",
|
|
"description": "Datetime when the budget is reset"
|
|
},
|
|
"user_id": {
|
|
"type": "string",
|
|
"title": "User Id"
|
|
},
|
|
"alias": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Alias"
|
|
},
|
|
"blocked": {
|
|
"type": "boolean",
|
|
"title": "Blocked",
|
|
"default": false
|
|
},
|
|
"spend": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Spend"
|
|
},
|
|
"allowed_model_region": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"eu",
|
|
"us"
|
|
]
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Allowed Model Region"
|
|
},
|
|
"default_model": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Default Model"
|
|
},
|
|
"object_permission": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LiteLLM_ObjectPermissionBase"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"user_id"
|
|
],
|
|
"title": "NewCustomerRequest",
|
|
"description": "Create a new customer, allocate a budget to them"
|
|
},
|
|
"NewMCPServerRequest": {
|
|
"properties": {
|
|
"server_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Server Id"
|
|
},
|
|
"server_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Server Name"
|
|
},
|
|
"alias": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Alias"
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"transport": {
|
|
"type": "string",
|
|
"enum": [
|
|
"sse",
|
|
"http",
|
|
"stdio"
|
|
],
|
|
"title": "Transport",
|
|
"default": "sse"
|
|
},
|
|
"auth_type": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"none",
|
|
"api_key",
|
|
"bearer_token",
|
|
"basic",
|
|
"authorization",
|
|
"oauth2",
|
|
"aws_sigv4",
|
|
"token"
|
|
]
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Auth Type"
|
|
},
|
|
"credentials": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/MCPCredentials"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"url": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Url"
|
|
},
|
|
"spec_path": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Spec Path"
|
|
},
|
|
"mcp_info": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Mcp Info"
|
|
},
|
|
"mcp_access_groups": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Mcp Access Groups"
|
|
},
|
|
"allowed_tools": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Allowed Tools"
|
|
},
|
|
"tool_name_to_display_name": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tool Name To Display Name"
|
|
},
|
|
"tool_name_to_description": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tool Name To Description"
|
|
},
|
|
"extra_headers": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Extra Headers"
|
|
},
|
|
"static_headers": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Static Headers"
|
|
},
|
|
"command": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Command"
|
|
},
|
|
"args": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Args"
|
|
},
|
|
"env": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object",
|
|
"title": "Env"
|
|
},
|
|
"authorization_url": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Authorization Url"
|
|
},
|
|
"token_url": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Token Url"
|
|
},
|
|
"registration_url": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Registration Url"
|
|
},
|
|
"oauth2_flow": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"client_credentials",
|
|
"authorization_code"
|
|
]
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Oauth2 Flow"
|
|
},
|
|
"allow_all_keys": {
|
|
"type": "boolean",
|
|
"title": "Allow All Keys",
|
|
"default": false
|
|
},
|
|
"available_on_public_internet": {
|
|
"type": "boolean",
|
|
"title": "Available On Public Internet",
|
|
"default": true
|
|
},
|
|
"is_byok": {
|
|
"type": "boolean",
|
|
"title": "Is Byok",
|
|
"default": false
|
|
},
|
|
"byok_description": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Byok Description"
|
|
},
|
|
"byok_api_key_help_url": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Byok Api Key Help Url"
|
|
},
|
|
"source_url": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Source Url"
|
|
},
|
|
"approval_status": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Approval Status",
|
|
"description": "Server-managed: set by the endpoint; caller values are overridden."
|
|
},
|
|
"submitted_by": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Submitted By",
|
|
"description": "Server-managed: set by the endpoint; caller values are overridden."
|
|
},
|
|
"submitted_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Submitted At",
|
|
"description": "Server-managed: set by the endpoint; caller values are overridden."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "NewMCPServerRequest"
|
|
},
|
|
"NewMCPToolsetRequest": {
|
|
"properties": {
|
|
"toolset_name": {
|
|
"type": "string",
|
|
"title": "Toolset Name"
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"tools": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/MCPToolsetTool"
|
|
},
|
|
"type": "array",
|
|
"title": "Tools",
|
|
"default": []
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"toolset_name"
|
|
],
|
|
"title": "NewMCPToolsetRequest"
|
|
},
|
|
"NewModelGroupRequest": {
|
|
"properties": {
|
|
"access_group": {
|
|
"type": "string",
|
|
"title": "Access Group"
|
|
},
|
|
"model_names": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Names"
|
|
},
|
|
"model_ids": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Ids"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"access_group"
|
|
],
|
|
"title": "NewModelGroupRequest"
|
|
},
|
|
"NewModelGroupResponse": {
|
|
"properties": {
|
|
"access_group": {
|
|
"type": "string",
|
|
"title": "Access Group"
|
|
},
|
|
"model_names": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Names"
|
|
},
|
|
"model_ids": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Ids"
|
|
},
|
|
"models_updated": {
|
|
"type": "integer",
|
|
"title": "Models Updated"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"access_group",
|
|
"models_updated"
|
|
],
|
|
"title": "NewModelGroupResponse"
|
|
},
|
|
"NewOrganizationRequest": {
|
|
"properties": {
|
|
"budget_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Id"
|
|
},
|
|
"soft_budget": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Soft Budget"
|
|
},
|
|
"max_budget": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Budget"
|
|
},
|
|
"max_parallel_requests": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Parallel Requests"
|
|
},
|
|
"tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tpm Limit"
|
|
},
|
|
"rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Rpm Limit"
|
|
},
|
|
"model_max_budget": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Max Budget"
|
|
},
|
|
"budget_duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Duration"
|
|
},
|
|
"organization_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Organization Id"
|
|
},
|
|
"organization_alias": {
|
|
"type": "string",
|
|
"title": "Organization Alias"
|
|
},
|
|
"models": {
|
|
"items": {},
|
|
"type": "array",
|
|
"title": "Models",
|
|
"default": []
|
|
},
|
|
"metadata": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Metadata"
|
|
},
|
|
"model_rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "integer"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Rpm Limit"
|
|
},
|
|
"model_tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "integer"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Tpm Limit"
|
|
},
|
|
"object_permission": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LiteLLM_ObjectPermissionBase"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"organization_alias"
|
|
],
|
|
"title": "NewOrganizationRequest"
|
|
},
|
|
"NewOrganizationResponse": {
|
|
"properties": {
|
|
"organization_id": {
|
|
"type": "string",
|
|
"title": "Organization Id"
|
|
},
|
|
"organization_alias": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Organization Alias"
|
|
},
|
|
"budget_id": {
|
|
"type": "string",
|
|
"title": "Budget Id"
|
|
},
|
|
"spend": {
|
|
"type": "number",
|
|
"title": "Spend",
|
|
"default": 0.0
|
|
},
|
|
"metadata": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Metadata"
|
|
},
|
|
"models": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Models"
|
|
},
|
|
"created_by": {
|
|
"type": "string",
|
|
"title": "Created By"
|
|
},
|
|
"updated_by": {
|
|
"type": "string",
|
|
"title": "Updated By"
|
|
},
|
|
"users": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/components/schemas/LiteLLM_UserTable"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Users"
|
|
},
|
|
"litellm_budget_table": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LiteLLM_BudgetTable"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"object_permission": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LiteLLM_ObjectPermissionTable"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"object_permission_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Object Permission Id"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Created At"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Updated At"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"organization_id",
|
|
"budget_id",
|
|
"models",
|
|
"created_by",
|
|
"updated_by",
|
|
"created_at",
|
|
"updated_at"
|
|
],
|
|
"title": "NewOrganizationResponse"
|
|
},
|
|
"NewProjectRequest": {
|
|
"properties": {
|
|
"budget_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Id"
|
|
},
|
|
"soft_budget": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Soft Budget"
|
|
},
|
|
"max_budget": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Budget"
|
|
},
|
|
"max_parallel_requests": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Parallel Requests"
|
|
},
|
|
"tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tpm Limit"
|
|
},
|
|
"rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Rpm Limit"
|
|
},
|
|
"model_max_budget": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Max Budget"
|
|
},
|
|
"budget_duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Duration"
|
|
},
|
|
"project_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Project Id"
|
|
},
|
|
"project_alias": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Project Alias"
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"team_id": {
|
|
"type": "string",
|
|
"title": "Team Id"
|
|
},
|
|
"metadata": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Metadata"
|
|
},
|
|
"tags": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tags"
|
|
},
|
|
"guardrails": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Guardrails"
|
|
},
|
|
"policies": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Policies"
|
|
},
|
|
"models": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Models",
|
|
"default": []
|
|
},
|
|
"model_rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Rpm Limit"
|
|
},
|
|
"model_tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Tpm Limit"
|
|
},
|
|
"blocked": {
|
|
"type": "boolean",
|
|
"title": "Blocked",
|
|
"default": false
|
|
},
|
|
"object_permission": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LiteLLM_ObjectPermissionBase"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"team_id"
|
|
],
|
|
"title": "NewProjectRequest",
|
|
"description": "Request model for POST /project/new"
|
|
},
|
|
"NewProjectResponse": {
|
|
"properties": {
|
|
"project_id": {
|
|
"type": "string",
|
|
"title": "Project Id"
|
|
},
|
|
"project_alias": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Project Alias"
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"team_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Id"
|
|
},
|
|
"budget_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Id"
|
|
},
|
|
"metadata": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Metadata"
|
|
},
|
|
"models": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Models",
|
|
"default": []
|
|
},
|
|
"spend": {
|
|
"type": "number",
|
|
"title": "Spend",
|
|
"default": 0.0
|
|
},
|
|
"model_spend": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Spend"
|
|
},
|
|
"model_rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Rpm Limit"
|
|
},
|
|
"model_tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Tpm Limit"
|
|
},
|
|
"blocked": {
|
|
"type": "boolean",
|
|
"title": "Blocked",
|
|
"default": false
|
|
},
|
|
"object_permission_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Object Permission Id"
|
|
},
|
|
"created_by": {
|
|
"type": "string",
|
|
"title": "Created By"
|
|
},
|
|
"updated_by": {
|
|
"type": "string",
|
|
"title": "Updated By"
|
|
},
|
|
"created_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Created At"
|
|
},
|
|
"updated_at": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"title": "Updated At"
|
|
},
|
|
"litellm_budget_table": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LiteLLM_BudgetTable"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"object_permission": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LiteLLM_ObjectPermissionTable"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"project_id",
|
|
"created_by",
|
|
"updated_by",
|
|
"created_at",
|
|
"updated_at"
|
|
],
|
|
"title": "NewProjectResponse",
|
|
"description": "Response model for POST /project/new"
|
|
},
|
|
"NewTeamRequest": {
|
|
"properties": {
|
|
"team_alias": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Alias"
|
|
},
|
|
"team_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Id"
|
|
},
|
|
"organization_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Organization Id"
|
|
},
|
|
"admins": {
|
|
"items": {},
|
|
"type": "array",
|
|
"title": "Admins",
|
|
"default": []
|
|
},
|
|
"members": {
|
|
"items": {},
|
|
"type": "array",
|
|
"title": "Members",
|
|
"default": []
|
|
},
|
|
"members_with_roles": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/Member"
|
|
},
|
|
"type": "array",
|
|
"title": "Members With Roles",
|
|
"default": []
|
|
},
|
|
"team_member_permissions": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Member Permissions"
|
|
},
|
|
"metadata": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Metadata"
|
|
},
|
|
"tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tpm Limit"
|
|
},
|
|
"rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Rpm Limit"
|
|
},
|
|
"max_budget": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Budget"
|
|
},
|
|
"soft_budget": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Soft Budget"
|
|
},
|
|
"budget_duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Duration"
|
|
},
|
|
"models": {
|
|
"items": {},
|
|
"type": "array",
|
|
"title": "Models",
|
|
"default": []
|
|
},
|
|
"blocked": {
|
|
"type": "boolean",
|
|
"title": "Blocked",
|
|
"default": false
|
|
},
|
|
"router_settings": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Router Settings"
|
|
},
|
|
"access_group_ids": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Access Group Ids"
|
|
},
|
|
"model_aliases": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Aliases"
|
|
},
|
|
"tags": {
|
|
"anyOf": [
|
|
{
|
|
"items": {},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tags"
|
|
},
|
|
"guardrails": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Guardrails"
|
|
},
|
|
"policies": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Policies"
|
|
},
|
|
"prompts": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Prompts"
|
|
},
|
|
"object_permission": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LiteLLM_ObjectPermissionBase"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"allowed_passthrough_routes": {
|
|
"anyOf": [
|
|
{
|
|
"items": {},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Allowed Passthrough Routes"
|
|
},
|
|
"secret_manager_settings": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Secret Manager Settings"
|
|
},
|
|
"model_rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "integer"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Rpm Limit"
|
|
},
|
|
"rpm_limit_type": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"guaranteed_throughput",
|
|
"best_effort_throughput"
|
|
]
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Rpm Limit Type"
|
|
},
|
|
"tpm_limit_type": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"guaranteed_throughput",
|
|
"best_effort_throughput"
|
|
]
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tpm Limit Type"
|
|
},
|
|
"model_tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "integer"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Tpm Limit"
|
|
},
|
|
"team_member_budget": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Member Budget"
|
|
},
|
|
"team_member_rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Member Rpm Limit"
|
|
},
|
|
"team_member_tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Member Tpm Limit"
|
|
},
|
|
"team_member_key_duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Member Key Duration"
|
|
},
|
|
"team_member_budget_duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Member Budget Duration"
|
|
},
|
|
"allowed_vector_store_indexes": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/components/schemas/AllowedVectorStoreIndexItem"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Allowed Vector Store Indexes"
|
|
},
|
|
"enforced_batch_output_expires_after": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Enforced Batch Output Expires After"
|
|
},
|
|
"enforced_file_expires_after": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Enforced File Expires After"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "NewTeamRequest"
|
|
},
|
|
"NewUserRequest": {
|
|
"properties": {
|
|
"key_alias": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Key Alias"
|
|
},
|
|
"duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Duration"
|
|
},
|
|
"models": {
|
|
"anyOf": [
|
|
{
|
|
"items": {},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Models",
|
|
"default": []
|
|
},
|
|
"spend": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Spend",
|
|
"default": 0
|
|
},
|
|
"max_budget": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Budget"
|
|
},
|
|
"user_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Id"
|
|
},
|
|
"team_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Id"
|
|
},
|
|
"agent_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Agent Id"
|
|
},
|
|
"max_parallel_requests": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Parallel Requests"
|
|
},
|
|
"metadata": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Metadata",
|
|
"default": {}
|
|
},
|
|
"tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tpm Limit"
|
|
},
|
|
"rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Rpm Limit"
|
|
},
|
|
"budget_duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Duration"
|
|
},
|
|
"allowed_cache_controls": {
|
|
"anyOf": [
|
|
{
|
|
"items": {},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Allowed Cache Controls",
|
|
"default": []
|
|
},
|
|
"config": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Config",
|
|
"default": {}
|
|
},
|
|
"permissions": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Permissions",
|
|
"default": {}
|
|
},
|
|
"model_max_budget": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Max Budget",
|
|
"default": {}
|
|
},
|
|
"model_rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Rpm Limit"
|
|
},
|
|
"model_tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Tpm Limit"
|
|
},
|
|
"guardrails": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Guardrails"
|
|
},
|
|
"policies": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Policies"
|
|
},
|
|
"prompts": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Prompts"
|
|
},
|
|
"blocked": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Blocked"
|
|
},
|
|
"aliases": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Aliases",
|
|
"default": {}
|
|
},
|
|
"object_permission": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LiteLLM_ObjectPermissionBase"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"user_email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Email"
|
|
},
|
|
"user_alias": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Alias"
|
|
},
|
|
"user_role": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"proxy_admin",
|
|
"proxy_admin_viewer",
|
|
"internal_user",
|
|
"internal_user_viewer"
|
|
]
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Role"
|
|
},
|
|
"teams": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"items": {
|
|
"$ref": "#/components/schemas/NewUserRequestTeam"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Teams"
|
|
},
|
|
"auto_create_key": {
|
|
"type": "boolean",
|
|
"title": "Auto Create Key",
|
|
"default": true
|
|
},
|
|
"send_invite_email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Send Invite Email"
|
|
},
|
|
"sso_user_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Sso User Id"
|
|
},
|
|
"organizations": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Organizations"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "NewUserRequest"
|
|
},
|
|
"NewUserRequestTeam": {
|
|
"properties": {
|
|
"team_id": {
|
|
"type": "string",
|
|
"title": "Team Id"
|
|
},
|
|
"max_budget_in_team": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Budget In Team"
|
|
},
|
|
"user_role": {
|
|
"type": "string",
|
|
"enum": [
|
|
"user",
|
|
"admin"
|
|
],
|
|
"title": "User Role",
|
|
"default": "user"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"team_id"
|
|
],
|
|
"title": "NewUserRequestTeam"
|
|
},
|
|
"NewUserResponse": {
|
|
"properties": {
|
|
"key_alias": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Key Alias"
|
|
},
|
|
"duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Duration"
|
|
},
|
|
"models": {
|
|
"anyOf": [
|
|
{
|
|
"items": {},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Models",
|
|
"default": []
|
|
},
|
|
"spend": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Spend",
|
|
"default": 0
|
|
},
|
|
"max_budget": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Budget"
|
|
},
|
|
"user_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Id"
|
|
},
|
|
"team_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Id"
|
|
},
|
|
"agent_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Agent Id"
|
|
},
|
|
"max_parallel_requests": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Parallel Requests"
|
|
},
|
|
"metadata": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Metadata",
|
|
"default": {}
|
|
},
|
|
"tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tpm Limit"
|
|
},
|
|
"rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Rpm Limit"
|
|
},
|
|
"budget_duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Duration"
|
|
},
|
|
"allowed_cache_controls": {
|
|
"anyOf": [
|
|
{
|
|
"items": {},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Allowed Cache Controls",
|
|
"default": []
|
|
},
|
|
"config": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Config",
|
|
"default": {}
|
|
},
|
|
"permissions": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Permissions",
|
|
"default": {}
|
|
},
|
|
"model_max_budget": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Max Budget"
|
|
},
|
|
"model_rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Rpm Limit"
|
|
},
|
|
"model_tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Tpm Limit"
|
|
},
|
|
"guardrails": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Guardrails"
|
|
},
|
|
"policies": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Policies"
|
|
},
|
|
"prompts": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Prompts"
|
|
},
|
|
"blocked": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Blocked"
|
|
},
|
|
"aliases": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Aliases",
|
|
"default": {}
|
|
},
|
|
"object_permission": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LiteLLM_ObjectPermissionBase"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"key": {
|
|
"type": "string",
|
|
"title": "Key"
|
|
},
|
|
"budget_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Budget Id"
|
|
},
|
|
"tags": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tags"
|
|
},
|
|
"enforced_params": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Enforced Params"
|
|
},
|
|
"allowed_routes": {
|
|
"anyOf": [
|
|
{
|
|
"items": {},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Allowed Routes",
|
|
"default": []
|
|
},
|
|
"allowed_passthrough_routes": {
|
|
"anyOf": [
|
|
{
|
|
"items": {},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Allowed Passthrough Routes"
|
|
},
|
|
"allowed_vector_store_indexes": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/components/schemas/AllowedVectorStoreIndexItem"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Allowed Vector Store Indexes"
|
|
},
|
|
"rpm_limit_type": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"guaranteed_throughput",
|
|
"best_effort_throughput",
|
|
"dynamic"
|
|
]
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Rpm Limit Type"
|
|
},
|
|
"tpm_limit_type": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"guaranteed_throughput",
|
|
"best_effort_throughput",
|
|
"dynamic"
|
|
]
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tpm Limit Type"
|
|
},
|
|
"router_settings": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/UpdateRouterConfig"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"access_group_ids": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Access Group Ids"
|
|
},
|
|
"key_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Key Name"
|
|
},
|
|
"expires": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Expires"
|
|
},
|
|
"token_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Token Id"
|
|
},
|
|
"organization_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Organization Id"
|
|
},
|
|
"project_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Project Id"
|
|
},
|
|
"litellm_budget_table": {
|
|
"anyOf": [
|
|
{},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Litellm Budget Table"
|
|
},
|
|
"token": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Token"
|
|
},
|
|
"created_by": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Created By"
|
|
},
|
|
"updated_by": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Updated By"
|
|
},
|
|
"created_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Created At"
|
|
},
|
|
"updated_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Updated At"
|
|
},
|
|
"user_email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Email"
|
|
},
|
|
"user_role": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": [
|
|
"proxy_admin",
|
|
"proxy_admin_viewer",
|
|
"internal_user",
|
|
"internal_user_viewer"
|
|
]
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Role"
|
|
},
|
|
"teams": {
|
|
"anyOf": [
|
|
{
|
|
"items": {},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Teams"
|
|
},
|
|
"user_alias": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Alias"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"key"
|
|
],
|
|
"title": "NewUserResponse"
|
|
},
|
|
"OAuth2SecurityScheme": {
|
|
"properties": {
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"const": "oauth2",
|
|
"title": "Type"
|
|
},
|
|
"flows": {
|
|
"$ref": "#/components/schemas/OAuthFlows"
|
|
},
|
|
"oauth2MetadataUrl": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Oauth2Metadataurl"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"type",
|
|
"flows",
|
|
"oauth2MetadataUrl"
|
|
],
|
|
"title": "OAuth2SecurityScheme",
|
|
"description": "Defines a security scheme using OAuth 2.0."
|
|
},
|
|
"OAuthFlows": {
|
|
"properties": {
|
|
"authorizationCode": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Authorizationcode"
|
|
},
|
|
"clientCredentials": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Clientcredentials"
|
|
},
|
|
"implicit": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Implicit"
|
|
},
|
|
"password": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Password"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "OAuthFlows",
|
|
"description": "Defines the configuration for the supported OAuth 2.0 flows."
|
|
},
|
|
"OpenIdConnectSecurityScheme": {
|
|
"properties": {
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"const": "openIdConnect",
|
|
"title": "Type"
|
|
},
|
|
"openIdConnectUrl": {
|
|
"type": "string",
|
|
"title": "Openidconnecturl"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"type",
|
|
"openIdConnectUrl"
|
|
],
|
|
"title": "OpenIdConnectSecurityScheme",
|
|
"description": "Defines a security scheme using OpenID Connect."
|
|
},
|
|
"OrgMember": {
|
|
"properties": {
|
|
"user_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Id",
|
|
"description": "The unique ID of the user to add. Either user_id or user_email must be provided"
|
|
},
|
|
"user_email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Email",
|
|
"description": "The email address of the user to add. Either user_id or user_email must be provided"
|
|
},
|
|
"role": {
|
|
"type": "string",
|
|
"enum": [
|
|
"org_admin",
|
|
"internal_user",
|
|
"internal_user_viewer"
|
|
],
|
|
"title": "Role"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"role"
|
|
],
|
|
"title": "OrgMember"
|
|
},
|
|
"OrganizationAddMemberResponse": {
|
|
"properties": {
|
|
"organization_id": {
|
|
"type": "string",
|
|
"title": "Organization Id"
|
|
},
|
|
"updated_users": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/LiteLLM_UserTable"
|
|
},
|
|
"type": "array",
|
|
"title": "Updated Users"
|
|
},
|
|
"updated_organization_memberships": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/LiteLLM_OrganizationMembershipTable"
|
|
},
|
|
"type": "array",
|
|
"title": "Updated Organization Memberships"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"organization_id",
|
|
"updated_users",
|
|
"updated_organization_memberships"
|
|
],
|
|
"title": "OrganizationAddMemberResponse"
|
|
},
|
|
"OrganizationMemberAddRequest": {
|
|
"properties": {
|
|
"member": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/components/schemas/OrgMember"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/OrgMember"
|
|
}
|
|
],
|
|
"title": "Member"
|
|
},
|
|
"organization_id": {
|
|
"type": "string",
|
|
"title": "Organization Id"
|
|
},
|
|
"max_budget_in_organization": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Budget In Organization"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"member",
|
|
"organization_id"
|
|
],
|
|
"title": "OrganizationMemberAddRequest"
|
|
},
|
|
"OrganizationMemberDeleteRequest": {
|
|
"properties": {
|
|
"user_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Id"
|
|
},
|
|
"user_email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Email"
|
|
},
|
|
"organization_id": {
|
|
"type": "string",
|
|
"title": "Organization Id"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"organization_id"
|
|
],
|
|
"title": "OrganizationMemberDeleteRequest"
|
|
},
|
|
"OrganizationMemberUpdateRequest": {
|
|
"properties": {
|
|
"user_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Id"
|
|
},
|
|
"user_email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Email"
|
|
},
|
|
"organization_id": {
|
|
"type": "string",
|
|
"title": "Organization Id"
|
|
},
|
|
"max_budget_in_organization": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Budget In Organization"
|
|
},
|
|
"role": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/LitellmUserRoles"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"organization_id"
|
|
],
|
|
"title": "OrganizationMemberUpdateRequest"
|
|
},
|
|
"OrganizationRequest": {
|
|
"properties": {
|
|
"organizations": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Organizations"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"organizations"
|
|
],
|
|
"title": "OrganizationRequest"
|
|
},
|
|
"PaginatedAuditLogResponse": {
|
|
"properties": {
|
|
"audit_logs": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/AuditLogResponse"
|
|
},
|
|
"type": "array",
|
|
"title": "Audit Logs"
|
|
},
|
|
"total": {
|
|
"type": "integer",
|
|
"title": "Total",
|
|
"description": "Total number of audit logs matching the filters"
|
|
},
|
|
"page": {
|
|
"type": "integer",
|
|
"title": "Page",
|
|
"description": "Current page number"
|
|
},
|
|
"page_size": {
|
|
"type": "integer",
|
|
"title": "Page Size",
|
|
"description": "Number of items per page"
|
|
},
|
|
"total_pages": {
|
|
"type": "integer",
|
|
"title": "Total Pages",
|
|
"description": "Total number of pages"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"audit_logs",
|
|
"total",
|
|
"page",
|
|
"page_size",
|
|
"total_pages"
|
|
],
|
|
"title": "PaginatedAuditLogResponse",
|
|
"description": "Response model for paginated audit logs"
|
|
},
|
|
"PassThroughEndpointResponse": {
|
|
"properties": {
|
|
"endpoints": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/PassThroughGenericEndpoint"
|
|
},
|
|
"type": "array",
|
|
"title": "Endpoints"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"endpoints"
|
|
],
|
|
"title": "PassThroughEndpointResponse"
|
|
},
|
|
"PassThroughGenericEndpoint": {
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Id",
|
|
"description": "Optional unique identifier for the pass-through endpoint. If not provided, endpoints will be identified by path for backwards compatibility."
|
|
},
|
|
"path": {
|
|
"type": "string",
|
|
"title": "Path",
|
|
"description": "The route to be added to the LiteLLM Proxy Server."
|
|
},
|
|
"target": {
|
|
"type": "string",
|
|
"title": "Target",
|
|
"description": "The URL to which requests for this path should be forwarded."
|
|
},
|
|
"headers": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Headers",
|
|
"description": "Key-value pairs of headers to be forwarded with the request. You can set any key value pair here and it will be forwarded to your target endpoint",
|
|
"default": {}
|
|
},
|
|
"default_query_params": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Default Query Params",
|
|
"description": "Key-value pairs of default query parameters to be sent with every request to this endpoint. These can be overridden by client-provided query parameters. For example: {'key': 'default_value', 'api_version': '2023-01'}",
|
|
"default": {}
|
|
},
|
|
"include_subpath": {
|
|
"type": "boolean",
|
|
"title": "Include Subpath",
|
|
"description": "If True, requests to subpaths of the path will be forwarded to the target endpoint. For example, if the path is /bria and include_subpath is True, requests to /bria/v1/text-to-image/base/2.3 will be forwarded to the target endpoint.",
|
|
"default": false
|
|
},
|
|
"cost_per_request": {
|
|
"type": "number",
|
|
"title": "Cost Per Request",
|
|
"description": "The USD cost per request to the target endpoint. This is used to calculate the cost of the request to the target endpoint.",
|
|
"default": 0.0
|
|
},
|
|
"auth": {
|
|
"type": "boolean",
|
|
"title": "Auth",
|
|
"description": "Whether authentication is required for the pass-through endpoint. If True, requests to the endpoint will require a valid LiteLLM API key.",
|
|
"default": false
|
|
},
|
|
"guardrails": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PassThroughGuardrailSettings"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Guardrails",
|
|
"description": "Guardrails configuration for this passthrough endpoint. Dict keys are guardrail names, values are optional settings for field targeting. When set, all org/team/key level guardrails will also execute. Defaults to None (no guardrails execute)."
|
|
},
|
|
"is_from_config": {
|
|
"type": "boolean",
|
|
"title": "Is From Config",
|
|
"description": "True if this endpoint is defined in the config file, False if from DB. Config-defined endpoints cannot be edited via the UI.",
|
|
"default": false
|
|
},
|
|
"methods": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Methods",
|
|
"description": "List of HTTP methods this endpoint handles (e.g., ['GET', 'POST']). If None or empty, all methods (GET, POST, PUT, DELETE, PATCH) are supported for backward compatibility. This allows the same path to have different targets for different HTTP methods."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"path",
|
|
"target"
|
|
],
|
|
"title": "PassThroughGenericEndpoint"
|
|
},
|
|
"PassThroughGuardrailSettings": {
|
|
"properties": {
|
|
"request_fields": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Request Fields",
|
|
"description": "JSONPath expressions for input field targeting (pre_call). Examples: 'query', 'documents[*].text', 'messages[*].content'. If not specified, guardrail runs on entire request payload."
|
|
},
|
|
"response_fields": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Response Fields",
|
|
"description": "JSONPath expressions for output field targeting (post_call). Examples: 'results[*].text', 'output'. If not specified, guardrail runs on entire response payload."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "PassThroughGuardrailSettings",
|
|
"description": "Settings for a specific guardrail on a passthrough endpoint.\n\nAllows field-level targeting for guardrail execution."
|
|
},
|
|
"PatchAgentRequest": {
|
|
"properties": {
|
|
"agent_name": {
|
|
"type": "string",
|
|
"title": "Agent Name"
|
|
},
|
|
"agent_card_params": {
|
|
"$ref": "#/components/schemas/AgentCard-Input"
|
|
},
|
|
"litellm_params": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Litellm Params"
|
|
},
|
|
"object_permission": {
|
|
"$ref": "#/components/schemas/AgentObjectPermission"
|
|
},
|
|
"tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tpm Limit"
|
|
},
|
|
"rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Rpm Limit"
|
|
},
|
|
"session_tpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Tpm Limit"
|
|
},
|
|
"session_rpm_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Rpm Limit"
|
|
},
|
|
"static_headers": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Static Headers"
|
|
},
|
|
"extra_headers": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Extra Headers"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "PatchAgentRequest"
|
|
},
|
|
"PatchGuardrailRequest": {
|
|
"properties": {
|
|
"guardrail_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Guardrail Name"
|
|
},
|
|
"litellm_params": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/BaseLitellmParams-Input"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"guardrail_info": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Guardrail Info"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "PatchGuardrailRequest"
|
|
},
|
|
"PatchPromptRequest": {
|
|
"properties": {
|
|
"litellm_params": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PromptLiteLLMParams"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"prompt_info": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PromptInfo"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "PatchPromptRequest"
|
|
},
|
|
"PerTestingCriteriaResult": {
|
|
"properties": {
|
|
"testing_criteria_index": {
|
|
"type": "integer",
|
|
"title": "Testing Criteria Index"
|
|
},
|
|
"result_counts": {
|
|
"$ref": "#/components/schemas/ResultCounts"
|
|
},
|
|
"average_score": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Average Score"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"testing_criteria_index",
|
|
"result_counts"
|
|
],
|
|
"title": "PerTestingCriteriaResult",
|
|
"description": "Results for a specific testing criteria"
|
|
},
|
|
"PerUserAnalyticsResponse": {
|
|
"properties": {
|
|
"results": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/PerUserMetrics"
|
|
},
|
|
"type": "array",
|
|
"title": "Results"
|
|
},
|
|
"total_count": {
|
|
"type": "integer",
|
|
"title": "Total Count"
|
|
},
|
|
"page": {
|
|
"type": "integer",
|
|
"title": "Page"
|
|
},
|
|
"page_size": {
|
|
"type": "integer",
|
|
"title": "Page Size"
|
|
},
|
|
"total_pages": {
|
|
"type": "integer",
|
|
"title": "Total Pages"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"results",
|
|
"total_count",
|
|
"page",
|
|
"page_size",
|
|
"total_pages"
|
|
],
|
|
"title": "PerUserAnalyticsResponse",
|
|
"description": "Response for per-user analytics"
|
|
},
|
|
"PerUserMetrics": {
|
|
"properties": {
|
|
"user_id": {
|
|
"type": "string",
|
|
"title": "User Id"
|
|
},
|
|
"user_email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Email"
|
|
},
|
|
"user_agent": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Agent"
|
|
},
|
|
"successful_requests": {
|
|
"type": "integer",
|
|
"title": "Successful Requests",
|
|
"default": 0
|
|
},
|
|
"failed_requests": {
|
|
"type": "integer",
|
|
"title": "Failed Requests",
|
|
"default": 0
|
|
},
|
|
"total_requests": {
|
|
"type": "integer",
|
|
"title": "Total Requests",
|
|
"default": 0
|
|
},
|
|
"total_tokens": {
|
|
"type": "integer",
|
|
"title": "Total Tokens",
|
|
"default": 0
|
|
},
|
|
"spend": {
|
|
"type": "number",
|
|
"title": "Spend",
|
|
"default": 0.0
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"user_id"
|
|
],
|
|
"title": "PerUserMetrics",
|
|
"description": "Metrics for individual user"
|
|
},
|
|
"PiiAction": {
|
|
"type": "string",
|
|
"enum": [
|
|
"BLOCK",
|
|
"MASK"
|
|
],
|
|
"title": "PiiAction"
|
|
},
|
|
"PiiEntityType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"CREDIT_CARD",
|
|
"CRYPTO",
|
|
"DATE_TIME",
|
|
"EMAIL_ADDRESS",
|
|
"IBAN_CODE",
|
|
"IP_ADDRESS",
|
|
"NRP",
|
|
"LOCATION",
|
|
"PERSON",
|
|
"PHONE_NUMBER",
|
|
"MEDICAL_LICENSE",
|
|
"URL",
|
|
"US_BANK_NUMBER",
|
|
"US_DRIVER_LICENSE",
|
|
"US_ITIN",
|
|
"US_PASSPORT",
|
|
"US_SSN",
|
|
"UK_NHS",
|
|
"UK_NINO",
|
|
"ES_NIF",
|
|
"ES_NIE",
|
|
"IT_FISCAL_CODE",
|
|
"IT_DRIVER_LICENSE",
|
|
"IT_VAT_CODE",
|
|
"IT_PASSPORT",
|
|
"IT_IDENTITY_CARD",
|
|
"PL_PESEL",
|
|
"SG_NRIC_FIN",
|
|
"SG_UEN",
|
|
"AU_ABN",
|
|
"AU_ACN",
|
|
"AU_TFN",
|
|
"AU_MEDICARE",
|
|
"IN_PAN",
|
|
"IN_AADHAAR",
|
|
"IN_VEHICLE_REGISTRATION",
|
|
"IN_VOTER",
|
|
"IN_PASSPORT",
|
|
"FI_PERSONAL_IDENTITY_CODE"
|
|
],
|
|
"title": "PiiEntityType"
|
|
},
|
|
"PipelineTestRequest": {
|
|
"properties": {
|
|
"pipeline": {
|
|
"additionalProperties": true,
|
|
"type": "object",
|
|
"title": "Pipeline",
|
|
"description": "Pipeline definition with 'mode' and 'steps'."
|
|
},
|
|
"test_messages": {
|
|
"items": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
"type": "array",
|
|
"title": "Test Messages",
|
|
"description": "Test messages to run through the pipeline, e.g. [{'role': 'user', 'content': '...'}]."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"pipeline",
|
|
"test_messages"
|
|
],
|
|
"title": "PipelineTestRequest",
|
|
"description": "Request body for testing a guardrail pipeline with sample messages."
|
|
},
|
|
"PluginAuthor": {
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"title": "Name",
|
|
"description": "Author name"
|
|
},
|
|
"email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Email",
|
|
"description": "Author email"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"name"
|
|
],
|
|
"title": "PluginAuthor",
|
|
"description": "Plugin author information."
|
|
},
|
|
"PluginListItem": {
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"title": "Id"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"title": "Name"
|
|
},
|
|
"version": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Version"
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"source": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object",
|
|
"title": "Source"
|
|
},
|
|
"author": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PluginAuthor"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"homepage": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Homepage"
|
|
},
|
|
"keywords": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Keywords"
|
|
},
|
|
"category": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Category"
|
|
},
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"title": "Enabled"
|
|
},
|
|
"created_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Created At"
|
|
},
|
|
"updated_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Updated At"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"version",
|
|
"description",
|
|
"source",
|
|
"enabled",
|
|
"created_at",
|
|
"updated_at"
|
|
],
|
|
"title": "PluginListItem",
|
|
"description": "Plugin item in list responses."
|
|
},
|
|
"PolicyAttachmentCreateRequest": {
|
|
"properties": {
|
|
"policy_name": {
|
|
"type": "string",
|
|
"title": "Policy Name",
|
|
"description": "Name of the policy to attach."
|
|
},
|
|
"scope": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Scope",
|
|
"description": "Use '*' for global scope (applies to all requests)."
|
|
},
|
|
"teams": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Teams",
|
|
"description": "Team aliases or patterns this attachment applies to."
|
|
},
|
|
"keys": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Keys",
|
|
"description": "Key aliases or patterns this attachment applies to."
|
|
},
|
|
"models": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Models",
|
|
"description": "Model names or patterns this attachment applies to."
|
|
},
|
|
"tags": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tags",
|
|
"description": "Tag patterns this attachment applies to. Supports wildcards (e.g., health-*)."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"policy_name"
|
|
],
|
|
"title": "PolicyAttachmentCreateRequest",
|
|
"description": "Request body for creating a policy attachment."
|
|
},
|
|
"PolicyAttachmentDBResponse": {
|
|
"properties": {
|
|
"attachment_id": {
|
|
"type": "string",
|
|
"title": "Attachment Id",
|
|
"description": "Unique ID of the attachment."
|
|
},
|
|
"policy_name": {
|
|
"type": "string",
|
|
"title": "Policy Name",
|
|
"description": "Name of the attached policy."
|
|
},
|
|
"scope": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Scope",
|
|
"description": "Scope of the attachment."
|
|
},
|
|
"teams": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Teams",
|
|
"description": "Team patterns."
|
|
},
|
|
"keys": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Keys",
|
|
"description": "Key patterns."
|
|
},
|
|
"models": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Models",
|
|
"description": "Model patterns."
|
|
},
|
|
"tags": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Tags",
|
|
"description": "Tag patterns."
|
|
},
|
|
"created_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Created At",
|
|
"description": "When the attachment was created."
|
|
},
|
|
"updated_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Updated At",
|
|
"description": "When the attachment was last updated."
|
|
},
|
|
"created_by": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Created By",
|
|
"description": "Who created the attachment."
|
|
},
|
|
"updated_by": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Updated By",
|
|
"description": "Who last updated the attachment."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"attachment_id",
|
|
"policy_name"
|
|
],
|
|
"title": "PolicyAttachmentDBResponse",
|
|
"description": "Response for a policy attachment from the database."
|
|
},
|
|
"PolicyAttachmentListResponse": {
|
|
"properties": {
|
|
"attachments": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/PolicyAttachmentDBResponse"
|
|
},
|
|
"type": "array",
|
|
"title": "Attachments",
|
|
"description": "List of policy attachments."
|
|
},
|
|
"total_count": {
|
|
"type": "integer",
|
|
"title": "Total Count",
|
|
"description": "Total number of attachments.",
|
|
"default": 0
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "PolicyAttachmentListResponse",
|
|
"description": "Response for listing policy attachments."
|
|
},
|
|
"PolicyConditionRequest": {
|
|
"properties": {
|
|
"model": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model",
|
|
"description": "Model name pattern (exact match or regex) for when policy applies."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "PolicyConditionRequest",
|
|
"description": "Condition for when a policy applies."
|
|
},
|
|
"PolicyCreateRequest": {
|
|
"properties": {
|
|
"policy_name": {
|
|
"type": "string",
|
|
"title": "Policy Name",
|
|
"description": "Unique name for the policy."
|
|
},
|
|
"inherit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Inherit",
|
|
"description": "Name of parent policy to inherit from."
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description",
|
|
"description": "Human-readable description of the policy."
|
|
},
|
|
"guardrails_add": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Guardrails Add",
|
|
"description": "List of guardrail names to add."
|
|
},
|
|
"guardrails_remove": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Guardrails Remove",
|
|
"description": "List of guardrail names to remove (from inherited)."
|
|
},
|
|
"condition": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/PolicyConditionRequest"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Condition for when this policy applies."
|
|
},
|
|
"pipeline": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Pipeline",
|
|
"description": "Optional guardrail pipeline for ordered execution. Contains 'mode' and 'steps'."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"policy_name"
|
|
],
|
|
"title": "PolicyCreateRequest",
|
|
"description": "Request body for creating a new policy."
|
|
},
|
|
"PolicyDBResponse": {
|
|
"properties": {
|
|
"policy_id": {
|
|
"type": "string",
|
|
"title": "Policy Id",
|
|
"description": "Unique ID of the policy."
|
|
},
|
|
"policy_name": {
|
|
"type": "string",
|
|
"title": "Policy Name",
|
|
"description": "Name of the policy."
|
|
},
|
|
"version_number": {
|
|
"type": "integer",
|
|
"title": "Version Number",
|
|
"description": "Version number of this policy.",
|
|
"default": 1
|
|
},
|
|
"version_status": {
|
|
"type": "string",
|
|
"title": "Version Status",
|
|
"description": "One of: draft, published, production.",
|
|
"default": "production"
|
|
},
|
|
"parent_version_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Parent Version Id",
|
|
"description": "Policy ID this version was cloned from."
|
|
},
|
|
"is_latest": {
|
|
"type": "boolean",
|
|
"title": "Is Latest",
|
|
"description": "True if this is the latest version by version_number.",
|
|
"default": true
|
|
},
|
|
"published_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Published At",
|
|
"description": "When this version was published."
|
|
},
|
|
"production_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Production At",
|
|
"description": "When this version was promoted to production."
|
|
},
|
|
"inherit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Inherit",
|
|
"description": "Parent policy name."
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description",
|
|
"description": "Policy description."
|
|
},
|
|
"guardrails_add": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Guardrails Add",
|
|
"description": "Guardrails to add."
|
|
},
|
|
"guardrails_remove": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Guardrails Remove",
|
|
"description": "Guardrails to remove."
|
|
},
|
|
"condition": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Condition",
|
|
"description": "Policy condition."
|
|
},
|
|
"pipeline": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Pipeline",
|
|
"description": "Optional guardrail pipeline."
|
|
},
|
|
"created_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Created At",
|
|
"description": "When the policy was created."
|
|
},
|
|
"updated_at": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Updated At",
|
|
"description": "When the policy was last updated."
|
|
},
|
|
"created_by": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Created By",
|
|
"description": "Who created the policy."
|
|
},
|
|
"updated_by": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Updated By",
|
|
"description": "Who last updated the policy."
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"policy_id",
|
|
"policy_name"
|
|
],
|
|
"title": "PolicyDBResponse",
|
|
"description": "Response for a policy from the database."
|
|
},
|
|
"PolicyGuardrailsResponse": {
|
|
"properties": {
|
|
"add": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Add"
|
|
},
|
|
"remove": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Remove"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"title": "PolicyGuardrailsResponse",
|
|
"description": "Guardrails configuration for a policy."
|
|
},
|
|
"PolicyInfoResponse": {
|
|
"properties": {
|
|
"policy_name": {
|
|
"type": "string",
|
|
"title": "Policy Name"
|
|
},
|
|
"inherit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Inherit"
|
|
},
|
|
"scope": {
|
|
"$ref": "#/components/schemas/PolicyScopeResponse"
|
|
},
|
|
"guardrails": {
|
|
"$ref": "#/components/schemas/PolicyGuardrailsResponse"
|
|
},
|
|
"resolved_guardrails": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Resolved Guardrails"
|
|
},
|
|
"inheritance_chain": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array",
|
|
"title": "Inheritance Chain"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"required": [
|
|
"policy_name",
|
|
"scope",
|
|
"guardrails",
|
|
"resolved_guardrails",
|
|
"inheritance_chain"
|
|
],
|
|
"title": "PolicyInfoResponse",
|
|
"description": "Response for /policy/info/{policy_name} endpoint."
|
|
}
|
|
} |