Skip to main content

Search

Perform semantic search across your knowledge base.

POST /api/v1/search

Request Body

FieldTypeRequiredDefaultDescription
querystringYes-Search query (1-1000 characters)
limitintegerNo10Max results (1-100)
min_scorefloatNo0.0Minimum similarity score (0-1)
document_idsstring[]NonullFilter to specific document IDs

Example Request

curl -X POST https://api.inherent.systems/api/v1/search \
-H "Authorization: Bearer $INHERENT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"query": "How do I authenticate API requests?",
"limit": 5,
"min_score": 0.7
}'

Response

{
"results": [
{
"chunk_id": "chunk_abc123",
"document_id": "doc_xyz789",
"document_name": "API Authentication Guide",
"content": "All API requests require authentication using a Bearer token. Include your API key in the Authorization header...",
"score": 0.94,
"metadata": {
"category": "documentation"
}
},
{
"chunk_id": "chunk_def456",
"document_id": "doc_xyz789",
"document_name": "API Authentication Guide",
"content": "To create an API key, navigate to Settings > API Keys in the dashboard...",
"score": 0.87,
"metadata": {
"category": "documentation"
}
}
],
"query": "How do I authenticate API requests?",
"total_results": 2,
"processing_time_ms": 45.2
}

Filtering by Document

Filter search results to specific documents using the document_ids parameter:

{
"query": "authentication",
"document_ids": ["doc_xyz789", "doc_abc123"]
}
Planned Feature

Advanced metadata filtering with operators ($eq, $gt, $in, etc.) is planned for a future release. Currently, you can filter by document_ids only.

Response Fields

FieldTypeDescription
resultsarrayMatching search results
results[].chunk_idstringChunk ID
results[].document_idstringParent document ID
results[].document_namestringParent document name
results[].contentstringChunk text content
results[].scorefloatSimilarity score (0-1)
results[].metadataobjectDocument metadata (may be null)
querystringThe original search query
total_resultsintegerTotal number of results returned
processing_time_msfloatQuery processing time in milliseconds
Coming Soon -- Hybrid Search

Combining semantic and keyword search via a hybrid parameter is planned for a future release.

Coming Soon -- Point-in-Time Queries

Querying your knowledge base as it existed at a specific time via an as_of parameter is planned for a future release.

Errors

CodeDescription
400Invalid query or parameters
401Missing or invalid API key
422Request validation failed
429Rate limit exceeded