Security
How OraMemory protects your AI memory data.
Local-first option
The Free tier never touches our servers. Memories live in a SQLite file on your machine. We can't see them, leak them, or be subpoenaed for them.
Transport & at-rest encryption
- TLS 1.3 for every managed-API request.
- AES-256 at rest for managed databases (Postgres + object storage).
- BYOK (bring your own key) on Pro and Enterprise via AWS KMS — OraMemory servers never see your plaintext data at rest.
API keys
Stored as SHA-256 hashes. The plaintext is displayed exactly once, at creation. Lost keys can only be rotated, never recovered.
Every key carries an environment tag (om_live_ or om_test_) and a per-project rate limit. Revoke any key from the dashboard — takes effect within seconds.
Audit trail
Every add, update, and delete is appended to memory_ops with:
- API key ID (hashed)
- Timestamp
- Agent / user / session context
- HTTP status + duration
- (Optional) content hash
Available via the dashboard Recent activity tab and via GET /v1/log (coming soon).
Data isolation
Every query is scoped to a project_id. Cross-project access is impossible without a valid API key for the target project.
Versioning
Every content change snapshots a new row in memory_versions. Your memories are never silently rewritten. Use GET /v1/memory/<id>/history to inspect.
Backups
Managed Postgres snapshotted nightly with 7 daily / 4 weekly / 3 monthly retention. Object storage is encrypted server-side.
Compliance roadmap
- SOC 2 Type II — in progress, target end of 2026.
- HIPAA BAA — available on Enterprise.
- GDPR — yes. Data-residency on Enterprise.
Reporting a vulnerability
Email security@oramemory.com. We respond within 48 hours and credit responsible researchers.