Use case · Multi-tenant SaaS
Memory for a multi-tenant SaaS agent
A SaaS product may serve thousands of organizations, users, projects, and agents from one application. Durable memory is useful only when those identities remain separate and lifecycle operations remain predictable. Aether supplies tenant, partition, and entity scopes for storage and retrieval. Your application still decides which authenticated principal may select each scope and must enforce that mapping on every server-side call.
01Write the boundary model before the first memory
Map each application concept to one durable boundary. The Aether API key identifies a tenant. An optional partition can divide work inside that tenant, and a Memory handle carries an entity ID. A common mapping uses a partition for a customer workspace and an entity for a user, project, or agent within it, but the correct shape depends on who shares context and who must never see it.
Keep the mapping explicit in code and design documentation. If a user belongs to two workspaces, the same human may need distinct memory scopes because the surrounding business context and permissions differ. Stable opaque identifiers are safer than email addresses or display names, which can change and may expose personal information in logs.
03Design creation, movement, and deletion together
Tenant systems change. Users leave, projects move, workspaces merge, and customers request exports or deletion. Decide whether memory follows the person, remains with the workspace, or is copied only after an explicit workflow. Avoid changing a scope identifier in place without a migration plan, because the old and new identities can otherwise create partial histories.
Keep enough application metadata to locate the relevant memory scope during offboarding, but do not rely on a display label as the only index. Document what deletion means for source documents and derived indexes, how retries are handled, and how completion is verified. If legal or contractual retention controls apply, they belong in the product’s broader data-governance design.
04Choose capacity from published plan units
Estimate documents, stored vectors, monthly queries, storage, and named partitions from a representative tenant rather than a best-case demo. The Aether pricing page publishes those units for each plan and lists overage rates where they exist. Enterprise quantities are contract-specific. Keep the estimate tied to the same plan data the product uses so marketing copy and the purchasing decision do not drift.
Compare current plan names, monthly and annual rates, capacity, and published overage units.
Review scope-aware filters for direct document queries.
05Verify isolation with realistic tenants
Use two or more representative workspaces in automated tests. Store similar facts in each, recall them through the application’s real authentication path, and confirm the results never cross. Add membership changes, deleted users, partition limits, retries, and empty histories. A direct SDK test is useful, but an end-to-end test through the product boundary is what verifies the scope mapping users actually depend on.
Continue exploring
Apply the same boundary model to customer support.
Compare managed, self-assembled, runtime, and platform options.
Test two tenants before scaling to thousands
Map the authenticated workspace to a partition and entity, then prove both useful recall and failed cross-scope access.