Knowledge Base
GreenmorMail Documentation
Everything you can do with GreenmorMail — from your inbox, calendar and drive to setting up your organisation and admin panel.
Product overview & key concepts
What is GreenmorMail?
GreenmorMail is a complete, privacy-focused email and productivity suite. It has two faces:
- Webmail (mail.greenmormail.com) — the day-to-day app people live in: email, calendar, contacts, file drive, notes, video meetings, and email-marketing outreach. It is a fast single-page app that installs to your phone or desktop like a native app.
- Admin panel (admin.greenmormail.com) — where an organization signs up, sets up its domain, creates mailboxes, manages billing, and brands the experience.
The platform is white-label aware: an organization can put its own name, logo, colors, and custom domain on the whole experience, so end users may see their company's brand rather than "GreenmorMail."
Product map (webmail)
The webmail app is organized into surfaces, reachable from the left sidebar:
| Surface | What it's for |
|---|---|
| Inbox, folders, reading and managing email | |
| Calendar | Events, invitations/RSVP, reminders, video meeting links |
| Contacts | Address book, groups, favorites, import/export |
| Drive | File storage, sharing, in-browser Office editing |
| Notes | Quick notes with labels, colors, reminders |
| Outreach | Email marketing: campaigns, segments, templates, AI prospecting |
| Settings | Account, identities, filters, vacation, security, AI, conferencing, etc. |
How mail flows (so behavior makes sense)
A few internals are worth knowing because they explain what users see:
- Instant, then synced. When you send, star, move, or delete, the change appears immediately. A background worker then applies it to the underlying mail server. This is why a sent message shows in Sent right away and the "real" copy lands within ~60s.
- Real-time updates. New mail and changes made on another device appear automatically, without a manual refresh, via a live connection.
- Server-side rules. Filters and vacation auto-replies run on the mail server itself (via Sieve), so they work even when the app is closed.
Key concepts & glossary
- Mailbox — a single email account (e.g.
you@yourcompany.com). - Organization / tenant — a customer account that owns one or more domains and mailboxes and is managed from the admin panel. (In the sign-up flow this is also called a "partner" account, because organizations can resell mailboxes to their own customers.)
- Tenant admin — the administrator of an organization; manages users, billing, branding, and domains in the admin panel.
- Identity — a "From" address you can send as. A mailbox can have several identities, each with its own signature.
- Folder — a mail container. System folders (Inbox, Sent, Drafts, Scheduled, Archive, Junk, Trash) always exist; you can add custom folders.
- Thread / conversation — related messages grouped together (Gmail-style), even across folders.
- Filter / rule — a server-side rule that automatically files, flags, or forwards incoming mail.
- Segment — in Outreach, a list of recipients for a campaign.
- Credits / quota — pools you consume: storage, daily send limit, AI tokens, and conferencing (video meeting) hours.
- BYOK — "Bring Your Own Key": using your own AI provider API key instead of the platform-managed AI pool.
- PWA — Progressive Web App: the installable, app-like version of webmail.
- White-label / branding — replacing GreenmorMail's name, logo, and colors with an organization's own.
What's fully shipped vs. partial (quick reference)
Almost everything described in this knowledge base is live in production. A few items are explicitly partial and are flagged where they appear:
- OpenPGP — you can publish your public key; full in-app encrypt/decrypt of messages is a future enhancement.
- AI summarize-thread button in the mail viewer is a placeholder ("coming soon"); AI compose-assist is live.
- Single-occurrence editing of recurring events — editing a repeating event currently updates the whole series.
Mail — reading & managing email
The Mail surface is the inbox and reading experience. For writing and sending, see 03-webmail-compose.md.
Inbox & message list
The Inbox shows a list of conversations (threads). Each row shows:
- Sender avatar and name — colored by the sender's first initial, with a small message count if the thread has multiple messages
- Subject line (truncated if long)
- Date/time — "HH:MM" for today, abbreviated month + day for older
- Preview — a one-line snippet of the latest message
- Unread indicator — the whole row is bold when the conversation has unread messages
- Paperclip icon — if any message in the thread has attachments
- Discussion icon — if the thread has collaborative discussion comments (highlighted if unread)
Click a row to open the thread viewer (right side on desktop, full screen on mobile). In Sent, Drafts, and Scheduled folders, the row shows the recipient instead of the sender.
Folders
A horizontal folder bar sits at the top of the list. System folders appear in order — Inbox, Sent, Drafts, Scheduled, Archive, Junk, Trash — followed by custom folders alphabetically. Each tab shows an icon, the name, an unread badge (only when there are unread messages), and a total count. When the bar overflows, scroll it with the mouse wheel.
Folder management (system folders can't be deleted, but you can create/customize others) is done in Settings → Folders:
- Create custom folders
- Rename folders (display name)
- Delete custom folders (messages go to Trash first)
- Hide folders (keep messages, remove from the bar)
- Protect folders behind a master password — see 06-webmail-settings-security-account.md
In Junk or Trash, an Empty folder action appears (moves all to Trash, or permanently deletes when emptying Trash).
Filtering, sorting & pagination
Filter dropdown (current folder): All, Unread, Starred, With attachments.
Sort dropdown:
- Newest / Oldest · folder — re-fetches the whole folder in that order
- Newest / Oldest · page — re-orders just the loaded page
Pagination — 30 messages per page. A sticky footer shows "M–N of total", a page counter, and Prev/Next buttons (disabled at the ends).
Refresh — a manual refresh button re-fetches the current folder and updates badges.
Search
A search bar at the top is scoped to the current folder by default (results debounce ~300ms). Expand the options to control:
- Scopes (OR-matched): Subject ✓, Sender ✓, Recipient, Body (full-text). At least one must be selected.
- Date range: Any time (default), Past week, Past month, Past year.
- All folders checkbox — search across every folder (useful for finding a moved message).
Clear with the ✕ button. Body search uses a full-text index for speed, falling back to the database if needed.
Reading a message (thread viewer)
Opening a conversation shows all its messages oldest-first. Each message has:
- Header — avatar, sender name + email, an Add to contacts action, the To line, date/time, a folder badge, and status badges ("unread", star).
- Show details / Hide details — expands the full email headers, grouped (Envelope, Routing, Authentication, Anti-Spam, Client & Server, Content, Other). Loaded on demand and cached.
- Body — rich HTML when available, otherwise plain text, otherwise a preview snippet. Lists, task checkboxes, and quotes render with styling.
- Attachments — each file shows name, size, and an open/download action:
- Office documents open read-only in the OnlyOffice viewer in a new window
- PDFs, images, audio, video, and text open inline in a new tab
- Anything else downloads
When a thread has multiple messages (desktop), a thread panel on the right lists each message; click to jump to it.
Message actions
From the sticky thread toolbar:
- Reply (sender only), Reply all (To + Cc), Forward
- Mark read / unread (applies to the whole thread; threads auto-mark-read when opened)
- Star / unstar
- Mark as spam (moves to Junk; becomes "Not spam" while in Junk, moving back to Inbox)
- Move to folder (dropdown of other folders)
- Open in window — pops the message into a draggable, resizable window for side-by-side reference
- Delete — moves to Trash; permanently deletes if already in Trash (with a warning)
- AI summarise — placeholder, coming soon
Bulk selection & actions
- Select a row via the checkbox in the avatar gutter (hover to reveal). Shift+click selects a range.
- Select dropdown: Select all on page or Select all in folder (fetches every match across all pages; shows a banner with a Clear button).
- When 1+ are selected, the toolbar swaps to bulk actions: Mark read/unread, Archive, Move to folder, Mark as spam / Not spam, Delete, AI (placeholder), and Clear selection.
- Drag and drop — drag the selected messages onto a folder tab to move them.
Drafts & Scheduled folders
- Drafts lists saved, unsent emails (subject, last-edited time, recipients, preview, and a delete button). Click to reopen in a compose window. Empty shells (no subject/recipients) are hidden.
- Scheduled lists emails parked for future delivery, showing the send time (in your timezone) and a Cancel button. Click to reschedule or edit.
Live updates & layout
- Real-time: folder badges and the message list update silently as mail arrives or as you act on another device — no spinner, no flicker. Open threads auto-refresh to current state. The connection auto-reconnects and replays missed updates if dropped.
- Resizable split (desktop): drag the divider between the list and the viewer (list 280–720px).
- Mobile: below 768px the list and viewer become separate full-screen views; opening a thread hides the list, closing it brings the list back.
Composing & sending email
The compose experience is a multi-window system with autosaving drafts, a rich text editor, recipient autocomplete, scheduling, and optional AI assistance.
Opening a compose window
- New message — click Compose; a window opens at the bottom-right, draggable and resizable.
- Reply / Reply all / Forward — from the thread viewer. Reply pre-fills the sender and a "Re:" subject with the original quoted below; Reply all adds all recipients; Forward adds a "Fwd:" subject with no pre-filled recipients.
- Reopen a draft — click a draft in the Drafts (or Scheduled) folder.
Multi-window: open several compose windows at once. Each can be dragged by its header, resized from the corner, minimized (header then shows the subject), expanded to full screen, or closed (closing keeps the draft). On mobile, compose is full screen.
Recipients
- To is required (at least one address with
@). Cc and Bcc are hidden until you click their links. Separate addresses with commas or semicolons; both bare addresses andName <email>are accepted. - Autocomplete: typing suggests matches from your Contacts (name + email). Navigate with arrows, accept with Enter/Tab, dismiss with Escape; a comma commits the current entry.
Subject & body
- Subject is plain text; replies auto-prefix "Re:", forwards "Fwd:".
- Body has two modes — HTML (rich editor) and Plain text — toggled with the HTML/Text button. Switching from HTML to plain text drops formatting.
Rich text editor (HTML mode)
Powered by Tiptap, the toolbar offers:
- Text: font family, font size (10–48px), bold, italic, underline, strikethrough, text color, highlight color, and a page-background color recipients see.
- Blocks: bulleted/numbered lists, blockquote, tables (resizable; add/remove rows & columns, toggle header row), checklists, inline images (drag/paste), and links.
- Undo/redo (Ctrl/Cmd+Z / Y).
- Phonetic transliteration for Indian languages — English, Hindi, Bengali, Tamil, Telugu, Kannada, Malayalam, Marathi, Gujarati, Punjabi. Type Latin, pick candidates with number/arrow keys; last language is remembered.
Quoted original
On reply/forward the original appears in a collapsible "Show quoted message" block ("On [date], [sender] wrote:"). You type your reply above it; the quote is appended on send.
Identities & signatures
- Multiple "From" identities are configured in Settings → Identities & Signatures (display name, address, optional Reply-To, optional HTML signature). When more than one exists, a From dropdown appears in compose; one is the default for new messages.
- Signatures auto-append based on a global signature mode: Always, Replies only, or Never. The signature is placed below your cursor so you type above it.
Attachments
- 📎 Attach — upload local files (up to 50 MB per file, tunable server-side). Files appear as removable chips with name and size.
- 📁 Drive — pick files from Drive; these are linked, not copied (resolved at send time), saving storage.
- Remove an attachment with the ✕ on its chip.
Drafts: autosave & manual save
- Autosave triggers on edits: the first save ~60s after you start, then every ~20s. Closing the window saves a final time (a brand-new untouched draft is discarded instead).
- 💾 Save saves immediately ("Saved [time]" shows in the status line).
- Discard permanently deletes the draft; closing with ✕ keeps it.
- Reopening a draft that's already open un-minimizes that window instead of duplicating it.
Scheduled send
Click ⏰ Schedule to reveal date and time inputs (date can't be in the past). With a schedule set, the Send button becomes Schedule: the message moves to the Scheduled folder, and a background worker delivers it at the chosen time (then it moves to Sent). You can reopen a scheduled message to edit or reschedule it.
AI compose assist
When AI is enabled for your mailbox (BYOK key or platform-managed — see settings), click 🤖 AI to reveal a prompt input. Describe what you want ("draft a polite decline, suggest next week"); the response is inserted at the top of the body, above existing text, leaving your signature in place. Works for new messages and replies (the quoted message can be passed as context). Standalone summarize/translate are future additions.
Sending
Click Send (validated: at least one valid recipient; body or subject non-empty). The message is assembled as a proper MIME email (HTML mode sends both HTML and an auto-generated plain-text part; plain-text mode sends text only) with a stable Message-ID, and relayed through the local mail server.
- A placeholder appears in Sent immediately for instant feedback; the real synced copy arrives within ~60s and is de-duplicated by Message-ID.
- If sending fails, an error shows in red and you can edit and retry.
Encryption (current status)
You can publish your OpenPGP public key (Settings → Security) so others can encrypt to you, but compose does not yet expose send-signed / send-encrypted toggles. In-app encrypt/decrypt is a planned enhancement.
Calendar, Contacts & Video meetings
Calendar
A full calendar with multiple calendars, recurring events, attendees, reminders, video meetings, and timezone awareness.
Views & navigation
Five views: Month, Week, Day, Agenda (2-week list), and a mobile Mini view. Navigate with Previous/Next and Today. A mini-month (sidebar on desktop, slide-in on mobile) shows event dots; clicking a day drills into Day view.
Creating & editing events
Open the editor by clicking an empty time slot, the + New event button, or an existing event. Fields:
- Title (required)
- Start / End — separate date and time pickers (so time is visible on mobile)
- All-day toggle
- Timezone — pinned common zones plus the full IANA list; times are stored/synced in the chosen zone
- Calendar — which calendar owns the event (required)
- Category — optional label/color
- Reminder — none, 5/10/15/30 min, 1h, 2h, or 1 day before (default from calendar settings)
- Location — text
- Video meeting link — Generate video link (creates a meeting room) or paste a URL
- Description — free text
- Repeat — Does not repeat, Daily, Weekly, Weekdays, Monthly, Yearly (power users can use a custom RRULE). Editing a repeating event rewrites the whole series — single-occurrence editing is not yet available.
- Attendees — chip input with contact autocomplete; each shows RSVP status (✓ accepted, ✗ declined, ? tentative, · no response)
Invitations & RSVP
- Attendees receive invitations as
.icsemail attachments and can open the event in their calendar. - When you're invited, the editor shows a Your response panel with Accept / Maybe / Decline; you can RSVP but not edit an organizer's event. Organizers see everyone's responses.
- Calendar links like
?invite=UID(from email) or?event=IDopen the event directly.
Multiple calendars & sources
The sidebar lists your calendars with color dots and show/hide toggles; one is the default for new events. Calendars can be Local, CalDAV (external sync), Google, or an ICS subscription (read-only feed). Last sync time appears in settings.
Reminders & timezones
Each event has its own reminder; calendar settings provide the default and let you enable browser notifications for upcoming events. Times are always tied to a timezone and rendered in it; changing the timezone mid-edit reinterprets the wall-clock time rather than shifting the instant.
Current limitations
Single-occurrence recurrence editing, calendar sharing/delegation, and a full custom- recurrence UI are not yet available.
Contacts
An address book with full CRUD, groups, favorites, duplicate detection, auto-collection from mail, birthdays, vCard/CSV import-export, and search.
List, search & scopes
Full-text search across name, company, and email. Scope tabs: All, Favorites, Auto-collected (added automatically from received mail), Birthdays (next 60 days), and Possible duplicates. The sidebar lists groups; an A–Z jump index appears for large lists. Default sort: favorites first, then most-recently-emailed, then alphabetical.
Contact details
Each contact shows an initials avatar, name/title/company, primary + extra emails (clickable
to compose) and phones, birthday (🎂), address, LinkedIn/Twitter and custom social links,
notes, email stats (count + last email), up to 8 recent messages, and a source badge
(manual, auto_received, import, sync).
Creating & editing
- + New contact opens a form (all fields optional, but add an email to make it useful).
- Paste from email signature — paste a signature block and click Fill form to auto-populate fields.
- Edit exposes name fields, multiple emails/phones, company/title, and "More details" (birthday, address, social links, notes) plus group checkboxes.
Groups, favorites & duplicates
- Groups — create with a name and color; assign via checkboxes; filter by clicking a group; delete a group without deleting its contacts.
- Favorites — ⭐ a contact to pin it to the top and into the Favorites scope.
- Duplicates — the Possible duplicates scope matches on email/phone/name; Merge folds one contact into another (one-way; source is deleted).
Import / export & use in mail
- CSV import/export and per-contact vCard download (or copyable vCard link).
- Auto-collection adds new senders to contacts automatically.
- In compose, the To field autocompletes from contacts; the Email button on a contact opens compose addressed to them.
Limitations: no contact photos yet; no group bulk operations.
Video meetings (conferencing)
Integrated video meetings with a per-mailbox hour quota, session history, and chat-transcript
archives. Meeting links are served from your own app domain (/meet/join?room=…), so meetings
stay white-labelled.
Starting & joining
From a calendar event, click Generate video link (or paste an existing URL); the app
mints a unique room and returns a branded URL. Save the event and attendees get the link in
their .ics invite. Click the link to join in a new tab.
Hours, quota & how minutes are counted
- Free tier: 10 hours (600 minutes) per mailbox, non-expiring. Additional purchased hours are also non-expiring.
- Meetings are billed per minute. Free hours are consumed before purchased hours.
- View balance in Settings → Conferencing: progress bar (green→amber→red), purchased hours, and total available, with warnings when low or exhausted. If exhausted, you can still join existing meetings but can't create new rooms.
Session history & chat transcripts
- Recent sessions lists up to 50 completed meetings (room, start time, duration). You can hide sessions, delete individual ones, or bulk-delete all 0-minute sessions (no one joined).
- Chat transcripts archives in-meeting chat per room; expand to read messages (sender, time, text, private flag). Only you can see your transcripts.
Limitations: no meeting time-limit / "extend" UI; transcripts are read-only; provider configuration is managed by the platform, not the end user.
Drive, Notes & Outreach
Drive (files)
A file workspace with folders, in-browser Office editing, granular sharing, and a storage
quota. Open via Drive in the sidebar (/mail/drive).
Browser & navigation
- View modes: List, Grid, Gallery.
- Breadcrumbs for the folder path; nested folders supported.
- Sidebar sections: My drive, Starred (⭐ any file), Trash (restore or permanently delete).
- A virtual, read-only Emails folder at the Drive root collects all non-inline attachments from received mail (downloadable, not editable).
Uploading & creating
- Upload: drag-and-drop onto the area, or + New → Upload files (multi-select). Max 100 MB per file; a counter shows progress.
- + New → Folder / Document / Spreadsheet / Presentation — new Office files open immediately in the in-browser OnlyOffice editor (autosaving, collaborative).
- Rename inline; move by dragging onto a folder or via the Move button; Download zip exports selected files as one archive; delete is soft (Trash) with a confirm before permanent delete.
Preview & editing
Click a file to open the full-screen previewer: images (zoom), PDFs (embedded viewer), video and audio (HTML5 players), Office docs (OnlyOffice editor), everything else offers Download. Arrow keys move between files; Esc closes.
Search, filter & sort
Name search (case-insensitive), type filters (All, Images, Docs, PDFs, Video, Audio, Archives), and sort by Updated / Name / Size / Type with asc/desc.
Sharing
From a file's menu → Share:
- Access mode: Anyone with the link (public) or Restricted (password and/or an allowed-email list).
- Password (optional, any mode), Expiry date (optional), and a view count.
- The share URL is copied to your clipboard; delete the share to revoke access instantly.
Storage quota & compose
A sidebar widget shows used vs. total storage (mail + Drive), turning orange at 80% and red at 95%. Drive files can be attached directly when composing email.
Notes
Quick, rich notes with labels, colors, reminders, pinning, and archiving. Open via Notes
(/mail/notes).
- Sections: All, Pinned, Archived, and reminder buckets (Today / Upcoming / Overdue), plus Labels. A search box covers titles and bodies; a sidebar quick-capture field creates one-line notes on Enter.
- Create/edit: WYSIWYG editor (bold, italic, lists, links, images/attachments) with autosave after ~600ms idle.
- Colors: 8 swatches applied instantly.
- Labels: comma-separated tags; click a label to filter.
- Reminders: set a date/time; overdue notes surface on the Overdue tab and can trigger a browser notification if allowed.
- Pin to keep at top; Archive to hide while keeping searchable.
- Send as email converts a note into a draft; notes can also be shared via link (with password/email restrictions, like Drive).
Outreach (email campaigns)
A full email-marketing suite for permission-based campaigns. Open via Outreach
(/mail/outreach).
Campaigns
- Campaign list with status badges (Draft, Active, Paused, Completed, Cancelled), search, status filter, and a daily quota widget (sent today vs. limit).
- Create a One-shot (single send) or Sequence (multi-step series with delays).
- Builder (Design + Settings tabs):
- Design: block-based editor (Text, Heading, Image, Divider, Button, Social, Signature)
with a block palette and an inspector; Desktop/Tablet/Mobile preview; merge variables
like
{{first_name}}and custom fields. - Sequence steps: each step has its own subject, preview text, send delay, and optional skip conditions (e.g., skip if recipient clicked/unsubscribed).
- Settings: name, type, status, From name, Reply-to.
- Send options: choose a segment, send rate (5–1000/hr), a send window (e.g. 8am–6pm), and schedule now or later.
- Toolbar: AI Assistant (subject suggestions), Send test (to yourself, with sample merge values), Preview, Save draft, Pause/Resume.
- Design: block-based editor (Text, Heading, Image, Divider, Button, Social, Signature)
with a block palette and an inspector; Desktop/Tablet/Mobile preview; merge variables
like
Analytics
Per-campaign dashboard: totals (Recipients, Sent, Opened, Clicked, Replied, Unsubscribed, Bounced, Failed), a 14-day over-time graph, top clicked links, and recent replies. Multi-step campaigns break analytics down per step.
Segments (audiences)
Create named segments and add recipients by single entry, paste CSV, import from Contacts, or file upload. Email verification checks syntax/SMTP and reports valid/invalid/unverified counts. Segments can be exported to CSV.
Templates & custom fields
- Templates: a gallery of built-in/user templates; create/edit with the same block builder; turn a template into a campaign.
- Custom fields: define merge variables (key, label, type Text/Number/Date/URL) for personalization; populate via segment CSV uploads.
Suppression & compliance
- A suppression list (Manual / Unsubscribed / Bounced / Complained) skips all sends to those addresses; unsubscribe links auto-add recipients here.
- Every email includes an unsubscribe footer; opens and clicks are tracked via pixel and link rewriting; bounces/complaints are auto-suppressed.
AI lead-generation tools
- Prospector — describe an ideal customer in natural language (or use advanced filters: industry, location, company size, keywords) to build a list (up to 500), then export to a segment.
- Hotlist — engaged recipients (opens/clicks/replies/repeat openers) with AI-drafted follow-ups; save as a segment or export.
- Precision — AI cold outreach: define offer/benefits/pain/CTA, paste contacts (with website + context); AI generates personalized subject + body per contact for review and approval, then sends as a campaign.
- Autopilot — recurring AI outreach on a schedule (target query, product brief, tone, contacts per run, sequence steps, send windows/rate) with optional approval gates before finding contacts / creating the campaign / sending.
Webhooks
Create webhooks to notify external systems on campaign events (opens/clicks/replies), with optional auto-import of responders into Contacts.
Note: A/B testing infrastructure exists but is not yet exposed in the UI.
Settings, account, security, AI, install & branding
Settings overview
Settings is reached from the mail interface and is divided into focused panes. The panes that exist today:
| Pane | What it controls |
|---|---|
| Password & Security | Password change, 2FA, recovery codes, active sessions, OpenPGP key |
| Identities & Signatures | "From" addresses and per-identity signatures (see 03) |
| Preferences | Timezone, inbox display, notifications, privacy, composer behavior |
| Filters | Server-side mail rules (Sieve) |
| Vacation | Auto-reply / out-of-office |
| Folders | Create/rename/delete folders + folder protection |
| Calendar | Calendar display, working hours, categories, reminders |
| Conferencing | Video-meeting quota, sessions, transcripts (see 04) |
| AI Assistant | AI status, token balance, usage |
| Email Migration | Import mail from another IMAP server |
| Backup / Restore | Export/import mail as .mbox archives on Drive |
Preferences
- Timezone — used for mail and event times (syncs with Calendar).
- Inbox display — threaded view toggle, sort order, messages per page (10–500), auto-refresh interval.
- Notifications — toggle web push (see below); shows browser permission status.
- Privacy — block remote images by default (anti-tracking), always show inline images, block embedded objects.
- Composer — autosave interval, initial autosave delay, reply quote style.
Filters (Sieve rules)
Server-side rules applied to every incoming message:
- Conditions on From / To / Cc / Subject / Body with contains / equals / matches (regex); combine with all or any; optionally stop after a match.
- Actions: move to folder, flag (star), mark read, discard, redirect to another address, or keep in Inbox.
- Shows last push status; a Re-push to Sieve button helps troubleshoot.
Vacation / auto-reply
Toggle on/off; set a subject, a message body, and an optional start/end date window. Senders receive at most one auto-reply per week.
Folders & folder protection
Create, rename, and delete folders (system folders are read-only). Folder protection lets you set a master password; protected folders then require it to open. You can also hide custom folders and restore them. Repeated wrong passwords trigger a timed lockout.
Email migration
Two steps: (1) connect to the source IMAP server (email, password, host, port, SSL mode) and test; (2) auto-map source→target folders (override as needed), optionally filter by date, cap the number of messages, and optionally delete from source after copying. A progress bar and recent-jobs list track status; duplicates are skipped by Message-ID.
Backup & restore
- Backup: select folders (and optional date range) to export as a
.zipof one.mboxper folder, saved to Drive under/Backups(counts against Drive quota). - Restore: pick a backup
.zipfrom Drive, inspect its.mboxfiles, choose which to restore and a destination folder, optionally filter by date and skip duplicates.
Account, login & sessions
- Login — email/username + password, with a show/hide toggle and a "Remember me for 30 days" option. If 2FA is on, a second step asks for a code.
- Two-factor at login — enter a 6-digit authenticator code, or switch to a recovery code.
- Forgot password — request a reset email (link valid 60 minutes); the response is generic for privacy.
- Reset password — set a new password (minimum 10 characters) from the emailed link.
- Active sessions — under Password & Security: see each session's device, IP, and last activity; revoke any (except the current one) or all others at once.
Switching between accounts
GreenmorMail lets you stay signed in to several mailboxes at once in the same browser and switch between them instantly — no need to log out and back in.
- Add an account — open the account switcher (your avatar/name in the app), choose Add another account, and sign in with that mailbox's email and password. If that account has two-factor enabled, you'll verify it before it's added. Your current account stays signed in.
- Switch accounts — open the switcher and pick any account in the list; the app reloads into that mailbox (its own inbox, folders, calendar, contacts, drive, and settings).
- Each account is independent — unread counts, real-time updates, and notifications are tracked per account.
- Sign out one or all — log out of a single account (you're switched to the next one that remains), or sign out of everything at once.
This is ideal if you manage a personal mailbox plus a shared one (e.g. support@ or
sales@), or several brands from one device.
The web app (use it anywhere & install it)
GreenmorMail is a web app — there's nothing to download from an app store. You open it in any modern browser, and you can optionally install it so it behaves like a native app.
Use it in a browser
Sign in at your mail address (for example https://mail.greenmormail.com, or your
organisation's custom mail domain) on any device — Windows, Mac, Linux, iPhone, iPad, or
Android. Everything works in the browser: mail, calendar, contacts, drive, notes, and
outreach.
Install it as an app
Installing gives you an icon on your home screen or desktop, a standalone window with no browser address bar, faster start-up, and support for notifications.
- Desktop (Chrome / Edge): click the install icon in the address bar, or use the browser menu → Install. Safari (macOS): Share → Add to Dock.
- iPhone / iPad (Safari): tap Share → Add to Home Screen.
- Android (Chrome): menu → Install app / Add to Home Screen.
After installing
- App shortcuts — long-press the installed icon for quick links to Inbox, Compose, Calendar, Contacts, Notes, and Drive.
- Works offline (partially) — mail, contacts, events, notes, and files you've already opened stay viewable, and drafts queue; fetching new mail and sending need a connection and resume automatically when you're back online.
- Your brand — on a white-labelled instance, the installed app uses your organisation's name, icon, and colours.
Notifications (web push)
Desktop/mobile alerts that arrive even when the app is closed.
- Enable in Settings → Preferences → Notifications: toggle on, then allow the browser permission prompt. Status shows on / off / blocked / unsupported.
- Trigger: new mail. The notification shows a title and preview and deep-links to the thread when clicked.
- Disable with the same toggle (unsubscribes and clears the server subscription).
- Calendar reminders can also raise browser notifications (Settings → Calendar).
Requires a modern browser with Web Push (Chrome, Firefox, Edge, Safari 16+).
Security & privacy
Two-factor authentication (TOTP)
Enable in Settings → Password & Security: scan the QR code (or enter the secret) with an authenticator app (Google Authenticator, Authy, 1Password, etc.), confirm a 6-digit code, and save the 10 one-time recovery codes. You can regenerate recovery codes or disable 2FA (password required). At login you'll then enter a code or a recovery code.
Password & sessions
Change your password (minimum 10 characters; current password required). Review and revoke active sessions as above.
OpenPGP public key
Publish your PGP public key (paste the key block) so others can encrypt to you; the fingerprint and upload date show, and you can remove it. Note: in-app encrypt/decrypt is a future enhancement — today this only publishes your key.
Privacy
Remote-image blocking and embedded-object blocking (see Preferences) protect against tracking and unsafe content. All connections are over HTTPS.
AI assistant settings
Settings → AI Assistant shows what AI features are available and your usage.
- Status: Mailbox AI (Draft, Summarise, Ask, Reply) and Outreach AI (Campaigns, Autopilot, Precision) each show Active / Not enabled. If not enabled, contact your administrator.
- Source: Bring Your Own Key (BYOK) — provide your own provider API key, verifiable with Test connection — or Platform Managed, where the administrator allocates a token pool.
- Token balance (managed mode): remaining / used / total with a color-coded bar and low- balance warnings.
- Usage: Today / This Week / This Month — total actions, total tokens, and a per-feature breakdown.
Branding & white-label (what you see)
The app adapts its identity to your organization:
- Default: "GreenmorMail" name, logo, and green color scheme.
- White-labelled: an organization's own company name, logo, colors, custom domain, and support/help links — applied across the login page, browser tab/favicon, PWA install (name/icon/theme color), and UI accents.
- Branding is resolved on load by the request's hostname (so a custom domain shows that
org's brand) and re-checked after login. On the main
mail.greenmormail.comdomain, the default GreenmorMail brand is used.
Getting started — creating your account
GreenmorMail has two kinds of account, each with its own sign-up path:
- Individual / business account — for anyone who wants professional email on their own domain. You manage your own domains and mailboxes. (In the system this role is called a user admin.) → see 08-user-admin.md.
- Partner / reseller account — for businesses that want to white-label GreenmorMail and resell mailboxes to their own customers. (This role is called a tenant admin.) → see 09-tenant-admin.md.
Both are separate from the GreenmorMail platform owner, which is internal and not covered here.
Path A — Individual / business sign-up (user admin)
This is the standard journey for getting your own professional email.
1. Register
Go to /register. Provide:
- Email address (used as your login; must be a real, deliverable address)
- Password (minimum 9 characters, with at least 1 uppercase letter, 1 special character, and 2 digits) and confirm it
There are no plans to choose and no payment at this step.
2. Verify your email
A 6-digit code is emailed to you (valid 30 minutes; a few attempts allowed before a short lockout). Enter it to confirm your address.
3. Start your free trial
As soon as your email is verified, your account is created and you're logged straight in with a 14-day free trial that includes 1 mailbox — no card required. You land on your dashboard.
4. Add your domain
From the dashboard, add the domain you want email on (e.g. yourcompany.com). You'll then
verify ownership and add the DNS records GreenmorMail shows you — see the DNS guide in
08-user-admin.md.
5. Create your mailboxes
Once the domain is verified, create mailboxes (e.g. you@yourcompany.com). During the trial
you can use your included mailbox; to add more (or after the trial), you buy mailbox
licences at checkout through the payment options your provider has set up.
In short: register → verify by code → instant 14-day trial → add domain → create mailboxes → pay only when you need more. There are no fixed "mailbox packs" — you add mailboxes as you need them.
Path B — Partner / reseller sign-up (tenant admin)
This is for businesses that want their own branded email platform to sell to customers.
1. Apply to become a partner
Go to /partner/register and provide:
- Your details — full name, email, phone, website
- Your company — company name and a platform slug (e.g.
acme, giving youacme.greenmormail.com) plus a short description of how you'll use it - Platform tier — choose the infrastructure tier that fits you:
- Custom Domain, Custom Storage, or Full Control (these are infrastructure tiers — not mailbox quantities)
- Password (same strength rules as above) and agree to the partner terms
2. Approval (if required)
Depending on platform policy, your application may be auto-approved or held for review. If it's held, you'll see a "pending" screen and be notified once approved.
3. Onboarding wizard (3 steps)
After approval you're taken to the setup wizard at /setup:
- Location — choose your country (this sets your currency; India also has a GST option for charging your customers).
- Infrastructure tier — confirm your tier; the wizard shows the one-time joining fee for that tier in your currency (a one-off fee, not a recurring subscription).
- Pay & activate — pay the joining fee through the platform's secure checkout. On success your partner account is activated.
4. Configure your platform (after activation)
Branding, domains, gateway and pricing are not part of the wizard — you set them up afterwards from your partner settings:
- Branding — your brand name, logo, colours
- Custom domains — your webmail domain (e.g.
mail.acme.com) and admin-panel domain, with the DNS records to add - Your payment gateway — connect your own gateway so you can charge your customers
- Your pricing — set what you charge customers for mailboxes, storage, and sending
Then you can start creating customer accounts and selling mailboxes. Everything a partner can do day-to-day is in 09-tenant-admin.md.
In short: apply at /partner/register → (optional approval) → 3-step wizard (location → tier → pay one-time joining fee) → set up branding, domains, gateway and pricing → start reselling.
Account requirements (both paths)
- Password: minimum 9 characters, with 1 uppercase letter, 1 special character, and 2 digits.
- Email verification: individual sign-up uses a 6-digit email code (30-minute expiry).
- Real email only: disposable/throwaway addresses and domains that can't receive mail are rejected.
- Domain ownership must be verified (DNS) before mail can be sent or received.
User admin — managing your domains & mailboxes
A user admin is the owner of an individual or business account. You manage your own organisation: your domains, mailboxes, aliases, add-ons, billing, and account. (This is different from a tenant admin/reseller — see 09-tenant-admin.md — and from the platform owner.)
You reach all of this from your admin dashboard after signing in.
Dashboard overview
Your dashboard summarises your organisation at a glance:
- Totals for domains, mailboxes, available mailbox credits, and aliases.
- Mailboxes grouped by domain, each showing storage used, sending quota, expiry status, and whether two-factor is on.
- Your recent orders (last few payments).
(AdminController::index / dashboard view)
Domain management
- Add a domain — register a domain to your account (it must not already be in use on the platform).
- Verify ownership — confirm you control the domain via a DNS token (or email token).
- Add DNS records & verify — the panel shows the exact records to add at your DNS host and checks them: MX (receiving), SPF and DMARC (sending/deliverability), and DKIM (signing).
- View / copy DNS records — a modal lists every required record with copy buttons; you can also email the DNS instructions to your IT person or registrar.
- Edit / deactivate / delete — update a domain's description, toggle it active/inactive (inactive stops delivery), or remove it.
- End-to-end encryption — turn the E2EE policy on or off for a domain.
- Allocate AI credits — distribute AI credits from your pool to specific mailboxes.
DNS records you'll add
| Record | Purpose |
|---|---|
| Ownership token (TXT) | Proves you control the domain — verify this first |
| MX | Lets the domain receive email |
| SPF (TXT) | Authorises GreenmorMail to send for your domain |
| DKIM (TXT) | Cryptographically signs your outgoing mail |
| DMARC (TXT) | Sets your deliverability/policy (recommended) |
DNS changes can take from minutes up to 24–48 hours to propagate; re-check after they do.
(DomainController: registerDomain, verifyOwnership, verifyDNS, showDNSRecords, previewDNS, sendDNSEmail, toggleActive, toggleE2ee, allocateAiCredits)
Mailbox management
- Create a mailbox — add
name@yourdomain.com(uses one mailbox credit); set its password (with complexity rules). - Edit a mailbox — display name, description, alternate email, active status.
- Change the password at any time.
- Save-to-Sent — control whether sent messages are stored in the Sent folder.
- Delete a mailbox — removes it and frees a mailbox credit.
- Usage — see real storage used (GB) and today's sending count vs. the daily limit.
- Expiry — see each mailbox's renewal date, with alerts when it's within 30 days.
- Security policy — set per-mailbox two-factor requirements and password policy.
(MailboxController: create, edit, update, destroy; MailboxSecurityController: show, updatePolicy)
Aliases & routing
- Create aliases — extra addresses (e.g.
sales@,info@) that deliver into an existing mailbox. - Edit an alias — change which mailbox it points to.
- Delete an alias, and view all aliases across your domains.
(AliasController: createAlias, updateAlias, deleteAlias, aliases)
Add-ons & upgrades
- Buy more mailboxes — purchase additional mailbox licences at checkout.
- Add storage — increase a mailbox's storage beyond the default.
- Increase sending limit — raise a mailbox's daily send quota.
- Renew mailboxes — extend expiry dates before they lapse.
- Apply a coupon — use a discount code at checkout.
(MailboxCheckoutController; PaymentController: showAddOnReview, validateCoupon)
Billing & invoices
- Transaction history — every payment with order ID, amount, currency, and status.
- Invoices — view and download PDF invoices for your records.
- Review before paying — see itemised costs before you confirm a purchase.
- Saved billing info — store name, business name, address, country/state, phone, and tax (GST) number for faster checkout.
(AdminController::transactions; InvoiceController: adminIndex, downloadInvoice; PaymentController: reviewPayment, saveBillingInfo, confirmPayment, getBillingInfo)
Profile & account
- Update your profile — name, business name, phone, address, state/country, alternate email, tax number.
- Change your login password (complexity rules apply).
- Notification preferences — manage email alerts for important account events.
- Compliance — review privacy policy, terms, and refund policy, and set any applicable preferences.
(ProfileController: profile, updateProfile; NotificationSettingsController; ComplianceController: show, save)
Your own branding (optional)
You can lightly white-label your own webmail:
- Upload a logo and favicon and set a primary colour.
- Set your company name, a custom webmail URL (e.g.
mail.yourcompany.com), and publish IMAP/SMTP addresses for desktop/mobile clients.
(UserAdminBrandingController: index, update)
API keys & AI
- API keys — create, view, and revoke keys for programmatic access to your account.
- AI settings — enable/disable AI features for your organisation, verify your AI provider key, control which users can use AI, and view token usage analytics.
(ApiKeyController: create, index, revoke; UserAiController: index, saveConfig, verifyKey, savePermissions, usageFilter)
Becoming a partner
If you'd like to resell GreenmorMail under your own brand, you can apply to become a partner from your dashboard — see 09-tenant-admin.md.
(PartnerController::applyFromDashboard)
Tenant admin — running your reseller platform
A tenant admin is a partner / reseller: you operate your own white-labelled GreenmorMail platform and sell mailboxes to your own customers. You manage those customers, your branding, your pricing and coupons, and your billing and settlement.
This is different from a user admin (an end customer who manages only their own domains and mailboxes — see 08-user-admin.md) and from the platform owner. To create a partner account, see Path B in 07-admin-onboarding.md.
You work from your partner (tenant-admin) panel after signing in.
Dashboard overview
- Live metrics — total users, domains, mailboxes (active and expired), and today's sending volume.
- Sales performance — a revenue chart with day/week/month/year views, transaction counts, and period-over-period growth.
- Things needing attention — pending customer payments, mailboxes expiring soon, and open platform invoices.
(TenantAdminController: dashboard, buildSalesChart)
Managing your customers (users)
- View all your users — everyone under your tenant, with status, contact info, and join date.
- User details — drill into a customer to see their domains, mailboxes, active licences, and recent payments.
- Activate / deactivate a user — inactive users can't sign in (reversible; their data is kept).
- Reset a user's password — they receive a reset link by email.
(TenantAdminController: users, userDetail, toggleUserActive, resetUserPassword)
Branding & custom domains
- Tenant-wide branding — upload your logo and favicon; set brand name, tagline, colours, and support contact details.
- Custom domains — set your webmail, admin-panel, and mail-server hostnames, with the DNS records to add.
- Your branding becomes the default for all your customers (a customer can still apply their own on top).
(TenantAdminController: branding, updateBranding)
Pricing, coupons & credits
- Set your pricing — decide what you charge your customers for mailboxes, storage, and sending.
- Coupons — create discount codes (percentage off, expiry date, optional total-use and per-user limits); edit or delete them later; track usage and status.
- Credits — view the credit ledger (granted/used/expired across mailbox, storage, sending, and AI credit types) and current balances for your tenant.
(TenantAdminController: createCoupon, coupons, updateCoupon, deleteCoupon, credits)
Billing, invoices & settlement
- Billing settings — your legal business name, address, tax/GST ID, invoice prefix, support contact, tax regime (GST/VAT/custom) and rates applied to invoices.
- Customer invoices — all invoices issued to your users; filter by status or search by number/buyer.
- Platform invoices — what GreenmorMail bills you, grouped by period with line items, tax, and payment status; open any one for full detail.
- Transactions — a filterable list of all customer payments (by status, service type, date range, or order ID).
- Settlement — your mandate status, collected vs. pending amounts, carry-forward balance, and daily register/close records; download settlement/reconciliation documents.
(TenantAdminController: billingSettings, invoices, platformInvoices, platformInvoiceShow, transactions, settlement; PartnerBillingController)
Email delivery configuration
- Platform email settings — choose how your users' mail is delivered.
- SMTP relay — optionally configure an outbound relay, and test the configuration before going live.
(TenantAdminController: email-settings)
Reports
- Sales report — full analytics scoped to your tenant's transactions.
- GST/tax report — tax-related transaction summaries for compliance.
(ReportController: sales, gst — scoped to your tenant)
What's different from a user admin
| Tenant admin (you) | User admin (your customer) |
|---|---|
| Manage many customer accounts | Manage only their own organisation |
| Set pricing, issue coupons, manage credits | Buy mailboxes/add-ons at your prices |
| Tenant-wide branding defaults + custom platform domains | Optional personal branding only |
| Settlement & platform invoices, full transaction view | Their own invoices & payments only |
| Configure platform email delivery | Manage domains, mailboxes, aliases directly |
(TenantAdminController vs DomainController/MailboxController/AliasController)
No sections match your search. Try a different term.
Last updated June 6, 2026
Still need a hand?
Our team is happy to help you get set up.