{"status":"ok","message":"Pharma CI RAG Pipeline API","version":"1.1.0","retrieval":{"default_retriever":"hybrid","retrievers":["hybrid","bm25","vector"],"retrieval_modes":["search","filter_only"],"citation_request_schema":{"query":"required — retrieval query text","original_query":"optional — raw user query for synthesis","retriever":"optional — default hybrid; one of ['bm25', 'hybrid', 'vector']","retrieval_mode":"optional — default search; one of ['filter_only', 'search']","top_k":"optional — default 10; chunks sent to Gemini for synthesis (search mode)","return_k":"optional — default DEFAULT_RETURN_K (25); chunks returned in API response cards (search mode, >= top_k)","retrieve_k":"optional — candidate pool size before post-filter (search mode)","citation_chunk_size":"optional — default 512","filters":{"description":"optional nested filter object (top-level filter fields also accepted)","fields":{"retrieval_mode":"search | filter_only","missing_metadata_policy":"include (default) | exclude","source":"string or list — news, library, conference","moa":"string or list","phase":"string or list","company":"string or list — substring match","drugname":"string or list — substring match","typeOfNews":"string or list — e.g. Competitor News, Access News","importance":"string or list — High, Medium, Low (stored as importance_label)","news_focus":"string or list — Regulatory, Commercial, Clinical (matches any tag on chunk; supports array or comma-separated News_focus)","tags":"string or list — user-defined document tags (e.g. ATS 2026, company/drug labels); OR match any tag on chunk; supports array or comma-separated values","from_date":"YYYY-MM-DD","to_date":"YYYY-MM-DD","strict":"bool — default true; enables date window filtering","date_field":"optional — default sourcedate"}},"response_fields":{"answer":"synthesized response","chunks":"source file references","citations":"cited chunk objects","retrieval_method":"hybrid | bm25 | vector | filter_only","rag_metadata_filter":"filter diagnostics (applied, counts, active filters)","rag_time_filter":"legacy date filter diagnostics","rag_source_filter":"legacy source filter diagnostics","rag_chunk_counts":"retrieval pipeline counts (final_used_for_answer, final_returned)"}}},"endpoints":["GET /health","GET /debug/bm25","GET /documents","POST /retrieve","POST /retrieve-with-citations","POST /document-search","DELETE /delete","POST /cleanup"]}