privacy policy
What we store, who sees it, and how to make us forget it.
thin-memory is a memory service, so by design it keeps the text you send. This page states exactly what is kept, which processors touch it, and how to delete it.
who we are
controller + processorThe service is operated by thin-memory. For anything on this page — questions, requests, complaints — write to thinmemory@proton.me.
This policy covers the marketing site, the REST API and the MCP endpoint. It does not cover Dodo Payments' checkout, which is a separate service with its own privacy policy.
Because the product stores text on your behalf, we wear two hats:
- Controller for account, billing, usage and website data. We decide why and how that is processed.
- Processor for the documents, memories, metadata and derived facts you submit ("Customer Content"). You decide what goes in and why; we process it on your instructions. If you run an agent for other people, their data is your responsibility. We will sign a data processing agreement (DPA) on request.
what we collect
only what the service needs| category | what it includes | where it comes from |
|---|---|---|
| account + keys | email, container tag, key name, a SHA-256 hash of the key, created and last-used timestamps | /v1/claim, /v1/keys |
| claim sign-in | the email address you enter at the Cloudflare Access sign-in, whether the one-time PIN was verified, session metadata, and standard request metadata (IP address, user agent, country) | Cloudflare Access at the site edge |
| plan + billing | plan, subscription status, Dodo customer and subscription ids, claim timestamps. Card details never reach us. | Dodo webhooks and API |
| customer content | documents (up to 400,000 characters), optional metadata (up to 4,000), standalone memories (up to 8,000), and the chunks derived from them | /v1/add, /v1/memories, MCP tools |
| derived data | extracted facts (up to 12 per document), embeddings, vector metadata (container tag, kind), recall hit counts | generated when you add content |
| usage | monthly counters for adds, searches and extractions, per container | generated by your requests |
| abuse + technical | IP address in hourly buckets for the claim throttle, webhook event ids, request paths, status codes and error messages in Worker logs | your requests and Dodo deliveries |
| support | whatever you choose to include when you email us | you |
We do not collect card numbers, passwords, advertising identifiers, or analytics profiles. There are no analytics or advertising scripts on this site, and the claim page never stores your key in a cookie or local storage.
Cloudflare may process standard request metadata — IP address, user agent, country — as part of delivering any website. Our Worker logs record request outcomes, identifiers and error messages; they are not designed to capture request bodies.
When you sign in, Cloudflare Access processes the email address you enter to send a one-time PIN. We do not store that Access email in our application database. The signed-in claim relay forwards it to the API only for the duration of a claim, so a paid upgrade can link an existing free container when the checkout email differs; it is not retained after the request.
why we process it
purpose + lawful basis| purpose | data used | lawful basis (GDPR art. 6) |
|---|---|---|
| store, chunk, embed and recall your content | content, derived data, keys | performance of a contract |
| meter quotas and enforce plan limits | usage counters, plan | performance of a contract |
| take payment, manage subscriptions, keep tax records | email, plan, Dodo ids | contract; legal obligation |
| secure the service, stop abuse and rate-limit claims | IP buckets, logs, usage | legitimate interests |
| control who can claim a key and verify sign-in email addresses | sign-in email, authentication and session metadata, IP address, user agent | legitimate interests; consent where required |
| debug failures and keep the service reliable | logs, error traces | legitimate interests |
| answer support requests and enforce the terms | correspondence, any of the above | legitimate interests; contract |
We do not sell personal data, share it for cross-context behavioural advertising, or use Customer Content to train models. We do not send marketing email. We do not make automated decisions that produce legal or similarly significant effects: fact extraction is a text transformation whose output is returned to you, not used to decide anything about you.
ai processing
managed models, no byokTwo kinds of model call happen when you use the hosted service. You do not supply keys for either.
- Embeddings. Cloudflare Workers AI (
@cf/baai/bge-m3) turns text into vectors. The vectors are stored in Cloudflare Vectorize with a container tag and a kind. - Fact extraction. On
/v1/add, up to 24,000 characters of the document are sent to Groq's OpenAI-compatible API usingopenai/gpt-oss-20b, withopenai/gpt-oss-120bas a fallback. The model returns at most 12 short facts. Groq processes that text on our behalf under its API terms.
We do not permit providers to train on your content, and we do not use it to train anything ourselves. Providers and model names can change as the service evolves; when they do, we update this page.
Extraction is a feature of /v1/add only. POST /v1/memories stores
text exactly as sent, with no LLM pass — use it when content must not leave Cloudflare's
compute for inference.
Model output is probabilistic. Extracted facts can be incomplete, outdated or simply wrong. Treat them as candidates and verify before relying on them. See section 6 of the terms.
who else sees it
processors, not buyersWe use a small set of processors. Each is bound to use the data only to provide its service to us.
| processor | purpose | data | location |
|---|---|---|---|
| Cloudflare, Inc. www.cloudflare.com | Hosting, edge compute, primary database, vector index, embeddings, claim access control | Documents, memories, derived facts and chunks, embeddings, hashed API keys, usage counters, request metadata; sign-in email and authentication metadata | Global edge network |
| Groq, Inc. groq.com | Managed fact extraction (LLM inference) | Up to 24,000 characters of each document submitted to /v1/add | United States |
| Dodo Payments dodopayments.com | Merchant of record: checkout, cards, tax, receipts, refunds | Email and subscription identifiers shared by us; card, billing and tax details collected directly by Dodo | As described in their policy |
Beyond those processors, we share data only:
- when the law requires it — a valid legal request, court order or regulatory demand, or where necessary to protect someone's safety or our rights. We will tell you unless we are prohibited from doing so.
- in a business transfer — if the service is merged into or acquired by another entity, data may transfer as part of it. We will post notice before your data becomes subject to a different policy.
- with professional advisers — lawyers and accountants under confidentiality obligations.
We do not sell personal data and do not share it with data brokers, advertisers or ad networks. There is no financial incentive offered for personal data.
international transfers
where the bits liveCloudflare runs a global edge network and stores data in the region configured for the database and vector index. Groq is United States-based and processes data there; Dodo Payments' processing locations are described in its own privacy policy.
Where personal data leaves the EEA, the UK or Switzerland, we rely on the safeguards our processors make available — adequacy decisions or Standard Contractual Clauses, including the UK Addendum where relevant. Write to thinmemory@proton.me if you need details for a transfer assessment.
how long we keep it
delete means delete, eventually everywhere| data | retention |
|---|---|
| documents, chunks, memories, facts, vectors | until you delete them through the API or ask us to close the container |
| key records | until you delete the key — only the hash and metadata are stored |
| claim sign-in sessions | the session cookie expires after 24 hours; Cloudflare Access audit logs are retained under Cloudflare's policy. We do not copy sign-in emails into our database. |
| plan and subscription state | while the container exists, and as long as needed to resolve billing disputes |
| invoice and tax records | held by Dodo as merchant of record for the period tax law requires |
| usage counters | monthly buckets, kept while the container exists |
| claim throttle buckets | hourly buckets, deleted within 48 hours, used only for rate limiting |
| webhook event ids | kept to prevent duplicate processing of the same billing event |
| Worker logs | short-lived, per our Cloudflare logging configuration — typically days |
| recovery copies | database point-in-time recovery, expiring automatically (currently up to 30 days) |
Deleting an item removes its database row and its vector at once. Copies inside point-in-time recovery expire on their own and cannot be queried through the API.
security
what protects the data — and what doesn'tThe service relies on a small number of concrete controls:
- TLS for every request; encryption at rest is provided by Cloudflare.
- Service keys are stored as SHA-256 hashes and shown exactly once. The master key is a Worker secret and is never written to the database.
- Every service key is pinned to one container, and containment is enforced during recall, not just in the UI.
- Only the operator holds production credentials; the claim endpoint is rate-limited per IP.
Content is not end-to-end encrypted. It is encrypted in transit and at rest, but the service has to read it to chunk, embed and extract facts, so someone with production access can technically read it. Do not store passwords, private keys, seed phrases or other secrets in a memory.
If you find a vulnerability, email thinmemory@proton.me with enough detail to reproduce it. Please give us a chance to fix it before publishing.
your rights
depends where you liveEEA, UK and Switzerland
You have the right to:
- access the personal data we hold about you, and receive a copy;
- correct data that is wrong or incomplete;
- erase data, subject to legal retention obligations;
- restrict or object to processing based on legitimate interests;
- receive your data in a portable, machine-readable format;
- lodge a complaint with your local supervisory authority.
California and other US states
Subject to the thresholds and exceptions in your state's law, you may request to know, access, correct or delete personal information, and to opt out of sale or sharing. We do not sell or share personal information as those terms are defined, and we do not use sensitive personal information beyond providing the service. We will not discriminate against you for exercising a right.
elsewhere
If your local law gives you other rights — for example under India's Digital Personal Data Protection Act, Brazil's LGPD, Canada's PIPEDA or Australia's Privacy Act — we will honour them on the same terms. Tell us which right you are exercising when you write.
how to exercise them
Email thinmemory@proton.me. Include the email address on the account, or the container tag and key id if you have them. We may ask you to make an authenticated API call or otherwise confirm control of the account — this is how we avoid handing someone else's memories to a stranger. We answer within one month and will tell you if the law allows an extension of up to two more months.
You may use an authorised agent where the law allows it; we may still require proof that the agent can act for you.
If you are an end user of an application built on thin-memory, the developer of that application is the controller. Contact them first; we will assist them with your request.
deletion and export
two calls and an emailYou do not need to open a ticket to delete your own data:
DELETE /v1/documents/{id}removes a document, its chunks and their vectors.DELETE /v1/memories/{id}removes one extracted or standalone memory and its vector.GET /v1/itemsandGET /v1/profileexport what is stored.
Facts outlive their source document. Extracted facts are separate rows. Deleting a document does not delete the facts extracted from it; delete those by id, or ask for a full wipe.
For a full container wipe, email thinmemory@proton.me with the container tag and key id. We delete documents, chunks, memories, facts, vectors, keys, usage counters and the plan row within 30 days, except records we must keep for tax or billing disputes and copies inside point-in-time recovery that expire on their own.
cookies, children, changes
the small print that isn'tcookies and tracking
This site sets no analytics or advertising cookies. Fonts are self-hosted, not loaded from a
third party. After you sign in, Cloudflare Access sets strictly necessary cookies (for
example, CF_AppSession and CF_Authorization) to keep you signed in;
the session lasts 24 hours. There is nothing to opt out of, and we treat Global Privacy
Control signals as a confirmation that no sale or sharing applies.
children
The service is for adults. It is not directed to anyone under 18, and we do not knowingly collect their data. If you believe a minor has sent content to the service, email us and we will delete it.
changes
We publish a new version and effective date when this policy changes. For material changes we will also post a notice on the site — and email the address on the account where we can — at least 14 days before the change takes effect.
contact
thin-memory
thinmemory@proton.me
You can also complain to the data protection authority in the country where you live or work. We would rather hear from you first.