Proxy Mail QA

Security

Security is important to us.

Here’s what happens to your data from sign-up to an expired inbox: what we store, how test passwords are encrypted, who can see what, and what isn’t built yet.

Updated 13 October 2026 · Covers the app, the API and MCP server, and Proxy Mail QA for Chrome

Test accounts only

Proxy Mail QA is for development, staging, preview and QA testing of apps you build or are allowed to test. Its addresses are disposable and are deleted when they expire. Don’t use them for production or personal accounts, and never use or save a real or personal password. Use the strong passwords Proxy Mail QA generates, or a password you made up for testing.

The short version

Inboxes are ours, never yours

Test addresses are created by Proxy Mail QA on its own domains. You can’t connect a personal mailbox, and a password can’t be saved for any email that isn’t one of ours.

Receive-only

Nothing is ever sent from a test address. Mail to an address that doesn’t exist or has expired is refused.

Everything expires

Addresses last up to 30 days. Their mail, codes, links and saved passwords are deleted with them.

Test passwords are encrypted

AES-256-GCM in our API, with a key that never sits in the database. A database leak alone doesn’t reveal them.

Projects are walled off

Postgres row-level security on every table, with an isolation test suite that runs on every change.

Agents get the code, not the email

Scripts and AI agents receive only the code or link and a few facts about it, never the email’s text.

End to end: from sign-up to an expired inbox

  1. You create a Proxy Mail QA account.

    With your own email and a password, or with Google. You confirm your email before you can create test addresses. Cloudflare Turnstile checks sign-up, sign-in and password reset for bots.

  2. You create a test address in a project.

    A random or custom name on one of our receiving domains, optionally with a fictional name and username and a generated password for the form.

  3. You sign up to the app you’re testing with it.

    By hand, with the Chrome extension, or through the API or an AI agent.

  4. That app’s email arrives.

    Cloudflare Email Routing hands it to our receiving service, which first checks the address exists, is live and is within its size and rate limits. Anything else is refused at the door.

  5. We extract the code or link and clean the rest.

    The verification code or link is extracted, the HTML is sanitised and attachments are dropped. The original email file is kept only if the project has debug mode switched on.

  6. It appears in your project.

    Live, for the people on that project. You copy the code or click the link yourself: Proxy Mail QA never opens or prefetches links, so single-use links still work.

  7. The address expires.

    An hourly cleanup deletes expired addresses with their mail, codes, links and saved passwords. The name is retired and never issued again.

Passwords

There are two kinds, and they’re handled differently.

QuestionYour Proxy Mail QA passwordSaved test-account passwords
What it isThe password you sign in to Proxy Mail QA withThe password a test account uses on the app you’re testing
Where it’s keptSupabase Auth, as a one-way bcrypt hashOur database, as AES-256-GCM ciphertext
Can we read it?No. Only the hash exists.Only through our API, when someone on the project asks to see it. Every reveal is logged.
RulesAt least 8 characters. Use a password you don’t use anywhere else.Only for Proxy Mail QA addresses. Never a personal or reused password.

How saved test passwords are protected

Your account and sessions

Test addresses and the mail they receive

Who can see what

API keys, AI agents and the Chrome extension

API keys

  • Shown once, then stored only as a SHA-256 hash.
  • Each works in one project and acts as the person who made it. It stops when they leave the project or revoke it.
  • Can read saved passwords only if created with that permission.
  • Rate-limited per key: 60 requests a minute on Free, 600 on Team.

AI agents (MCP)

  • Connect with OAuth 2.1 and PKCE: you sign in and approve one project.
  • Tokens are stored hashed. Access lasts an hour; refresh tokens last 90 days and are replaced each time they’re used.
  • Results carry the code or link only, never the email’s text, so an email can’t slip instructions to your agent.
  • Can’t read saved passwords. Disconnect any time in Project settings.

Proxy Mail QA for Chrome

  • Off on every site until you turn it on for one; Chrome then grants access to that site only. It refuses broad patterns like *.com.
  • On those sites it reads only the email, name, username and password fields of the form you fill.
  • New passwords stay on your device until you choose to save one. A saved one is fetched only when you pick that account to sign in, and the reveal is logged.
  • Never opens links on its own. No analytics, ads or remote code.

In transit

  • Every connection to the app, API and website uses HTTPS, with HSTS on the app.
  • The extension and agents talk only to our API; nothing is sent to other services on their behalf.

Where data lives and who handles it

SupabaseDatabase, sign-in and live updates. Hosted on AWS in us-east-2, United States.
CloudflareReceiving email, running the API, hosting the app and website, original email files in debug mode, and Turnstile bot checks.
ResendSending organisation invite emails.
StripePayments for the Team plan. Card details go to Stripe and never reach us.
GoogleOnly if you choose to sign in with Google.

How long things are kept

DataKept until
Test addresses, their mail, codes, links and saved passwordsThe address expires (up to 30 days) or you delete it
Original email filesOnly with debug mode on; deleted with their email, 31 days at most
Archived projectsRestorable for 15 days, then deleted with everything in them
Activity log90 days
Agent sign-in codesExpire after 10 minutes; deleted within a day
Your accountYou delete it; deletion is immediate

Ground rules for using it

  • Use it only for test accounts on development, staging, QA, preview or local versions of apps you build or are allowed to test.

  • Never use a Proxy Mail QA address for a real account, such as banking, shopping or anything you’d need to keep.

  • Never use or save a personal or reused password. Let Proxy Mail QA generate one, or invent one just for testing.

  • Keep personal data out of notes and labels. Personas are fictional on purpose.

  • Remember that everyone on a project can read its mail and reveal its saved passwords.

Not built yet

So you know exactly where things stand today.

  • Two-factor sign-in for Proxy Mail QA accounts.Not yet
  • Checking account passwords against known breaches.Before public launch
  • Rotating the saved-password encryption key on a schedule. Ciphertexts carry a version prefix so the key can be changed, but rotation isn’t automated.Not yet
  • An independent security audit or certification such as SOC 2.Not yet

Questions or a security concern?

Email hello@proxymail.qa or see Support. The legal terms are in the privacy policy and terms.

Create a free accountOpen the app