{
  "description": "API for ingesting data, searching documents, and interacting with AI agents.",
  "endpoints": {
    "/agents": "GET - Get available AI agents",
    "/agents/<agent_id>": "GET - Get specific agent details",
    "/agents/<agent_id>/configure": "POST - Configure agent parameters",
    "/agents/<agent_id>/invoke": "POST - Invoke a specific agent",
    "/agents/<agent_id>/status": "GET - Get agent status and health",
    "/charts": "POST - Charts only - data analysis and chart generation",
    "/chat/message": "POST - Chat with AI agents (orchestrator routing)",
    "/chat/stream": "POST - Stream chat responses via SSE",
    "/collection/stats": "GET - Get collection statistics",
    "/generate": "POST - Direct LLM generation or summarization with optional context",
    "/ingest/file": "POST - Ingest a file by path (JSON: file_path, file_name, source)",
    "/ingest/file-by-path": "POST - Ingest a file by its existing path on disk",
    "/ingest/text": "POST - Ingest text directly",
    "/ingest/upload": "POST - Upload and ingest a file (multipart form: file, source)",
    "/langgraph/invoke": "POST - Invoke the LangGraph orchestrator with a query",
    "/langgraph/stream": "POST - Stream responses from the LangGraph orchestrator via SSE",
    "/rag": "POST - RAG only - document retrieval and Q&A",
    "/search": "POST - Search for similar documents",
    "/vector-store/delete": "POST - Delete documents from vector store",
    "/vector-store/update-metadata": "POST - Update document metadata in vector store",
    "/voice/languages": "GET - Get list of supported languages for Whisper",
    "/voice/status": "GET - Get status of voice/speech services",
    "/voice/transcribe": "POST - Transcribe audio to text using Whisper",
    "/voice/transcribe-base64": "POST - Transcribe base64 encoded audio to text using Whisper"
  },
  "service": "AI Data Ingestion Service",
  "status": "running",
  "supported_file_types": [
    "txt",
    "csv",
    "docx",
    "pdf",
    "xlsx"
  ],
  "version": "1.0.0"
}
