memory.search
Retrieve semantically relevant memories from a workspace, ranked by a multi-factor scoring model.
POST /v1/memory/search
Request parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| workspace_id | string | REQ | Workspace to search within. |
| query | string | REQ | Natural language query. Max 1,000 chars. |
| top_k | integer | Number of results to return. Default 5, max 50. | |
| min_score | float | Minimum composite score threshold (0–1). Default 0.0. | |
| tags | string[] | Filter to memories that have all of the specified tags. | |
| include_decayed | boolean | Include expired temporal memories. Default false. |
Scoring model
The composite score S is computed as a weighted sum:
S = 0.55 × similarity
+ 0.20 × recency
+ 0.15 × importance
+ 0.10 × frequency
× decay_multiplier
The decay_multiplier reduces scores for old low-importance memories and zeroes out expired temporal ones. High-importance memories (≥9) decay very slowly over 1,000 days.