Where your mail and data live
Understand local message storage, credentials, external requests, and data removal.
Your provider hosts the mailbox. PressedMail keeps a local mirror in your WordPress database so it can display lists, search indexed fields, and process supported rules.
Removing local PressedMail data does not remove the mailbox at your provider. Deleting a message through the email client can affect provider mail, so distinguish those operations.
Message data and caching
The message index includes sender, recipients, subject, dates, message and thread identifiers, flags, preview text, attachment metadata, and labels. The full message body is not part of that list index.
Bodies use a separate cache. Cache email content is enabled by default per user; users can disable it and clear stored content. A site-level filter can force caching off. With caching off, reading a message fetches its content from IMAP again.
Contacts, events, and preferences are also local records. Include the WordPress database in your backup plan. Provider mail does not replace a backup of local contacts, events, or settings.
Credentials and ownership
Mailbox passwords and OAuth tokens are encrypted with AES-256-GCM. The key derives from a random secret generated on the site, with separate derived keys for separate purposes.
Application access checks require the account owner and, where enabled, an unlocked mailbox. Background work uses a trusted context bound to the account owner. An administrator role does not automatically grant access to another user's mailbox through the plugin.
Encryption at rest does not protect against every server compromise. A person who controls the running WordPress code and its secrets can act outside the plugin's normal access checks. Protect the host and backups as well as WordPress accounts.
Requests outside WordPress
| Destination | Why a request is made |
|---|---|
| Your mail provider | IMAP reads and mutations, SMTP sends, and provider authentication |
| PressedMail license service | Paid activation, validation, and authorized downloads |
| Microsoft sign-in relay | Microsoft authorization and token exchange when that connection is used |
| Configured AI endpoint | An enabled AI action or automatic check that uses your own provider |
PressedMail AI service (ai.curb.software, then TypeSafe) | An enabled auto-tagging, phishing or spam check set to PressedMail AI |
| Remote image host | An image you allow to load, directly or through an enabled proxy |
License requests can include the key, product and plugin version, site identifiers and URLs, WordPress version, PHP version, and compatibility information. They do not include mailbox passwords, message bodies, or attachments.
AI requests to your own provider can include message subjects, senders, recipients, bodies, context, and instructions. Drafts and summaries send up to 10,000 characters of content. Phishing and spam checks send a body excerpt of 2,000 to 20,000 characters (20,000 by default) and up to 12,000 characters of raw headers, plus authentication results, links and each attachment's file name, type and size. No request sends attachment contents. PressedMail AI sends a narrower set to a CurbSoftware service, which passes part of it to TypeSafe and stores no message content. PressedMail AI lists it. Review AI setup before enabling AI.
This describes the plugin's data paths, not every service installed on your WordPress site. The site's host, backups, other plugins, and configured providers have their own access and retention policies.
Remove local data
Removing a connected account deletes its saved credentials and local mirror. WordPress personal-data export and erasure also cover PressedMail's local data.
For a complete uninstall, choose whether to retain or purge plugin data using Update, deactivate, and uninstall. Purging is destructive and needs your own backup to recover.
For image controls and logs, see Email safety and audit history. The Privacy Policy describes the product services.