isInference: true) and down-weighted in search until confirmed.
These two endpoints let you build a review experience on top of that queue: list the
inferred memories awaiting review, then approve, decline, or undo a
decision on each one.
These endpoints are scoped to a single container tag
(space), under
/v3/container-tags/{containerTag}.How review affects ranking
While a memory is unreviewed and inferred it is down-weighted in search, so the engine’s guesses rank below facts you stated explicitly. Reviewing it resolves that either way:
A reviewed memory is stamped with
reviewStatus in its metadata so it drops out of the
review queue (declined memories also leave search, since they’re forgotten). Undo
clears that stamp — and un-forgets a declined memory — bringing it back.
List Inferred Memories
Return the inferred memories for a container tag that are still awaiting review (the review queue). Reviewed memories are excluded.- fetch
- cURL
Path parameters
Response
The queue returns up to 50 memories, ordered by
parentCount descending (most
strongly supported first), then by createdAt descending. It excludes anything that
is forgotten, expired, or already reviewed. An unknown or empty container tag returns
{ "memories": [], "total": 0 }.Review an Inferred Memory
Record a decision on a single inferred memory.- fetch
- cURL
Path parameters
Body parameters
Action semantics:
approve— Promote the memory: clearsisInference, so it ranks like a stated fact instead of a down-weighted guess. StampsreviewStatus: "approved".decline— Reject the suggestion: the memory is forgotten (isForgotten: true) and stampedreviewStatus: "declined", so it leaves both search and the review queue.undo— Revert a priorapprove/declineback to the unreviewed inferred state: restoresisInference: true, un-forgets the memory (isForgotten: false), and clears the review stamp, so it returns to the queue.
Response
Errors
Building a review experience
The endpoints are designed for an optimistic, one-at-a-time review UI (swipe to keep / decline, with undo). A typical client fetches the queue once, then pops each card off locally as the user decides —undo re-adds it.
React Query hooks (TypeScript)
React Query hooks (TypeScript)
There is no separate “skip” action. A swipe-to-skip is purely client-side — don’t send
a request and the memory simply stays in the queue for a later session.
Next Steps
- Graph Memory — How inferred (
derive) memories are created - Memory Operations — Create, forget, and update memories
- Search — How inferred memories are ranked in results