Aliases and Expiry
Hand out a fresh address for every sign-up, then let it expire or switch it off when it has done its job.
Why Use This Feature?
- Generates unique addresses on demand so no two sites ever share the same way to reach you.
- Expires an alias automatically so short-lived sign-ups clean up after themselves.
- Disables an alias without deleting it so the address stays reserved and can be turned back on later.
- Labels each alias so you always know where an address was used.
Address Styles
| Style | Example | When to use it |
|---|---|---|
| Words | velvet-harbor-42 | Easy to read aloud or type into a form by hand. |
| Random | k7mq2xv9pa | Hard to guess, with no words that hint at the owner. |
| Custom | trial.signup | You want a specific, meaningful address. |
Generated addresses never repeat an existing alias. Custom addresses use lowercase letters, numbers, dots, hyphens, and underscores.
Usage
# Memorable two-word address (the default style).
mm alias add -d personal -l "Online shopping"
# Random characters.
mm alias add -d personal -s random -l "Forum account"
# A custom address that expires in 7 days.
mm alias add -d personal -a trial.signup -e 7d -l "Free trial"
Every command that changes an alias saves the config and reminds you to run mm deploy to apply it.
Expiry
An expiry accepts a duration or a date:
- Durations —
30m,12h,7d, or4wfrom now. - Dates — Any ISO date or timestamp, such as
2026-12-31or2026-12-31T18:00:00Z. never— Removes an existing expiry.
# Extend or shorten an existing alias.
mm alias expire trial.signup 30d
# Keep it forever.
mm alias expire trial.signup never
The expiry is stored as an exact timestamp in expires_at. Mail arriving at or after that moment is a refusal, and it is never forwarded.
info
Expiry is checked when each message arrives, so an alias stops working on time without a redeploy. You only need to deploy when you set or change the expiry.
Disabling and Removing
# Refuse all mail but keep the address reserved.
mm alias disable velvet-harbor-42
# Start accepting mail again.
mm alias enable velvet-harbor-42
# Delete the alias entirely.
mm alias remove velvet-harbor-42
It is recommended to disable rather than remove an address you no longer want. A removed alias becomes an unknown address, and what happens to it then depends on your unknown alias action.
Subaddressing
With subaddressing on, anything after a + is ignored when matching. Mail to velvet-harbor-42+receipts@mail.example.com reaches the velvet-harbor-42 alias, and the forwarded X-Mailmask-Alias header keeps the full original address so you can see which tag was used.
Checking Status
mm alias list prints each alias with its destination, status, and label. The status is active, disabled, expired, or expires followed by the timestamp.