Docs Memory API

Projects, records, memories, identities, audiences and traits

Six nouns describe everything the API does. Learn them once and every endpoint reads naturally.

#Project

The unit of isolation, billing and limits. A key belongs to one project; memory never crosses projects.

#Record

One thing that happened: a message, an email, a ticket update, a document section. It has a sourceId you choose, text, occurredAt, and optional title, author, visibility and metadata. Re-sending the same sourceId replaces the record — a correction. A new sourceId adds a new event.

#Memory

A statement extracted from one or more records — “the renewal starts on 1 November”. Each memory has a state (current or superseded), a validity interval (validFrom, validTo) and links to its sources. When a newer record contradicts a current memory, the old one is closed at that time and a new current memory starts.

#Identity

Your id for a person, customer or service. Identities author records and view memory. Optional traits (name, team, role) help extraction resolve “I” and “you” in text, and are returned in sources.

#Audience

A named group of identities — a team, an account, a matter. A record visible to audience:account-team can be recalled by members only.

#Visibility

ValueWho can recall it
project (default)Every viewer in the project
audience:{slug}Members of that audience
user:{identityId}That identity only

#Time

Two times matter: occurredAt (when it was true, which you send) and receivedAt (when Auld got it). Supersession follows occurredAt, so a late-arriving older email cannot overwrite a newer fact. Recall with asOf returns what was current at that moment.