Stable Version 0.6.4
Published on 14 Apr by 
Created on 30 December 2017
An extension interface to the MIT-licensed S22.Imap NuGet package. Current version compiled with S22.Imap version 3.6.0.
Read More

Features of this extension

  • Maps all S22.Imap methods and properties, as well as .NET's System.Net.Mail.MailMessage and other required .NET classes used by S22.Imap.
  • No .NET objects are exposed. This is meant to avoid potential errors when trying to save and reuse objects from permanent storage. Integer connection and other identifiers are used instead of objects.
  • Random integer identifiers. If these identifiers are stored on permanent storage, or arbitrarily changed, the result is likely invalid as a connection, but a proper "No connection" error message will be displayer rather than a cryptic "Bad object" or "Array out of bounds"
  • Support for .NET Streams used by S22.Imap when retrieving message attachments and/or alternate views. This ensures the smallest amount of data is transferred for a specific mailbox operation, even for messages with multi-megabyte attachments. Streams are identified via integer identifiers.
  • All exceptions are prefixed with same string, so they can be easily identified from within OutSystems.

Remember that IMAP connections are kept during a single server request, i.e., for each Server Action call (Mobile apps) or Preparation, Screen Action or Exposed Web Service call (Web apps). On each of these server requests you need to call Connect, then Login, then the actions you need.

Features of S22.Imap

  • Supports IMAP IDLE notifications
  • Supports IMAP over SSL/TLS
  • API designed to be very easy to use
  • Allows selectively fetching parts of mail messages
  • Inherently thread-safe
  • Well documented with lots of example code
  • Robust MIME parser, tested with 100.000+ mails
  • Supports various SASL authentication mechanisms including SCRAM-SHA-1
  • Free to use in commercial and personal projects (MIT License)

Please visit the project's Web site for example usage and details documentation.


Please provide feedback and bug reports to the author on outsystems@pedrofreire.com

What’s new (0.6.4)

Version 0.6.4 changes

More bug fixes for GetMessage and GetMessages, when trying to open messages with alternate views/attachments.

Reviews (0)
Connectors, Data Connector, Components, Libraries, Developer Tools
Support Options
This component is not supported by OutSystems. You may use the discussion forums to leave suggestions or obtain best-effort support from the community, including from Pedro Freire who created this component.
S22.Imap has no dependencies.
Component Consumers
See all 1 consumers
Weekly Downloads 
Related Components
Architecture Team
A tool to discover and measure your architecture and understand how to improve
OutSystems Now
OutSystems R&D
OutSystems Now brings your OutSystems experience to any device.
Google Drive Connector
OutSystems R&D
Google Drive Connector allows your OutSystems Applications to use the Google Drive REST API to interact with your files.
More from Pedro Freire
Wit.ai Connector
Wit.ai Connector Team
Natural Language for Developers
BPT Taskbox over Email
Pedro Freire
This component brings the BPT Taskbox to your favorite device and e-mail client! Each user sets up connection details for his (IMAP) mailbox. Once that is done, the user receives new messages for each new Taskbox item available, and items are automatically removed when opened by other users.
S22.Imap Client
Pedro Freire
E-mail client example using S22.Imap as its underlying library.