Search
Semantic search without answer generation. See the Search guide.
| Method | Path |
|---|---|
| POST | /api/v1/search |
Search
Section titled “Search”POST /api/v1/search
Hybrid semantic search; returns ranked passages without generating an answer.
From the API schema: Hybrid semantic search over the corpus (RAGFlow retrieval). Results are deduplicated per node and point to graph nodes (
nodeIndex).
Auth: API key (X-API-Key) or user session
Request body
{ "case": "cordis", "query": "perovskite solar cells", "topK": 5}curl -X POST "https://vol.example.com/api/v1/search" \ -H "X-API-Key: $VOL_API_KEY" \ -H "Content-Type: application/json" \ -d '{"case":"cordis","query":"perovskite solar cells","topK":5}'import { VolClient } from "@vol/sdk";
const vol = new VolClient({ baseUrl: "https://vol.example.com/api", apiKey: process.env.VOL_API_KEY });await vol.search({ case: "cordis", query: "perovskite solar cells", topK: 5 });import os, requests
r = requests.post( "https://vol.example.com/api/v1/search", headers={"X-API-Key": os.environ["VOL_API_KEY"]}, json={ "case": "cordis", "query": "perovskite solar cells", "topK": 5 }, timeout=60,)r.raise_for_status()print(r.json())Response 200
{ "results": [ { "nodeIndex": 412, "nodeId": "paper_412", "title": "Graph-augmented retrieval for scientific QA", "snippet": "We combine a citation graph with dense retrieval…", "score": 0.87, "docName": "paper_412.pdf", "chunkId": "8c1e…" } ]}interface SearchRequest { case: CaseId; query: string; topK?: number }
type CaseId = "papers" | "cordis" | "patents" | "trials";
interface SearchResponse { results: Citation[] }
interface Citation { nodeIndex: number; nodeId: string; title: string; snippet: string; score: number; docName?: string; chunkId?: string;}