Skip to main content
POST
/
api
/
v1
/
search
Search
curl --request POST \
  --url https://api.cognee.ai/api/v1/search \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "search_type": "GRAPH_COMPLETION",
  "query": "What is Cognee?",
  "top_k": 10
}
'
[
  {
    "search_result": "<unknown>",
    "dataset_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "dataset_name": "<string>"
  }
]

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
searchType
enum<string>
default:GRAPH_COMPLETION

Retrieval strategy. Common values: GRAPH_COMPLETION (default, graph context + LLM answer), RAG_COMPLETION, CHUNKS, SUMMARIES, TEMPORAL, FEELING_LUCKY (auto-select), AGENTIC_COMPLETION (enables skills/tools/max_iter).

Available options:
SUMMARIES,
CHUNKS,
RAG_COMPLETION,
HYBRID_COMPLETION,
TRIPLET_COMPLETION,
GRAPH_COMPLETION,
GRAPH_COMPLETION_DECOMPOSITION,
GRAPH_SUMMARY_COMPLETION,
CYPHER,
NATURAL_LANGUAGE,
GRAPH_COMPLETION_COT,
GRAPH_COMPLETION_CONTEXT_EXTENSION,
FEELING_LUCKY,
TEMPORAL,
CODING_RULES,
CHUNKS_LEXICAL,
AGENTIC_COMPLETION
datasets
string[] | null

Dataset names to search. Names only resolve to datasets owned by the caller; use dataset_ids for datasets shared with you.

Example:
["default_dataset"]
datasetIds
string<uuid>[] | null

Dataset UUIDs to search (required for datasets shared with you). When provided, the datasets name list is ignored.

Example:

null

query
string
default:What is in the document?
systemPrompt
string | null
default:Answer the question using the provided context. Be as brief as possible.
nodeName
string[] | null

Restrict results to nodes in these node_sets (the node_set values used during add/remember).

Example:

null

topK
integer | null
default:15
onlyContext
boolean
default:false
verbose
boolean
default:false

Return detailed result information including the graph representation when available.

skills
string[] | null

Skill names to load into the agentic retriever. Requires search_type=AGENTIC_COMPLETION; leave null otherwise.

Example:

null

tools
string[] | null

Whitelist of tool names available to the agentic retriever. Requires search_type=AGENTIC_COMPLETION.

Example:

null

maxIter
integer | null

Maximum agentic tool-call iterations before forcing a final answer (positive integer; AGENTIC_COMPLETION only).

Example:

null

includeReferences
boolean
default:false

Attach source references to completion-type results.

Response

Successful Response

search_result
any
required
dataset_id
string<uuid> | null
required
dataset_name
string | null
required