Skip to content

Mail clients: IMAP and POP3

Every mailbox can be read over IMAP and POP3 with per-mailbox credentials. Use it to test a real mail client end to end, or to plug in tooling that already speaks those protocols.

Protocol Host Ports
IMAP mail.mailcatchr.com 993 (TLS), 143 (STARTTLS)
POP3 mail.mailcatchr.com 995 (TLS), 110 (STARTTLS)

Open the mailbox, then Settings → Access credentials → New credential. Each credential is scoped to that one mailbox. The username is generated (it starts with the mailbox id) and the password is shown in the dashboard; Members can reveal it, Admins can create and revoke.

IMAP exposes a single INBOX with the commands mail clients need: SELECT, FETCH (including BODY[], BODYSTRUCTURE, ENVELOPE), UID FETCH, SEARCH, IDLE, STORE. Flag changes are accepted but not persisted, so a message read by one client is still unread for the next.

POP3 supports USER/PASS, STAT, LIST, UIDL, RETR, TOP, DELE. Deleting over POP3 marks the message deleted; the retention sweep removes it.

Tested with MailKit, Apple Mail and Thunderbird.

using var client = new ImapClient();
await client.ConnectAsync("mail.mailcatchr.com", 993, SecureSocketOptions.SslOnConnect);
await client.AuthenticateAsync(username, password);
var inbox = client.Inbox;
await inbox.OpenAsync(FolderAccess.ReadOnly);
var uids = await inbox.SearchAsync(SearchQuery.SubjectContains("Reset your password"));
var message = await inbox.GetMessageAsync(uids[^1]);