|
1293 | 1293 | "/v1/query": { |
1294 | 1294 | "post": { |
1295 | 1295 | "tags": [ |
1296 | | - "query_v1" |
| 1296 | + "query" |
1297 | 1297 | ], |
1298 | | - "summary": "Query Endpoint Handler V1", |
1299 | | - "description": "Handle request to the /query endpoint using Responses API.\n\nThis is a wrapper around query_endpoint_handler_base that provides\nthe Responses API specific retrieve_response and get_topic_summary functions.\n\nReturns:\n QueryResponse: Contains the conversation ID and the LLM-generated response.", |
1300 | | - "operationId": "query_endpoint_handler_v2_v1_query_post", |
| 1298 | + "summary": "Query Endpoint Handler", |
| 1299 | + "description": "Handle request to the /query endpoint using Responses API.\n\nProcesses a POST request to a query endpoint, forwarding the\nuser's query to a selected Llama Stack LLM and returning the generated response.\n\nReturns:\n QueryResponse: Contains the conversation ID and the LLM-generated response.\n\nRaises:\n HTTPException:\n - 401: Unauthorized - Missing or invalid credentials\n - 403: Forbidden - Insufficient permissions or model override not allowed\n - 404: Not Found - Conversation, model, or provider not found\n - 413: Prompt too long - Prompt exceeded model's context window size\n - 422: Unprocessable Entity - Request validation failed\n - 429: Quota limit exceeded - The token quota for model or user has been exceeded\n - 500: Internal Server Error - Configuration not loaded or other server errors\n - 503: Service Unavailable - Unable to connect to Llama Stack backend", |
| 1300 | + "operationId": "query_endpoint_handler_v1_query_post", |
1301 | 1301 | "requestBody": { |
1302 | 1302 | "content": { |
1303 | 1303 | "application/json": { |
|
1453 | 1453 | } |
1454 | 1454 | } |
1455 | 1455 | }, |
| 1456 | + "413": { |
| 1457 | + "description": "Prompt is too long", |
| 1458 | + "content": { |
| 1459 | + "application/json": { |
| 1460 | + "schema": { |
| 1461 | + "$ref": "#/components/schemas/PromptTooLongResponse" |
| 1462 | + }, |
| 1463 | + "examples": { |
| 1464 | + "prompt too long": { |
| 1465 | + "value": { |
| 1466 | + "detail": { |
| 1467 | + "cause": "The prompt exceeds the maximum allowed length.", |
| 1468 | + "response": "Prompt is too long" |
| 1469 | + } |
| 1470 | + } |
| 1471 | + } |
| 1472 | + } |
| 1473 | + } |
| 1474 | + } |
| 1475 | + }, |
1456 | 1476 | "422": { |
1457 | 1477 | "description": "Request validation failed", |
1458 | 1478 | "content": { |
|
1480 | 1500 | "invalid value": { |
1481 | 1501 | "value": { |
1482 | 1502 | "detail": { |
1483 | | - "cause": "Invalid attatchment type: must be one of ['text/plain', 'application/json', 'application/yaml', 'application/xml']", |
| 1503 | + "cause": "Invalid attachment type: must be one of ['text/plain', 'application/json', 'application/yaml', 'application/xml']", |
1484 | 1504 | "response": "Invalid attribute value" |
1485 | 1505 | } |
1486 | 1506 | } |
|
1603 | 1623 | "/v1/streaming_query": { |
1604 | 1624 | "post": { |
1605 | 1625 | "tags": [ |
1606 | | - "streaming_query_v1" |
| 1626 | + "streaming_query" |
1607 | 1627 | ], |
1608 | | - "summary": "Streaming Query Endpoint Handler V1", |
1609 | | - "description": "Handle request to the /streaming_query endpoint using Responses API.\n\nReturns a streaming response using Server-Sent Events (SSE) format with\ncontent type text/event-stream.\n\nReturns:\n StreamingResponse: An HTTP streaming response yielding\n SSE-formatted events for the query lifecycle with content type\n text/event-stream.\n\nRaises:\n HTTPException:\n - 401: Unauthorized - Missing or invalid credentials\n - 403: Forbidden - Insufficient permissions or model override not allowed\n - 404: Not Found - Conversation, model, or provider not found\n - 422: Unprocessable Entity - Request validation failed\n - 429: Too Many Requests - Quota limit exceeded\n - 500: Internal Server Error - Configuration not loaded or other server errors\n - 503: Service Unavailable - Unable to connect to Llama Stack backend", |
1610 | | - "operationId": "streaming_query_endpoint_handler_v2_v1_streaming_query_post", |
| 1628 | + "summary": "Streaming Query Endpoint Handler", |
| 1629 | + "description": "Handle request to the /streaming_query endpoint using Responses API.\n\nReturns a streaming response using Server-Sent Events (SSE) format with\ncontent type text/event-stream.\n\nReturns:\n SSE-formatted events for the query lifecycle.\n\nRaises:\n HTTPException:\n - 401: Unauthorized - Missing or invalid credentials\n - 403: Forbidden - Insufficient permissions or model override not allowed\n - 404: Not Found - Conversation, model, or provider not found\n - 413: Prompt too long - Prompt exceeded model's context window size\n - 422: Unprocessable Entity - Request validation failed\n - 429: Quota limit exceeded - The token quota for model or user has been exceeded\n - 500: Internal Server Error - Configuration not loaded or other server errors\n - 503: Service Unavailable - Unable to connect to Llama Stack backend", |
| 1630 | + "operationId": "streaming_query_endpoint_handler_v1_streaming_query_post", |
1611 | 1631 | "requestBody": { |
1612 | 1632 | "content": { |
1613 | 1633 | "application/json": { |
|
1731 | 1751 | } |
1732 | 1752 | } |
1733 | 1753 | }, |
| 1754 | + "413": { |
| 1755 | + "description": "Prompt is too long", |
| 1756 | + "content": { |
| 1757 | + "application/json": { |
| 1758 | + "schema": { |
| 1759 | + "$ref": "#/components/schemas/PromptTooLongResponse" |
| 1760 | + }, |
| 1761 | + "examples": { |
| 1762 | + "prompt too long": { |
| 1763 | + "value": { |
| 1764 | + "detail": { |
| 1765 | + "cause": "The prompt exceeds the maximum allowed length.", |
| 1766 | + "response": "Prompt is too long" |
| 1767 | + } |
| 1768 | + } |
| 1769 | + } |
| 1770 | + } |
| 1771 | + } |
| 1772 | + } |
| 1773 | + }, |
1734 | 1774 | "422": { |
1735 | 1775 | "description": "Request validation failed", |
1736 | 1776 | "content": { |
|
1758 | 1798 | "invalid value": { |
1759 | 1799 | "value": { |
1760 | 1800 | "detail": { |
1761 | | - "cause": "Invalid attatchment type: must be one of ['text/plain', 'application/json', 'application/yaml', 'application/xml']", |
| 1801 | + "cause": "Invalid attachment type: must be one of ['text/plain', 'application/json', 'application/yaml', 'application/xml']", |
1762 | 1802 | "response": "Invalid attribute value" |
1763 | 1803 | } |
1764 | 1804 | } |
|
3756 | 3796 | "invalid value": { |
3757 | 3797 | "value": { |
3758 | 3798 | "detail": { |
3759 | | - "cause": "Invalid attatchment type: must be one of ['text/plain', 'application/json', 'application/yaml', 'application/xml']", |
| 3799 | + "cause": "Invalid attachment type: must be one of ['text/plain', 'application/json', 'application/yaml', 'application/xml']", |
3760 | 3800 | "response": "Invalid attribute value" |
3761 | 3801 | } |
3762 | 3802 | } |
|
4278 | 4318 | ], |
4279 | 4319 | "summary": "Handle A2A Jsonrpc", |
4280 | 4320 | "description": "Handle A2A JSON-RPC requests following the A2A protocol specification.\n\nThis endpoint uses the DefaultRequestHandler from the A2A SDK to handle\nall JSON-RPC requests including message/send, message/stream, etc.\n\nThe A2A SDK application is created per-request to include authentication\ncontext while still leveraging FastAPI's authorization middleware.\n\nAutomatically detects streaming requests (message/stream JSON-RPC method)\nand returns a StreamingResponse to enable real-time chunk delivery.\n\nArgs:\n request: FastAPI request object\n auth: Authentication tuple\n mcp_headers: MCP headers for context propagation\n\nReturns:\n JSON-RPC response or streaming response", |
4281 | | - "operationId": "handle_a2a_jsonrpc_a2a_get", |
| 4321 | + "operationId": "handle_a2a_jsonrpc_a2a_post", |
4282 | 4322 | "responses": { |
4283 | 4323 | "200": { |
4284 | 4324 | "description": "Successful Response", |
|
4296 | 4336 | ], |
4297 | 4337 | "summary": "Handle A2A Jsonrpc", |
4298 | 4338 | "description": "Handle A2A JSON-RPC requests following the A2A protocol specification.\n\nThis endpoint uses the DefaultRequestHandler from the A2A SDK to handle\nall JSON-RPC requests including message/send, message/stream, etc.\n\nThe A2A SDK application is created per-request to include authentication\ncontext while still leveraging FastAPI's authorization middleware.\n\nAutomatically detects streaming requests (message/stream JSON-RPC method)\nand returns a StreamingResponse to enable real-time chunk delivery.\n\nArgs:\n request: FastAPI request object\n auth: Authentication tuple\n mcp_headers: MCP headers for context propagation\n\nReturns:\n JSON-RPC response or streaming response", |
4299 | | - "operationId": "handle_a2a_jsonrpc_a2a_get", |
| 4339 | + "operationId": "handle_a2a_jsonrpc_a2a_post", |
4300 | 4340 | "responses": { |
4301 | 4341 | "200": { |
4302 | 4342 | "description": "Successful Response", |
|
7519 | 7559 | "title": "PostgreSQLDatabaseConfiguration", |
7520 | 7560 | "description": "PostgreSQL database configuration.\n\nPostgreSQL database is used by Lightspeed Core Stack service for storing\ninformation about conversation IDs. It can also be leveraged to store\nconversation history and information about quota usage.\n\nUseful resources:\n\n- [Psycopg: connection classes](https://www.psycopg.org/psycopg3/docs/api/connections.html)\n- [PostgreSQL connection strings](https://www.connectionstrings.com/postgresql/)\n- [How to Use PostgreSQL in Python](https://www.freecodecamp.org/news/postgresql-in-python/)" |
7521 | 7561 | }, |
| 7562 | + "PromptTooLongResponse": { |
| 7563 | + "properties": { |
| 7564 | + "status_code": { |
| 7565 | + "type": "integer", |
| 7566 | + "title": "Status Code" |
| 7567 | + }, |
| 7568 | + "detail": { |
| 7569 | + "$ref": "#/components/schemas/DetailModel" |
| 7570 | + } |
| 7571 | + }, |
| 7572 | + "type": "object", |
| 7573 | + "required": [ |
| 7574 | + "status_code", |
| 7575 | + "detail" |
| 7576 | + ], |
| 7577 | + "title": "PromptTooLongResponse", |
| 7578 | + "description": "413 Payload Too Large - Prompt is too long.", |
| 7579 | + "examples": [ |
| 7580 | + { |
| 7581 | + "detail": { |
| 7582 | + "cause": "The prompt exceeds the maximum allowed length.", |
| 7583 | + "response": "Prompt is too long" |
| 7584 | + }, |
| 7585 | + "label": "prompt too long" |
| 7586 | + } |
| 7587 | + ] |
| 7588 | + }, |
7522 | 7589 | "ProviderHealthStatus": { |
7523 | 7590 | "properties": { |
7524 | 7591 | "provider_id": { |
|
7967 | 8034 | "truncated": { |
7968 | 8035 | "type": "boolean", |
7969 | 8036 | "title": "Truncated", |
7970 | | - "description": "Whether conversation history was truncated", |
| 8037 | + "description": "Deprecated:Whether conversation history was truncated", |
7971 | 8038 | "default": false, |
7972 | 8039 | "examples": [ |
7973 | 8040 | false, |
|
9329 | 9396 | }, |
9330 | 9397 | { |
9331 | 9398 | "detail": { |
9332 | | - "cause": "Invalid attatchment type: must be one of ['text/plain', 'application/json', 'application/yaml', 'application/xml']", |
| 9399 | + "cause": "Invalid attachment type: must be one of ['text/plain', 'application/json', 'application/yaml', 'application/xml']", |
9333 | 9400 | "response": "Invalid attribute value" |
9334 | 9401 | }, |
9335 | 9402 | "label": "invalid value" |
|
0 commit comments