I don’t think you have to be a developer to know that IMAP is a pain in the ass. Anyone who has used IMAP knows how wonky the experience can be, and as a developer if you have done more that basic folder listing and message display, you know IMAP is a headache. The Context.IO API is working to alleviate common IMAP headaches and it's now out of beta.
The company is aiming to provide a much more solid way to integrate a user’s email into any application:
In IMAP, folders are separate, and to fetch desired data, it’s necessary to search each folder individually to extract what’s needed--with Context.IO the whole mailbox is one database and folders are optional filters.
In IMAP, there are no fixed/persistent message IDs, just a sequence ID and UID, but the sequence ID is reset every time a client deletes a message and the UID is set on a per-folder basis, and can be invalidated by the server at any time--context.IO assigns a unique and persistent ID to every message.
Using IMAP as a live datasource is not realistic when a simple query like history of messages with a contact turns into long sequence of IMAP commands--Context.IO takes care of that by maintaining its own metadata index exposed via an HTTPS interface that can be used as a live datasource.
Context.IO goes beyond what IMAP exposes, and provides five key resources on top of standard email boxes: contacts, files, messages, threads and webhooks. Emails are much more than just folders and lists of messages, your email is a knowledgebase.
Context.IO API replaces multiple complex IMAP requests with simple RESTful API requests with JSON responses, providing a much more stable connection with mailboxes that scales and provides more flexibility than standard IMAP.