Skip to main content

Introduction

Memory lets Bland agents remember people across conversations, including calls, SMS, and other channels, so each interaction feels continuous and personalized. When someone reaches out again, your agent already has context: who they are, what was discussed, and what still needs to happen. Key capabilities:

Automatic contacts

Bland creates and links contacts by phone number, email, or external ID with no manual setup.

Context that sticks

Rolling summaries, structured facts, and open action items are maintained per contact.

Cross-channel

The same contact is recognized across voice and SMS, with one coherent history.

How it works

  1. Turn on memory in your agent’s Settings tab in Agent builder. A new agent starts with memory on.
  2. Bland creates contacts automatically when someone interacts, matched by phone number, email, or external ID.
  3. For each contact, Bland maintains:
    • Facts: structured key-value information (name, preferences, account details, etc.)
    • Summary: a rolling plain-text overview of past conversations, used for agent context
    • Open items: action items or follow-ups (e.g. “Follow up on order delay”, “Call back Friday”)
    • Entities: structured objects tracked across conversations, like orders, appointments, or tickets
    • Recent messages: a sliding window of the latest exchanges across all channels
Memory belongs to the contact, not to any one conversation. In the memory API, a contact’s memory is scoped to a persona or an agent phone number.

Turn on memory for an agent

  1. Open your agent in Agent builder and go to the Settings tab.
  2. Turn memory on. A new agent opens with memory on, so check it before the agent takes a real call.
  3. Define what the agent should remember in the memory schema section that appears below the toggle.
  4. Save the agent, then publish it to production.
Conversations with the agent read and update the contact’s facts, summary, open items, and recent messages. Turning memory off later stops further extraction but does not delete what was already written.
The Enable or Disable Memory endpoint takes a legacy pathway or persona version, not an agent. For agents, use the Settings tab.

Viewing memory in conversations and contacts

To see what one conversation added to a contact’s memory, open it in Conversations and expand the Memory section in the right-hand column. It shows only what that conversation contributed. To see everything the agent remembers about a person, open the Contacts tab on Conversations and click the contact. Their profile includes a Memory section. Contacts is organization-wide, even when you open it inside an agent. Memory is cross-channel: the same contact’s context is shared across voice and SMS. Hand-offs between channels, for example a call followed by a follow-up SMS, stay coherent without any extra work on your end.

How memory evolves over time

Here is an example showing a contact and their memory building across two interactions with a support agent. First call: contact reaches out about a delayed order When the call comes in, Bland matches the phone number to a contact (creating one if it does not exist yet):
Contact record
By the end of the call, the memory record for this contact looks like this:
Memory after first call
Follow-up SMS: customer checks in the next day Bland recognizes the same contact by phone number. The agent already knows about the order and the open follow-up. After the SMS conversation ends:
Memory after follow-up SMS
The open item was resolved, the entity’s status updated, a new fact was added, and the summary refreshed. On the next interaction, the agent picks up exactly where things left off.

API and programmatic access

For custom flows or reading and writing memory programmatically: For standard use, you do not need to manage any IDs directly. Turn on memory for your agent and Bland handles the rest.
Docs for agents: llms.txt