Skip to main content

searchDocuments()

searchDocuments(request: SearchRequest): Promise<SearchResponse>

Defined in: packages/core/src/document-search/index.ts:397

Search documents using ClickHouse full-text search

Performs semantic search across indexed documents with support for filtering by sources, entities, and file hashes. Results include relevance scoring.

Parameters

ParameterTypeDescription
requestSearchRequestSearch request parameters

Returns

Promise<SearchResponse>

Promise resolving to SearchResponse:

  • results - Array of SearchResult objects with document chunks
  • total - Total number of matching documents
  • query - Original query string
  • sources - Sources that were searched
  • limit - Limit that was applied
  • offset - Offset that was applied
  • tookMs - Query execution time in milliseconds

Throws

401 - Not authenticated

Throws

422 - Validation error (invalid parameters)

Example

import { searchDocuments } from "@cpod/sdk";

// Basic search
const results = await searchDocuments({
query: "quarterly revenue",
limit: 20,
});

console.log(`Found ${results.total} documents in ${results.tookMs}ms`);

// Search with filters
const filtered = await searchDocuments({
query: "security policy",
sources: ["policies", "compliance"],
entities: ["GDPR"],
sortBy: "date",
limit: 50,
});

for (const result of filtered.results) {
console.log(`${result.sourceFilename} (score: ${result.relevanceScore})`);
console.log(` Entities: ${result.entities?.join(", ")}`);
}