Memory API for agents

Long-term memoryfor AI agents thatnever forget a user

Give every agent a memory it keeps across sessions, users and deploys. Write with one call, recall in under 40 ms, and decide what fades and what stays.

HaldenQuorraTallylineOspreyWavefoldNorthstarBrightseatKestrelHaldenQuorraTallylineOspreyWavefoldNorthstarBrightseatKestrel
Hold to write
wrote “Prefers aisle seats” · mem_8f2k · 41 ms

Production memory without the production plumbing.

Context that survives every session 

Why Plivel
01 / 04
recall(user="dana_k", q=")
MemoryRelevance
Prefers aisle seats, never exit rows0.00
pinned
Flies TAP from Newark, Star Alliance Gold0.00
3 recalls
Asked for a vegetarian meal in May0.00
decaying
3 of 12,408 memories0 ms

The right memory, before the model starts talking.

Hybrid vector and graph search runs next to your agent in 14 regions. Voice agents get context inside the first breath, not after an awkward pause.

0.000.250.500.751.00DAY 0DAY 30DAY 60DAY 90ARCHIVE THRESHOLDARCHIVED · DAY 21
Pinned · penicillin allergyPreference · aisle seatOne-off · parked at SFO lot C

Memories fade unless they earn their keep.

Every memory carries a relevance score that decays over time and climbs each time it is recalled. Pin what must never fade, like an allergy, and let one-off chatter archive itself.

agent.py
1
2
3
4
5
written mem_8f2k · merged with 2 · 41 ms

Bring your agent. Keep your stack.

Python, TypeScript or plain HTTP. No new framework, no schema to design first. Write what the user said, recall what matters, and Plivel handles embedding, dedupe and merge.

TRACE tr_91ce · recall(dana_k)0ms
auth + tenant
1.2 ms
embed query
6.1 ms
vector search · 14 shards
14.8 ms
graph expand · 2 hops
7.3 ms
rerank · top 40 → 3
6.0 ms
compose context
2.6 ms
REGION FRA-2 · 14 SHARDSEXPORT → OTEL

See exactly why your agent remembered that.

Each recall ships a span-level trace: embed, search, graph expand, rerank. Export to OpenTelemetry, or debug in the Plivel console with the prompt it fed the model.

Life of a memory

One sentence, from the first word to cold storage.

01
Write
Your agent sends what the user said. One call, no schema.
02
Embed
Plivel turns it into a 1,536-dimension vector and strips anything marked private.
03
Link
The memory joins the user's graph, next to the facts it relates to.
04
Recall
Weeks later, a new question pulls it back in 38 ms.
05
Fade
Unused, its relevance decays. Every recall tops it back up.
06
Archive
Below the threshold it moves to cold storage. Still exportable, never in the prompt.
Star Alliance GoldLives in PortoVegetarian (May)Travels with a celloFlies from NewarkPrefers emailwrite(user="dana_k")“▍[0.021, -0.448, 0.137, … 1,536 dims] · PII: nonemem_8f2k · relevance 0.94day 0COLD STORAGE · 12,406 archived · exportable
01
Global by default

Memory that lives next to your agent 

Each user's memory shard is placed in the region closest to where your agent runs, and pinned there if the law says it has to stay. Failover is automatic.

0
Regions
0 ms
p50 recall
0.00%
Uptime SLA
MEMORY SHARDS · 14 REGIONS
YOUR AGENTFRA-2 · 25 ms
FRANKFURT · P50 RECALL 25 MSDATA RESIDENCY: EU · US · APAC PINNABLE
Security

Private by default, erasable on request

AES-256 AT REST · PER-TENANT KEYS · TLS 1.3
SOC 2 Type II, GDPR, HIPAA
Audited yearly. Reports and our BAA are one click away in the dashboard.
Residency you can pin
Keep EU users' memories in Frankfurt or Stockholm, and prove it with region-locked keys.
Tenant isolation
Every customer gets separate encryption keys and shards. No shared indexes, ever.
Erase with a receipt
One call deletes a user everywhere within 60 seconds and returns a signed receipt.
Benchmarks

Faster, cheaper, and it remembers the right thing 

Measured September 2026 on 10M synthetic memories across 40k users, same embedding model for every setup, recall from fra-2. Scripts and raw numbers are in the docs so you can rerun them.

p95 recall latency at 10M memories · lower is better
Plivel
0 ms
Vector DB + Postgres glue
0 ms
Re-summarise history with an LLM
0 ms
Transparent pricing

Price it on your real workload

Move the sliders to match your agent. You pay for writes, recalls and storage, and nothing for seats, agents or users.

Estimated monthly cost
$301PRO PLAN
$0.019 per active user · a DIY vector-DB setup would run about $2,456
Writes$228
Recalls$23
Storage$1.43
Plan$49
2,282,256 memories stored5,705,640 recalls / mo
Regions

Writes $0.60 per 1k incl. embedding · Recalls $4 per 1M · Storage $0.25 per GB-month (~400k memories) · Extra regions +15%

Documentation

Docs written by the people who answer the pager 

Every endpoint has a runnable example, every guide ends with a working agent. Press ⌘K and try “decay”.

Questions

Asked on every sales call

No. A vector store is one part. Plivel adds per-user isolation, a memory graph, decay and pinning, merge and dedupe, traces, and erase-by-user for GDPR. You would otherwise build those around the database yourself.

Any. Plivel returns plain text context and structured memories. It works with OpenAI, Anthropic, Mistral, Llama or your own fine-tune.

In the region you choose, encrypted at rest with per-tenant keys. EU-only and US-only residency are one setting. We never train on your data.

One call: DELETE /v1/users/:id. Memories, vectors and graph edges are erased within 60 seconds, and you get a signed receipt for your records.

Recall has a 99.99% SLA and fails over across regions. Agents can also run with a local read cache that serves the last known context.

Hold to remember
wrote “Prefers aisle seats” · mem_8f2k · 41 ms

Give your agent a memory it keeps.

Free for your first 100,000 memories. No card, no sales call, one API key.

© 2026 Plivel Labs, Inc. · Montréal · Lisbon

Plivel

Plivel

Plivel

Create a free website with Framer, the website builder loved by startups, designers and agencies.