Product blank

Create, delete, and rename mailboxes with IMAP

The Mail feature, a huge feature set. The first part was released with 4D v17 R4, and since then we have delivered more and more functionalities.

4D v19 is no exception, as it brings new functions to help you manage your mailboxes by programming. That includes creating, renaming, and deleting mailboxes. A mailbox is displayed as a folder in email clients such as Microsoft Outlook or Apple Mail.

Product blank

Manage IMAP flags

To allow your solution to smoothly integrate with other email clients, you often need to add information such as “already seen” or “urgent”. The IMAP protocol allows you to associate a list of flags with a message to manage this additional information. 4D v18 R6 includes a set of functions for the IMAP Transporter object to add or remove IMAP flags.

Product blank

Search emails with IMAP protocol

Sometimes you need to find all of the unread emails on your mail server and download them to display them to your client. The searchMails method does it for you! It uses the IMAP search protocol which is done entirely on the server-side. This means that it’s fast and allows you to retrieve only the desired emails.

Product blank

Receive email with IMAP protocol

In 4D v18, we introduced a new way to send emails. Then in 4D v18 R2, we added a new way to retrieve emails using POP3. Now in 4D v18 R4, we’re taking the first steps for a new way to handle the IMAP protocol. As we did for SMTP and POP3, there’s a new IMAP New transporter command to handle the IMAP protocol.

The Internet Message Access Protocol (IMAP) is an Internet standard protocol used by email clients to retrieve email messages from a mail server. This protocol makes it possible to manage multiple mailboxes, download emails, perform searches on the server, manage message state, and a lot more!

And with this first IMAP feature, you can add methods to the transporter to: have the list of the available mailboxes, select a mailbox, and receive email from the selected mailbox. Let’s see how.