|
6 | 6 | }, |
7 | 7 | "components": { |
8 | 8 | "schemas": { |
| 9 | + "A2AStateConfiguration": { |
| 10 | + "additionalProperties": false, |
| 11 | + "description": "A2A protocol persistent state configuration.\n\nConfigures how A2A task state and context-to-conversation mappings are\nstored. For multi-worker deployments, use SQLite or PostgreSQL to ensure\nstate is shared across all workers.\n\nIf no configuration is provided, in-memory storage is used (default).\nThis is suitable for single-worker deployments but state will be lost\non restarts and not shared across workers.\n\nAttributes:\n sqlite: SQLite database configuration for A2A state storage.\n postgres: PostgreSQL database configuration for A2A state storage.", |
| 12 | + "properties": { |
| 13 | + "sqlite": { |
| 14 | + "anyOf": [ |
| 15 | + { |
| 16 | + "$ref": "#/components/schemas/SQLiteDatabaseConfiguration" |
| 17 | + }, |
| 18 | + { |
| 19 | + "type": "null" |
| 20 | + } |
| 21 | + ], |
| 22 | + "default": null, |
| 23 | + "description": "SQLite database configuration for A2A state storage.", |
| 24 | + "title": "SQLite configuration" |
| 25 | + }, |
| 26 | + "postgres": { |
| 27 | + "anyOf": [ |
| 28 | + { |
| 29 | + "$ref": "#/components/schemas/PostgreSQLDatabaseConfiguration" |
| 30 | + }, |
| 31 | + { |
| 32 | + "type": "null" |
| 33 | + } |
| 34 | + ], |
| 35 | + "default": null, |
| 36 | + "description": "PostgreSQL database configuration for A2A state storage.", |
| 37 | + "title": "PostgreSQL configuration" |
| 38 | + } |
| 39 | + }, |
| 40 | + "title": "A2AStateConfiguration", |
| 41 | + "type": "object" |
| 42 | + }, |
9 | 43 | "APIKeyTokenConfiguration": { |
10 | 44 | "additionalProperties": false, |
11 | 45 | "description": "API Key Token configuration.", |
|
78 | 112 | "get_config", |
79 | 113 | "info", |
80 | 114 | "model_override", |
81 | | - "rlsapi_v1_infer" |
| 115 | + "rlsapi_v1_infer", |
| 116 | + "a2a_agent_card", |
| 117 | + "a2a_task_execution", |
| 118 | + "a2a_message", |
| 119 | + "a2a_jsonrpc" |
82 | 120 | ], |
83 | 121 | "title": "Action", |
84 | 122 | "type": "string" |
|
97 | 135 | "title": "Skip Tls Verification", |
98 | 136 | "type": "boolean" |
99 | 137 | }, |
| 138 | + "skip_for_health_probes": { |
| 139 | + "default": false, |
| 140 | + "description": "Skip authorization for readiness and liveness probes", |
| 141 | + "title": "Skip authorization for probes", |
| 142 | + "type": "boolean" |
| 143 | + }, |
100 | 144 | "k8s_cluster_api": { |
101 | 145 | "type": "string", |
102 | 146 | "nullable": true, |
|
162 | 206 | "title": "AuthorizationConfiguration", |
163 | 207 | "type": "object" |
164 | 208 | }, |
| 209 | + "AzureEntraIdConfiguration": { |
| 210 | + "additionalProperties": false, |
| 211 | + "description": "Microsoft Entra ID authentication attributes for Azure.", |
| 212 | + "properties": { |
| 213 | + "tenant_id": { |
| 214 | + "format": "password", |
| 215 | + "title": "Tenant Id", |
| 216 | + "type": "string", |
| 217 | + "writeOnly": true |
| 218 | + }, |
| 219 | + "client_id": { |
| 220 | + "format": "password", |
| 221 | + "title": "Client Id", |
| 222 | + "type": "string", |
| 223 | + "writeOnly": true |
| 224 | + }, |
| 225 | + "client_secret": { |
| 226 | + "format": "password", |
| 227 | + "title": "Client Secret", |
| 228 | + "type": "string", |
| 229 | + "writeOnly": true |
| 230 | + }, |
| 231 | + "scope": { |
| 232 | + "default": "https://cognitiveservices.azure.com/.default", |
| 233 | + "description": "Azure Cognitive Services scope for token requests. Override only if using a different Azure service.", |
| 234 | + "title": "Token scope", |
| 235 | + "type": "string" |
| 236 | + } |
| 237 | + }, |
| 238 | + "required": [ |
| 239 | + "tenant_id", |
| 240 | + "client_id", |
| 241 | + "client_secret" |
| 242 | + ], |
| 243 | + "title": "AzureEntraIdConfiguration", |
| 244 | + "type": "object" |
| 245 | + }, |
165 | 246 | "ByokRag": { |
166 | 247 | "additionalProperties": false, |
167 | 248 | "description": "BYOK (Bring Your Own Knowledge) RAG configuration.", |
|
346 | 427 | "title": "BYOK RAG configuration", |
347 | 428 | "type": "array" |
348 | 429 | }, |
| 430 | + "a2a_state": { |
| 431 | + "$ref": "#/components/schemas/A2AStateConfiguration", |
| 432 | + "description": "Configuration for A2A protocol persistent state storage.", |
| 433 | + "title": "A2A state configuration" |
| 434 | + }, |
349 | 435 | "quota_handlers": { |
350 | 436 | "$ref": "#/components/schemas/QuotaHandlersConfiguration", |
351 | 437 | "description": "Quota handlers configuration", |
352 | 438 | "title": "Quota handlers" |
| 439 | + }, |
| 440 | + "azure_entra_id": { |
| 441 | + "anyOf": [ |
| 442 | + { |
| 443 | + "$ref": "#/components/schemas/AzureEntraIdConfiguration" |
| 444 | + }, |
| 445 | + { |
| 446 | + "type": "null" |
| 447 | + } |
| 448 | + ], |
| 449 | + "default": null |
| 450 | + }, |
| 451 | + "splunk": { |
| 452 | + "anyOf": [ |
| 453 | + { |
| 454 | + "$ref": "#/components/schemas/SplunkConfiguration" |
| 455 | + }, |
| 456 | + { |
| 457 | + "type": "null" |
| 458 | + } |
| 459 | + ], |
| 460 | + "default": null, |
| 461 | + "description": "Splunk HEC configuration for sending telemetry events.", |
| 462 | + "title": "Splunk configuration" |
| 463 | + }, |
| 464 | + "deployment_environment": { |
| 465 | + "default": "development", |
| 466 | + "description": "Deployment environment name (e.g., 'development', 'staging', 'production'). Used in telemetry events.", |
| 467 | + "title": "Deployment environment", |
| 468 | + "type": "string" |
353 | 469 | } |
354 | 470 | }, |
355 | 471 | "required": [ |
|
466 | 582 | "default": null, |
467 | 583 | "title": "System Prompt" |
468 | 584 | }, |
| 585 | + "agent_card_path": { |
| 586 | + "type": "string", |
| 587 | + "nullable": true, |
| 588 | + "default": null, |
| 589 | + "title": "Agent Card Path" |
| 590 | + }, |
| 591 | + "agent_card_config": { |
| 592 | + "type": "object", |
| 593 | + "nullable": true, |
| 594 | + "default": null, |
| 595 | + "title": "Agent Card Config" |
| 596 | + }, |
469 | 597 | "custom_profile": { |
470 | 598 | "anyOf": [ |
471 | 599 | { |
|
713 | 841 | "description": "URL of the MCP server", |
714 | 842 | "title": "MCP server URL", |
715 | 843 | "type": "string" |
| 844 | + }, |
| 845 | + "authorization_headers": { |
| 846 | + "additionalProperties": { |
| 847 | + "type": "string" |
| 848 | + }, |
| 849 | + "description": "Headers to send to the MCP server. The map contains the header name and the path to a file containing the header value (secret). There are 2 special cases: 1. Usage of the kubernetes token in the header. To specify this use a string 'kubernetes' instead of the file path. 2. Usage of the client provided token in the header. To specify this use a string 'client' instead of the file path.", |
| 850 | + "title": "Authorization headers", |
| 851 | + "type": "object" |
| 852 | + }, |
| 853 | + "timeout": { |
| 854 | + "type": "integer", |
| 855 | + "nullable": true, |
| 856 | + "default": null, |
| 857 | + "description": "Timeout in seconds for requests to the MCP server. If not specified, the default timeout from Llama Stack will be used. Note: This field is reserved for future use when Llama Stack adds timeout support.", |
| 858 | + "title": "Request timeout" |
716 | 859 | } |
717 | 860 | }, |
718 | 861 | "required": [ |
|
900 | 1043 | "minimum": 0, |
901 | 1044 | "title": "Period", |
902 | 1045 | "type": "integer" |
| 1046 | + }, |
| 1047 | + "database_reconnection_count": { |
| 1048 | + "default": 10, |
| 1049 | + "description": "Database reconnection count on startup. When database for quota is not available on startup, the service tries to reconnect N times with specified delay.", |
| 1050 | + "minimum": 0, |
| 1051 | + "title": "Database reconnection count on startup", |
| 1052 | + "type": "integer" |
| 1053 | + }, |
| 1054 | + "database_reconnection_delay": { |
| 1055 | + "default": 1, |
| 1056 | + "description": "Database reconnection delay specified in seconds. When database for quota is not available on startup, the service tries to reconnect N times with specified delay.", |
| 1057 | + "minimum": 0, |
| 1058 | + "title": "Database reconnection delay", |
| 1059 | + "type": "integer" |
903 | 1060 | } |
904 | 1061 | }, |
905 | 1062 | "title": "QuotaSchedulerConfiguration", |
|
953 | 1110 | "title": "Port", |
954 | 1111 | "type": "integer" |
955 | 1112 | }, |
| 1113 | + "base_url": { |
| 1114 | + "type": "string", |
| 1115 | + "nullable": true, |
| 1116 | + "default": null, |
| 1117 | + "description": "Externally reachable base URL for the service; needed for A2A support.", |
| 1118 | + "title": "Base URL" |
| 1119 | + }, |
956 | 1120 | "auth_enabled": { |
957 | 1121 | "default": false, |
958 | 1122 | "description": "Enables the authentication subsystem", |
|
992 | 1156 | "title": "ServiceConfiguration", |
993 | 1157 | "type": "object" |
994 | 1158 | }, |
| 1159 | + "SplunkConfiguration": { |
| 1160 | + "additionalProperties": false, |
| 1161 | + "description": "Splunk HEC (HTTP Event Collector) configuration.\n\nSplunk HEC allows sending events directly to Splunk over HTTP/HTTPS.\nThis configuration is used to send telemetry events for inference\nrequests to the corporate Splunk deployment.\n\nUseful resources:\n\n - [Splunk HEC Docs](https://docs.splunk.com/Documentation/SplunkCloud)\n - [About HEC](https://docs.splunk.com/Documentation/Splunk/latest/Data)", |
| 1162 | + "properties": { |
| 1163 | + "enabled": { |
| 1164 | + "default": false, |
| 1165 | + "description": "Enable or disable Splunk HEC integration.", |
| 1166 | + "title": "Enabled", |
| 1167 | + "type": "boolean" |
| 1168 | + }, |
| 1169 | + "url": { |
| 1170 | + "type": "string", |
| 1171 | + "nullable": true, |
| 1172 | + "default": null, |
| 1173 | + "description": "Splunk HEC endpoint URL.", |
| 1174 | + "title": "HEC URL" |
| 1175 | + }, |
| 1176 | + "token_path": { |
| 1177 | + "type": "string", |
| 1178 | + "nullable": true, |
| 1179 | + "default": null, |
| 1180 | + "description": "Path to file containing the Splunk HEC authentication token.", |
| 1181 | + "title": "Token path" |
| 1182 | + }, |
| 1183 | + "index": { |
| 1184 | + "type": "string", |
| 1185 | + "nullable": true, |
| 1186 | + "default": null, |
| 1187 | + "description": "Target Splunk index for events.", |
| 1188 | + "title": "Index" |
| 1189 | + }, |
| 1190 | + "source": { |
| 1191 | + "default": "lightspeed-stack", |
| 1192 | + "description": "Event source identifier.", |
| 1193 | + "title": "Source", |
| 1194 | + "type": "string" |
| 1195 | + }, |
| 1196 | + "timeout": { |
| 1197 | + "default": 5, |
| 1198 | + "description": "HTTP timeout in seconds for HEC requests.", |
| 1199 | + "minimum": 0, |
| 1200 | + "title": "Timeout", |
| 1201 | + "type": "integer" |
| 1202 | + }, |
| 1203 | + "verify_ssl": { |
| 1204 | + "default": true, |
| 1205 | + "description": "Whether to verify SSL certificates for HEC endpoint.", |
| 1206 | + "title": "Verify SSL", |
| 1207 | + "type": "boolean" |
| 1208 | + } |
| 1209 | + }, |
| 1210 | + "title": "SplunkConfiguration", |
| 1211 | + "type": "object" |
| 1212 | + }, |
995 | 1213 | "TLSConfiguration": { |
996 | 1214 | "additionalProperties": false, |
997 | 1215 | "description": "TLS configuration.\n\nTransport Layer Security (TLS) is a cryptographic protocol designed to\nprovide communications security over a computer network, such as the\nInternet. The protocol is widely used in applications such as email,\ninstant messaging, and voice over IP, but its use in securing HTTPS remains\nthe most publicly visible.\n\nUseful resources:\n\n - [FastAPI HTTPS Deployment](https://fastapi.tiangolo.com/deployment/https/)\n - [Transport Layer Security Overview](https://en.wikipedia.org/wiki/Transport_Layer_Security)\n - [What is TLS](https://www.ssltrust.eu/learning/ssl/transport-layer-security-tls)", |
|
0 commit comments