Skip to main content
POST

Authorizations

Authorization
string
header
required

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

Body

application/json

Store one fact. It is embedded on write, so it becomes searchable by meaning rather than by keyword.

text
string
required

What to remember. Max 8,192 bytes of UTF-8. Write one fact per call: a paragraph holding five unrelated facts embeds as an average of all five and is retrieved well by none of them.

Example:

"Prefers to be contacted in the morning, and by WhatsApp rather than email."

scope
enum<string>

Which namespace a memory belongs to. Scopes are isolated: a search in one never returns a memory from another.

  • project: shared by the whole project. What the agent knows in general.
  • contact: what the agent knows about one person, across every conversation with them.
  • conversation: what the agent knows about one inbox thread.

Defaults to project everywhere. contact and conversation require the matching id.

Available options:
project,
contact,
conversation
contactId
string

Required when scope is contact.

conversationId
string

Required when scope is conversation.

metadata
object

Arbitrary string tags stored alongside the fact and returned with it. Keys max 64 chars, values max 512, whole object max 2,048 bytes. Not searchable — search matches text only.

ttlSeconds
integer

Delete the fact after this many seconds. 60 to 63,072,000 (2 years). Omit to keep it until deleted.

Required range: 60 <= x <= 63072000

Response

Fact stored.

memory
object
required

A stored fact, as returned when it is created.