Getting Started
Request Early Access and Set Up Memory
To use Memory:
- In the platform, select the organization for which you want to enable Memory, then open Agent Memory (
/memory). - Click Request Early Access. The page confirms that your request was received. An AI Engineering product manager will email you to arrange a 15-minute call about your agents and memory needs and grant your organization access to Agent Memory. You can continue using the rest of the app and contact the team through the in-app chat.
- After access is enabled, open Overview. If prompted, review the Early Access Agreement (
/memory/agreement), select the acceptance checkbox, and click Accept Agreement. You must accept the current agreement before accessing the Memory pages. - Prepare the prerequisites, then install the appropriate NuGet package or Python package.
- Configure the SDK with your backend URL and SDK API key, then choose an integration mode.
- Open Memories or Conversations to inspect the results. Use Overview to review storage usage and integration details.
Prerequisites
The .NET and Python integrations require the same backend URL, SDK API key, and consistent user and agent identifiers. Prepare these values before configuring either SDK.
| Value | .NET | Python | Purpose |
|---|---|---|---|
| Backend URL | BackendBaseUrl | backend_base_url | The base URL of the memory-api service. The SDK cannot reach the memory backend without it. |
| SDK API key | SdkApiKey | sdk_api_key | Authenticates SDK requests to memory-api. |
| User identifier | UserId | user_id | Identifies the user whose memories are stored or recalled. |
| Agent identifier | AgentId | agent_id | Scopes memories to an agent for that user. |
Find Your Backend URL
The Memory API base URL is https://memory-api.observability.progress.com. You can also find it on Overview (/memory/overview) under Developer / Integrate.
Create an SDK API Key
Open SDK Keys (/memory/api-keys), or click Manage SDK Keys on Overview. Click + SDK Key to create a key. See Creating an SDK Key for the full procedure.
The token is shown only once—copy it immediately. Development keys follow the format pmem_d_*. Use the separate Revoke or Delete actions to invalidate a key or remove it.
Choose User and Agent Identifiers
Define user and agent identifiers in your application's identity model. Use the same values when storing and recalling memories so they remain scoped consistently across requests and conversation turns.
For language-specific configuration and installation instructions, see the core .NET Memory client or the core Python Memory client.
Platform Guide
After access is enabled, the Agent Memory navigation contains the following pages, in this order:
| Page | Route | Purpose |
|---|---|---|
| Overview | /memory/overview | Review storage usage and SDK integration details. |
| Memories | /memory/memories | Search, filter, inspect, and delete extracted memories. |
| Conversations | /memory/conversations | Browse stored conversations and their extracted memories. |
| Advanced Settings | /memory/advanced-settings | Configure the search confidence threshold and memory categories. |
| SDK Keys | /memory/api-keys | Create, review, revoke, and delete SDK keys. |
Memory and conversation detail pages open from the corresponding lists. The Early Access Agreement is a separate page that appears when acceptance is required, not a sidebar item.
Overview
The Overview page displays integration details and storage usage.
Under Developer / Integrate, copy the Memory API URL for your SDK configuration and use Manage SDK Keys to create or manage your keys. The SDK API Key field displays a placeholder, not your actual key.
The Memory Usage card shows how much storage the index uses, along with the number of conversation resources, indexed text blocks, and data fields.
The Latest Conversations card lists recent conversations by title or ID and update time. Select a conversation to view its details, or use the link to open the full list. The Processing Queue card shows how many items have been processed, are pending, or have errors.
Memories
The Memories page lists extracted memories across conversations. Each row includes the following information:
| Column | Description |
|---|---|
| Memory | The extracted memory text and a link to its details |
| Conversation | A link to the source conversation |
| MemoryId | The memory identifier |
| Category | The category assigned during extraction, for example, FACT, PREFERENCE, or MEMORY |
| Status | active or outdated |
| Last Updated | The date the memory was last modified |
| Score | The search relevance score, when available |
Use the filter bar to narrow results by agent, user, status, category, or search query. Use the pagination controls above and below the grid to navigate the results.
To delete memories, select their checkboxes and click Delete selected. To delete every memory that matches the current filters, including results on other pages, click Delete all matching filters. Review and confirm the deletion before proceeding.
Memory Details
Click the memory text to open its detail page. The application supports routes such as /memory/memories/:conversationId/:memoryId and /memory/memories/:factId.
The detail page displays the following information and actions:
- Conversation Context shows the source conversation metadata and the message that generated the memory, when available. Click View in Conversation to open the conversation.
- Memory shows the extracted text, category, status, and available Last Updated, Reference Date, and Score values.
- For an outdated memory with a replacement, Superseded by provides a View newer memory link.
- Other Memories from the Same Message lists additional memories extracted from the source message, when available.
- Delete removes the memory after confirmation without deleting the original conversation.
Conversations
The Conversations page lists stored conversations. Each row includes the following information:
| Column | Description |
|---|---|
| Conversation | The conversation title or ID and a link to its details |
| Conversation ID | The full conversation identifier |
| Agent | The associated agent labels |
| User | The associated user labels |
| Created | The creation time |
| Updated | The last update time |
Filter the list by agent, user, or search query. Use the pagination controls above and below the grid to navigate the results.
Use a row's Delete button to delete one conversation. To delete several conversations, select their checkboxes and click Delete selected. Delete all matching filters includes matching conversations on other pages.
Deleting a conversation permanently removes the conversation and all its associated memories. Review the confirmation dialog before proceeding.
Conversation Details
Click a conversation link to open /memory/conversations/:id. The page shows the conversation ID, agent and user labels, and available creation and modification times.
The Conversation panel combines messages from all conversation fields into one chat history. The Memories panel initially shows all memories from that conversation.
Click a message to show its extracted memories. Messages with extracted memories have an indicator. Click a memory to open Memory Details, where you can inspect or delete it. Drag the divider to resize the two panels.
Advanced Settings
The Advanced Settings page configures memory search and category preferences.
Search Confidence Threshold
Search Confidence Threshold controls the minimum semantic similarity score required for a memory to appear in search results. The Threshold (0.0 – 1.0) numeric input accepts values from 0 to 1:
- Higher values, for example,
0.9, return fewer, more relevant memories. - Lower values, for example,
0.5, return more results but may include less relevant matches.
The Current value shows the saved threshold. To change it, enter a value, click Save Threshold, and then click Save in the Confirm Threshold Change dialog. Click Undo to discard an unsaved change.
Memory Categories
The model assigns categories when it extracts memories and can create new categories when none of the existing categories fit. The Memory Categories list provides preferred categories; it does not restrict extraction to that list.
To update the list, use the following controls:
- Enter a category name in New category and click Add.
- To remove an entry, click its remove button.
- Click Save Categories to apply your changes, or Undo to discard unsaved changes.
If the list is empty, the page displays No categories defined — any value is accepted.
SDK Keys
The SDK Keys page manages keys that authenticate application and SDK requests through the X-Api-Key header.
The list displays Name, Key, Date Created, Last Used, Expires, and Status, with an Actions menu for each key. The key value in the list is masked.
Creating an SDK Key
To create a key, complete the following steps:
- Click SDK Key.
- In Create SDK Key, enter a Name.
- Choose an Expires option: 30 days, 60 days, 90 days, 180 days, 365 days, or Never.
- Click Create.
- In SDK Key Created, click Copy to Clipboard and store the key securely. The full key is shown only once.
- Click Done.
Revoking or Deleting an SDK Key
Open the key's Actions menu and choose the appropriate action:
- Revoke invalidates a key while retaining its entry in the list.
- Delete permanently removes the key.
Confirm the selected action in the dialog. A revoked key has only the Delete action.