Fact-checked by Grok 2 weeks ago

Internet Message Access Protocol

The Internet Message Access Protocol (IMAP) is an application-layer protocol defined in 9051 that allows clients to access, retrieve, and manipulate electronic mail messages stored on a remote over a /IP connection, enabling users to manage mailboxes and synchronize across multiple devices without requiring local storage of messages. IMAP operates in a client- model, where the client connects to the on port 143 for unencrypted sessions or port 993 for secure sessions using (TLS), authenticating via mechanisms such as or SASL before entering states like Authenticated, Selected (for a specific mailbox), or Logout. Key capabilities include creating, deleting, and renaming mailboxes; searching, fetching, and flagging messages; and supporting offline resynchronization through unique identifiers (UIDs) or sequence numbers to handle concurrent access from multiple clients. Unlike the (POP), which typically downloads messages to a local device and removes them from the , IMAP keeps emails on the by default, facilitating real-time updates and multi-device compatibility. Developed in 1986 by Mark Crispin at as a remote access to address limitations in earlier systems, IMAP has evolved through several versions, including IMAP2 (RFC 1176) and IMAP2bis, leading to the standardized IMAP4 in 1996. The current iteration, IMAP4rev2 (published in 2021 as 9051), obsoletes the previous IMAP4rev1 ( 3501 from 2003) by incorporating clarifications, removing obsolete features, enhancing UTF-8 support for international characters, and adding extensions like the MOVE command for efficient message relocation. This evolution ensures IMAP remains a foundational for modern systems, supporting features such as for server notifications of new mail and LIST-EXTENDED for hierarchical navigation.

Overview

Role in Email Retrieval

The Internet Message Access Protocol (IMAP) is an protocol defined in 9051 that enables clients to access and manage electronic mail messages stored on a remote . It operates within the TCP/ suite, typically using port 143 for unencrypted connections or port 993 for secure connections with (TLS). IMAP facilitates the retrieval of without requiring full downloads to the client device, allowing users to interact with messages as if they were local files while keeping the original data centralized on the . In the IMAP client-server model, email clients—such as applications, apps, or interfaces—establish a session with an IMAP to view, search, , delete, or move in . The acts as the authoritative repository, responding to client commands with data or status updates transmitted over a reliable . This supports efficient operations like partial fetching of headers or bodies, minimizing use compared to transferring entire emails. IMAP is designed to accommodate multiple clients accessing the same concurrently, ensuring integrity and across devices through mechanisms like unique identifiers (UIDs) and notifications of changes. For instance, actions performed on one device, such as marking a as read, can be reflected immediately for other connected clients via unsolicited responses from the . This multi-client capability preserves centralized storage, allowing seamless continuity regardless of the access point. IMAP was developed to overcome limitations in earlier protocols like POP3, which focus on downloading messages to a single client and often removing them from the , by emphasizing persistent, server-based storage for broader accessibility.

Core Principles and Design Goals

The Internet Message Access Protocol (IMAP) was designed to enable dynamic access to electronic mail stored on a central , allowing clients such as workstations or personal computers to interact with mailboxes in a flexible, efficient manner. This architecture emphasizes server-centric management, distinguishing IMAP from client-heavy protocols by keeping messages on the until explicitly retrieved or manipulated, which supports its role in email retrieval across diverse environments. A core principle of IMAP is support for disconnected operation, where clients can operate offline and resynchronize state upon reconnection without preserving long-term session data on the . This is facilitated by persistent unique identifiers (UIDs) assigned to messages on the server, ensuring reliable multi-device even if clients disconnect intermittently. Message immutability further underpins this, as server-stored messages remain unchanged unless explicitly modified by a client command, preventing conflicts in shared access scenarios. To optimize and computational resources, IMAP prioritizes server-side , enabling remote , , and selective fetching of attributes or rather than transferring entire mailboxes to the client. This reduces network overhead, particularly in low- settings, by allowing operations like analysis or keyword searches to occur entirely on the server before results are sent. The protocol's extensibility is another foundational goal, accommodating future enhancements beyond initial text-only formats, such as attachments, through mechanisms like declarations and experimental command prefixes. IMAP's design also highlights structured organization via hierarchical structures, using a single hierarchy separator to delineate nested folders, with the INBOX serving as the primary user . User-defined states are managed through flags, including predefined system flags (e.g., \Seen for read status, \Answered for replies, \Flagged for importance) and support for custom keywords, enabling personalized organization without altering message content. Conceptually, IMAP separates transport mechanisms, relying on TCP/IP for reliable data streams (typically port 143), from the application-layer logic of mail access, promoting portability across varied network infrastructures while deferring message submission to protocols like SMTP.

Historical Development

Early Iterations (IMAP to IMAP2)

The Internet Message Access Protocol (IMAP) was developed in 1986 by Mark Crispin at as a remote protocol, specifically to address the limitations of the (POP), which downloaded messages to a single local device and hindered multi-device or multi-user . The initial implementation targeted the , Stanford's SUMEX-AIM mail system, enabling dynamic server-side retrieval without full local downloads. This original interim IMAP provided foundational fetch and store operations but featured incompatible syntax without command-response tagging, limiting its . It was rapidly refined and replaced by IMAP2, formalized in 1064 in July 1988, which expanded to include basic commands for selecting, fetching, storing, and copying messages within a , primarily focused on the INBOX for single-mailbox access. IMAP2 emphasized server-maintained state to support remote operations on electronic mail repositories. From 1988 to 1990, IMAP2 advanced via internal drafts and revisions, culminating in RFC 1176 in August 1990, which introduced disconnected mode—allowing clients to operate without persistent local state while relying on server-side persistence—and basic search functions for filtering messages by criteria like date, flags, or text. These enhancements targeted key challenges, such as enabling concurrent multi-user access to shared mailboxes and minimizing local storage demands relative to POP's download-centric model, though the protocol remained experimental without formal IETF standardization.

Standardization Phases (IMAP3 to IMAP4)

The standardization of the Internet Message Access Protocol (IMAP) progressed through several phases under the auspices of the (IETF), beginning with efforts to refine and unify earlier experimental versions into a more robust standard. IMAP3, documented in RFC 1203 published in February 1991, represented an attempt to evolve IMAP2 by introducing abstractions for mailboxes, enhanced search capabilities supporting multiple simultaneous queries, and protocol negotiation for version and feature compatibility. Proposed by James Rice of as a counterproposal to the IMAP2bis draft, it aimed to address limitations in prior iterations amid the growing need for multimedia mail support and better client-server interoperability. However, IMAP3 saw limited adoption due to its complexity and lack of community consensus, leading the Internet Engineering Steering Group (IESG) to reclassify it as a Historic protocol in 1993. In parallel, the IMAP Working Group opted to base further development on IMAP2bis, a revised and extended version of IMAP2 outlined in RFC 1176 (August 1990) and subsequent drafts like the October 1993 IMAP2bis document. IMAP2bis served as a bridge protocol, incorporating improvements such as better handling of (Multipurpose Internet Mail Extensions) for multimedia content, refined error responses, and support for additional attributes to facilitate broader implementation. These enhancements addressed practical deployment issues in existing systems, making IMAP2bis the precursor despite not being formally standardized as an RFC, and it informed the design of subsequent versions by emphasizing compatibility and extensibility. The culmination of these efforts arrived with IMAP4, first specified in RFC 1730 (December 1994) as a Proposed Standard, with a revision as IMAP4rev1 in RFC 2060 (December 1996), which introduced the command for clients to discover server-supported features and extensions at connection time. This version also added support for international names via modified encoding and commands like for efficient status queries without selecting the . RFC 2060 was later obsoleted by RFC 3501 in March 2003, which clarified ambiguities, mandated stricter syntax adherence, and reinforced considerations without altering core functionality. Further refinement occurred with the release of IMAP4rev2 in RFC 9051 (August 2021), which obsoleted RFC 3501 and introduced enhancements for , including mandatory Net-Unicode support for mailbox names and default charset handling in searches. improvements mandated the use of STARTTLS for encryption on cleartext ports and deprecated insecure methods like plain over non-TLS connections, while adding new system flags (e.g., $Forwarded, ) and the ENABLE command for selective extension activation. As of 2025, no major revisions to IMAP4rev2 have been published, maintaining its status as the current standard.

Protocol Fundamentals

Connection States and Session Management

The Internet Message Access Protocol (IMAP4rev2) manages client-server interactions through a structured lifecycle defined by four primary connection states: Not Authenticated, Authenticated, Selected, and Logout. These states govern the validity of commands and ensure orderly progression from initial connection to session termination, preventing unauthorized or invalid operations. The protocol enforces state-specific command restrictions—for instance, most data access commands are only permissible in the Selected state—to maintain and . A session begins with a TCP connection to the server on port 143 for standard IMAP or port 993 for IMAP over TLS (IMAPS). Upon connection, the server immediately sends an untagged greeting response to indicate the initial state, typically "* OK IMAP4rev2 Server ready" for the Not Authenticated state, though it may indicate PREAUTH if the connection starts in the Authenticated state. This greeting, prefixed with an asterisk (*), notifies the client of the server's readiness and any initial capabilities. Transition from the Not Authenticated state to Authenticated occurs via the command, which requires a valid username and password; successful execution yields a tagged response such as "A001 LOGIN completed," where "A001" is the client's command tag. The LOGIN command is invalid in other states and fails with a "NO" or "BAD" tagged response if authentication credentials are rejected or malformed. In the Authenticated state, clients may issue the ENABLE command to explicitly enable supported extensions (such as CONDSTORE), which modifies server behavior for the session by enabling specific untagged responses; this command takes one or more capability names as arguments and can be issued multiple times additively. From the Authenticated state, the client advances to the Selected state by issuing the SELECT command to choose a in read-write mode or EXAMINE for read-only access. SELECT, for example, prompts the to return untagged responses detailing mailbox status, such as "* 18 EXISTS" for message count and "* OK [UIDVALIDITY 3857529045] UIDs valid," enabling the client to track changes; if another mailbox was previously selected, the sends "* OK [CLOSED]" before selecting the new one. These commands are restricted to the Authenticated state; attempts in other states result in error responses. The CLOSE command reverts the from Selected back to Authenticated, deselecting the current and automatically expunging any flagged-for-deletion messages if the selection was read-write. Alternatively, the UNSELECT command, valid only in the Selected , deselects the current without expunging \Deleted messages, returning to the Authenticated and freeing resources; it takes no arguments and results in an response upon success. To terminate the session from any , the LOGOUT command shifts to the Logout , prompting a final "* BYE LOGOUT requested" untagged response before the closes the . Error handling relies on a dual response system: tagged responses match the client's command identifier (e.g., "tag OK" for success, "tag NO" for permanent failure, or "tag BAD" for syntax errors) to confirm command outcomes, while untagged responses prefixed with "*" deliver asynchronous notifications, such as existence updates or alerts, independent of specific commands. This mechanism ensures reliable state tracking and event propagation, with servers required to send tagged completions for every valid client command.

Basic Commands and Responses

IMAP interactions consist of client-initiated commands and responses, structured to ensure reliable communication over a text-based . Client commands are prefixed with a unique , such as "A001", to allow matching with corresponding responses, while -initiated or updates use an untagged format prefixed with "". This tagged command format enables asynchronous operation, where s can send untagged responses, like " 2 EXISTS" to indicate the number of messages in a , independently of the client's immediate request. Among the core commands, allows a client to query the 's supported features and extensions without arguments, prompting the to respond with an untagged list of capabilities followed by an completion. For example, a client might send "A001 ", receiving "* IMAP4rev2 AUTH=" and "A001 completed". The NOOP command performs no operation but serves to keep the alive and poll for updates, such as new untagged responses, and requires no arguments, resulting in an response unless a protocol error occurs. LOGOUT terminates the session gracefully, prompting a required untagged BYE response from the before completing with , ensuring resources are released properly. These commands operate within the protocol's states, such as authenticated or selected, to maintain session integrity. Server responses to commands fall into three primary types: for successful completion, NO for operational failures, and BAD for syntax or protocol errors. An response, like "A001 LOGIN completed", confirms the command's success and may include human-readable text for details. NO indicates a failure in execution, such as "A001 NO login failure: invalid credentials", while BAD signals invalid command syntax, for instance, "A001 BAD command unknown or arguments invalid". Literal strings in responses convey binary or unstructured data, prefixed with an octet count in curly braces, such as "{120}", followed by the actual data on the next line after client acknowledgment. Parsing of commands and responses adheres to strict rules for , with all lines terminated by a and line feed (CRLF). Structured data, such as message flags or mailbox attributes, is represented using parenthesized lists, enabling nested representations like "(FLAGS (\Seen \Deleted))" to denote permanent flags applicable to . This format, defined in the protocol's formal syntax, ensures that complex information is transmitted in a machine-readable manner without .

Message Access and Management

Fetching and Manipulating Messages

In the Internet Message Access Protocol (IMAP), the FETCH command enables clients to retrieve specific from individual messages stored on the , supporting efficient access to without necessitating a full download. This command operates on message sequence numbers or unique identifiers (UIDs), allowing retrieval of attributes such as , internal dates, or structures, as well as the text itself. For instance, the BODY[] specifier retrieves the complete text, encompassing both headers and in their raw form. Similarly, BODY.PEEK[HEADER] fetches only the headers without implicitly setting the \Seen , which is useful for previewing while preserving the unread status. Partial fetches further enhance efficiency, such as BODY[1<0><512], which downloads the first 512 octets of the first MIME part, enabling bandwidth optimization for large or multipart messages. Message manipulation in IMAP primarily occurs through the STORE command, which alters message flags or other data items on the server side, thereby updating the message's state without requiring a full transfer. For example, the command STORE 1 +FLAGS (\Deleted) adds the \Deleted flag to the first message in the sequence, marking it for potential later removal via EXPUNGE, while +FLAGS or -FLAGS modifiers handle additions or removals of system or user-defined flags like \Answered or \Flagged. The COPY command complements this by duplicating one or more messages to another mailbox, such as COPY 1:5 "Archive", which transfers messages 1 through 5 while retaining the originals unless followed by a delete operation. The MOVE command provides an atomic alternative for relocating messages to a destination mailbox, performing a copy followed by an immediate expunge of the originals in a single operation to minimize race conditions in multi-client environments; it supports UID variants for persistent referencing. These operations can be prefixed with UID for permanence, as in UID STORE or UID COPY, ensuring they target messages by their unchanging identifiers rather than volatile positions. IMAP distinguishes between sequence numbers and UIDs to manage message references reliably across sessions and server changes. Sequence numbers are positional indices starting from 1 for the current mailbox contents, but they are volatile and reorder following actions like , which permanently removes deleted messages. In contrast, UIDs provide a 32-bit unique, monotonically increasing value assigned to each message upon creation, remaining constant throughout its lifetime in the mailbox and enabling clients to track and resume operations seamlessly even after disconnections or modifications. This UID mechanism is essential for , , and commands, preventing errors from sequence shifts and supporting persistent message handling. The design of partial fetches in IMAP, integrated with MIME support via BODYSTRUCTURE responses, allows clients to request only necessary portions of structured messages, such as text/plain parts or attachments, thereby minimizing data transfer and improving performance over low-bandwidth connections. This capability, combined with flag-based manipulations, facilitates server-side organization and access, keeping messages centralized while enabling selective retrieval and updates.

Mailbox Operations and Searches

IMAP provides a set of commands for managing mailbox hierarchies, enabling clients to organize and navigate email storage on the server. The LIST command enumerates available mailboxes matching a specified pattern, returning attributes such as whether a mailbox is selectable or has children, along with the hierarchy delimiter used by the server. This allows clients to discover the structure of folders without prior knowledge. For hierarchy management, the CREATE command establishes a new mailbox with the given name, automatically forming any necessary parent directories if they do not exist. Conversely, the DELETE command permanently removes a specified mailbox, provided it contains no messages and is not the reserved . The RENAME command updates the name of an existing mailbox, preserving its contents and hierarchy while creating intermediate directories as needed. To customize visibility, the SUBSCRIBE command adds a mailbox to the user's active list, making it appear in client interfaces, while an UNSUBSCRIBE counterpart removes it without deleting the mailbox itself. These operations support efficient folder organization in multi-user environments. The NAMESPACE extension, defined in , integrates by allowing clients to query server-defined prefixes for personal, other users', and shared namespaces, facilitating automatic mailbox creation and listing across different scopes. For instance, personal namespaces typically include the user's own folders like INBOX, while shared namespaces enable access to collaborative mailboxes. The SEARCH command enables server-side queries on message sets within a selected mailbox, returning a list of matching message sequence numbers without requiring full message downloads. Criteria include FROM for sender matching, SINCE for date-based filtering, and logical operators like OR and AND to combine conditions. Additional keywords such as SUBJECT for header text and BODY for content scanning allow targeted searches, with servers often optimizing these operations through indexing to avoid processing entire message bodies. Custom flags can also serve as search criteria, enhancing flexibility for user-defined categorizations. For consistency across sessions, the UID variant of SEARCH returns unique identifiers instead of sequence numbers, which remain stable despite mailbox changes. This server-side efficiency minimizes bandwidth usage and supports complex queries in large mailboxes.

Comparisons with Other Protocols

Differences from POP3

IMAP and POP3 are both client-server protocols for retrieving email messages from a mail server, but they differ fundamentally in their architectural approaches and capabilities. POP3, defined in , is designed primarily for downloading messages to a client device, often with deletion from the server, whereas IMAP4rev2, specified in , emphasizes server-side storage and manipulation to support remote access and synchronization. These differences stem from IMAP's focus on multi-access environments versus POP3's simpler, single-client model. One key distinction lies in message handling: POP3 typically downloads entire messages to the client using the RETR command and optionally deletes them from the server upon session end with QUIT, leaving no persistent server copy unless explicitly configured otherwise. In contrast, IMAP leaves messages on the server by default, allowing clients to access them remotely without mandatory download or deletion, as facilitated by commands like FETCH for selective retrieval. This server-centric design in IMAP enables ongoing availability, while POP3's download-and-delete paradigm suits offline use but risks data loss if the client fails. Regarding state management, POP3 lacks persistent flags or advanced server-side queries; it uses basic commands like STAT for message counts but does not support user-defined states beyond deletion marking, which is only finalized in the UPDATE state. IMAP, however, provides system flags such as \Seen, \Answered, \Deleted, and \Flagged, which can be stored and modified server-side via the STORE command, persisting across sessions for consistent state tracking. Additionally, IMAP's SEARCH command allows complex server-side queries based on criteria like dates, subjects, or flags, whereas POP3 offers no equivalent, requiring clients to download messages for local filtering. For multi-device support, POP3's limited synchronization—relying on optional UIDL for unique identifiers but without mechanisms to prevent duplication across sessions—can lead to redundant downloads or missed updates when accessing from multiple clients. IMAP addresses this through unique identifiers (UIDs), which are persistent and ascending per mailbox, combined with UIDVALIDITY for resynchronization, ensuring changes like flag updates or deletions propagate across devices. The EXAMINE command further supports read-only access to mailboxes without altering states like \Recent, ideal for concurrent multi-client scenarios, unlike POP3's TRANSACTION state, which assumes exclusive access. In terms of bandwidth usage, POP3 generally requires full message transfers for retrieval, as its TOP command (optional) fetches only headers and a limited body preview, but complete access demands downloading the entire message. IMAP optimizes this with partial fetches via the FETCH command, allowing clients to retrieve specific sections (e.g., headers or body parts) using BODY[
] syntax, and supports updates through server notifications like EXISTS or EXPUNGE responses during an open connection. This reduces data transfer compared to POP3's bulk-oriented approach, particularly in low-bandwidth or frequent-sync environments.

Relation to SMTP and Web-Based Access

The Internet Message Access Protocol (IMAP) complements the Simple Mail Transfer Protocol (SMTP) by focusing on email retrieval and server-side management, while SMTP handles the submission and transmission of outgoing messages. In typical mail user agent (MUA) configurations, such as desktop clients, IMAP enables users to access, organize, and manipulate messages stored on the server without downloading them permanently to the local device, whereas SMTP is used separately to relay emails from the client to the recipient's server. This division of labor ensures efficient email handling, with IMAP maintaining synchronization across devices and SMTP ensuring reliable delivery. In contrast to web-based email access, which relies on HTTP for direct interaction, IMAP provides a standardized, protocol-based interface for native clients to retrieve and manage messages. Services like employ HTTP for their interfaces, allowing users to view and compose through a , but they often support IMAP as a backend for third-party clients, enabling API-like access to the same mailbox data. This setup allows seamless integration for users preferring or apps over browser-based sessions, though typically offers additional features like integrated search and attachments handled via HTTP. Many email providers implement hybrid systems that leverage IMAP for synchronization in native clients while using protocols like for and mobile interfaces. For instance, and utilize IMAP to sync folders and states across devices, ensuring consistency with the provider's interface, which may employ for broader push notifications and calendar integration. These hybrids facilitate multi-device access without data duplication, as changes made via IMAP in one client propagate to the view. A key limitation in IMAP's integration is its lack of support for email submission, necessitating a separate SMTP connection with authentication (SMTP AUTH) for sending messages from clients. This separation requires MUAs to configure distinct credentials and ports for IMAP retrieval and authenticated SMTP submission, potentially complicating setup and increasing vulnerability if authentication is not properly secured.

Advantages and Limitations

Key Strengths Over Alternatives

IMAP offers significant advantages in supporting multi-device environments, where multiple clients can access and manage the same mailbox concurrently without data inconsistencies. Unlike POP3, which typically downloads messages to a single client and removes them from the server, IMAP maintains all messages and their metadata on the server, enabling real-time synchronization of changes such as flag modifications and deletions across devices. This is achieved through persistent unique identifiers (UIDs) assigned to messages in ascending order, allowing clients to track and resynchronize state across sessions reliably. System flags like \Seen, \Answered, and \Deleted propagate server-wide via the STORE command, ensuring that actions in one client (e.g., marking a message as read) are immediately visible in others. Deletions are handled softly with the \Deleted flag and finalized via EXPUNGE, which removes marked messages and sends untagged notifications to connected clients, preventing desynchronization. In contrast, POP3 lacks such server-side state management, often leading to duplicated or lost changes when switching devices. Another key strength of IMAP lies in its bandwidth efficiency, particularly for users with limited or intermittent connectivity, as it supports selective rather than full message downloads. The FETCH command allows clients to retrieve only specific components, such as message headers (BODY[HEADER]) or portions of the body (BODY[TEXT]<<start: length>>), minimizing unnecessary transfers— for instance, a client can fetch just headers to scan for relevant emails before downloading full content. Server-side searches further enhance this by enabling complex queries (e.g., by date, sender, or keywords) without transmitting the entire to the client; the SEARCH command returns only matching sequence numbers or UIDs, allowing targeted fetches thereafter. These capabilities are extensible, supporting criteria like HEADER fields or size thresholds, which reduce data overhead in large mailboxes. POP3, by comparison, requires downloading full messages via RETR or limited headers via the optional TOP command, with no native server-side search, resulting in higher usage for similar tasks. IMAP excels in facilitating disconnected operation, where clients can work offline and synchronize seamlessly upon reconnection, a feature ill-suited to POP3's download-and-delete model. Clients messages locally using UIDs for identification, and upon reconnecting, they can query (e.g., recent changes via ) and apply pending operations like updates or deletions without reprocessing the entire . The EXPUNGE command ensures that server-side deletions are reflected accurately, while unilateral server notifications (e.g., for new arrivals via EXISTS) aid in resolving offline divergences. This UID-based persistence is explicitly designed for offline and disconnected clients, enabling robust resynchronization even after prolonged disconnects. In POP3, offline work often risks permanent data loss on the server post-download, with no standardized mechanism for uploading changes back. Beyond core access, IMAP provides advanced features that extend its utility in modern email ecosystems, including granular MIME handling, real-time notifications, and sophisticated searches not available in POP3. The FETCH command supports direct access to specific MIME parts (e.g., BODY for an attachment or BODY[HEADER.FIELDS] for custom headers), allowing efficient rendering of multipart messages without fetching irrelevant sections. For push notifications, the extension (RFC 2177) lets clients enter a listening state to receive immediate server updates on new messages, flag changes, or expunges, eliminating the need for periodic polling and reducing latency. The server sends asynchronous responses like EXISTS or EXPUNGE during IDLE, which clients acknowledge with DONE to resume normal commands. Meanwhile, extensible searches via SEARCH accommodate diverse criteria (e.g., CHARSET for international text or custom extensions), enabling powerful filtering that POP3 cannot perform server-side. As of 2023, IMAP4rev2 further enhances these with the MOVE command for atomic relocation of messages between mailboxes and UID EXPUNGE for selective removal of deleted items, improving efficiency in multi-mailbox management and . These elements collectively make IMAP more adaptable to complex, multi-client workflows than its simpler predecessor.

Notable Weaknesses and Challenges

IMAP's design, which emphasizes server-side storage and real-time access, imposes significant resource demands on servers compared to protocols like POP3 that facilitate one-time downloads and local storage. Persistent client connections required for features such as notifications and frequent header consume substantial CPU, , and , particularly when handling multiple concurrent users or large volumes of . For instance, syncing headers for large mailboxes can lead to high resource utilization and performance delays, as servers must repeatedly process and transmit without deleting messages from storage. The protocol's intricate command structure, including unique identifiers (UIDs), message flags, and connection states, presents a steep learning curve for developers and implementers, especially for straightforward email retrieval tasks. Managing UIDs, which remain persistent within a mailbox but require validation via UIDVALIDITY across sessions, alongside flags like \Seen or \Deleted, demands precise handling to avoid errors in client-server interactions. Poorly implemented clients or servers can exacerbate this complexity, leading to unreliable behavior in basic operations due to the protocol's formal syntax and state transitions outlined in its specification. In multi-client environments, IMAP's shared and model introduces risks of synchronization conflicts, such as inconsistent updates (e.g., read ) across devices if clients do not properly coordinate changes. While the supports permanent flags for cross-client visibility, session-only flags like \Recent can cause discrepancies without meticulous design, potentially requiring conditional operations to resolve disputes between concurrent writers. Scalability becomes a challenge with large mailboxes, where search operations can slow considerably due to the need to scan extensive datasets on the , lacking native optimizations for massive archives. Additionally, the absence of built-in data compression in core IMAP increases bandwidth overhead for transmitting message bodies and attachments, though this is mitigated by extensions such as COMPRESS.

Security Features

Authentication Mechanisms

IMAP employs several authentication mechanisms to verify user identity during the login process, primarily through the command and the more secure AUTHENTICATE command, which leverages the (SASL) framework as defined in RFC 4422. These mechanisms allow clients to authenticate without necessarily transmitting passwords in , though security depends on the chosen method and underlying transport protection. Servers advertise supported mechanisms via the CAPABILITY command, enabling clients to select appropriate options and fallback if needed. The simplest authentication method is the command, which transmits the username and password directly in to the server. This approach, specified in 9051, transitions the connection from the "Not Authenticated" state to "Authenticated" upon success but is inherently insecure over unencrypted channels, as it exposes credentials to interception; it is discouraged unless protected by TLS or Implicit TLS, and modern servers advertise the LOGINDISABLED capability on cleartext ports to disable it without encryption. For enhanced security, IMAP supports the AUTHENTICATE command, which integrates SASL mechanisms to perform challenge-response authentication without sending cleartext passwords. Servers must support AUTH=PLAIN (RFC 4616) over protected channels, and RFC 9051 recommends non-plaintext mechanisms such as SCRAM-SHA-256 (RFC 5802) or GSSAPI for protection against replay attacks and . Legacy mechanisms like CRAM-MD5 (RFC 2195) and DIGEST-MD5 (RFC 2831, deprecated by RFC 6331) may still be implemented for but are not recommended in modern deployments. In contemporary deployments, particularly with cloud services, OAuth 2.0 integration via SASL offers token-based authentication, as standardized in RFC 7628. This mechanism, such as OAUTHBEARER, allows clients to present access tokens obtained from an authorization server instead of passwords, reducing credential exposure and enabling delegated access; implementations like XOAUTH2 in services such as and exemplify this for IMAP sessions. Servers indicate OAuth support through responses (e.g., "AUTH=OAUTHBEARER"), allowing clients to query and select it dynamically.

Encryption and Data Protection

The Internet Message Access Protocol (IMAP) supports encryption primarily through (TLS) to secure communications between clients and servers. One key mechanism is STARTTLS, which allows clients to upgrade an existing IMAP connection on port 143 to a TLS-encrypted session via the STARTTLS command. This approach enables the server to advertise the STARTTLS capability in response to the command, after which the client initiates the TLS handshake only if supported, ensuring compatibility with legacy systems while enhancing security when available; per RFC 8314, new implementations must mandate TLS 1.2 or later. For connections requiring encryption from the outset, IMAP uses implicit TLS, commonly known as IMAPS, on dedicated port 993. In this mode, the TLS handshake begins immediately upon establishing the connection, without an initial plaintext phase, providing a more straightforward as recommended for modern deployments. This method avoids the negotiation overhead of STARTTLS and is the preferred approach for new implementations to minimize exposure to initial unencrypted traffic. Servers must support both STARTTLS on port 143 and implicit TLS on port 993. These TLS mechanisms protect IMAP data by encrypting all commands, responses, and message content exchanged between the client and server, thereby preventing attacks that could capture sensitive information such as email headers, bodies, or authentication details in transit. Additionally, TLS supports server authentication through validation, where clients verify the server's identity against trusted certificate authorities to ensure the connection is to the legitimate host, as mandated by RFC 8314 for IMAP implementations. Despite these protections, IMAP remains vulnerable to man-in-the-middle (MITM) attacks if TLS is not enforced or if certificate validation is bypassed, allowing attackers to intercept or impersonate sessions in untrusted networks. To mitigate such risks, RFC 8314 obsoletes cleartext IMAP usage and requires new client and server implementations to mandate TLS (version 1.2 or later) by default, with mail service providers encouraged to disable unencrypted ports promptly. This standard, published in 2018, establishes as essential for privacy in access protocols like IMAP.

Extensions and Modern Usage

Standardized Extensions

The Internet Message Access Protocol (IMAP) has been extended through a series of standardized enhancements defined in (RFC) documents by the (IETF). These extensions build upon the core protocol to address specific needs such as real-time notifications, namespace management, access controls, and efficient searching, while maintaining via the command for discovery. One foundational extension is , specified in 2177, which enables server-initiated push notifications for changes, thereby reducing the need for client polling. This extension allows a client to enter an idle state by issuing the command, prompting the server to send immediate untagged responses for events like new messages (EXISTS), deletions (EXPUNGE), or flag updates. The server continues monitoring the selected and delivers updates in until the client terminates the state with a DONE command, with a recommended maximum idle duration of 30 minutes to prevent connection timeouts. This mechanism supports efficient clients by minimizing and resource usage compared to periodic FETCH or NOOP commands. The extension, defined in RFC 2342, facilitates the discovery and navigation of mailbox hierarchies in multi-user environments. It introduces the command, which returns information about three primary namespace types: personal (user-specific mailboxes, often starting with INBOX), other users' (for accessing peers' mailboxes with permissions), and shared (for collaborative folders). Each namespace includes a (e.g., "#" for shared) and a hierarchy delimiter (e.g., "/" or "."), enabling clients to construct valid mailbox names dynamically, such as "user/john/Inbox" or "#shared/team". Servers may support multiple namespaces per type, and the response uses untagged format to list prefixes and optional extension parameters, promoting in diverse server configurations. Access control is enhanced by the ACL extension in RFC 4314, which provides fine-grained permissions management for mailboxes using access control lists (ACLs). An ACL consists of pairs associating identifiers (e.g., user names or "anyone" for public access) with rights, such as 'l' for lookup (visibility in LIST commands), 'r' for read (SELECT and STATUS), 'w' for write flags, 'i' for insert (APPEND or COPY), 't' for delete messages, and 'a' for administration (including SETACL). Commands like SETACL, DELETEACL, GETACL, LISTRIGHTS (to query possible rights), and MYRIGHTS (for a user's own rights) allow administrators to configure and inspect these lists directly over IMAP. This extension supports delegated administration in shared systems, ensuring secure multi-user access without relying on external tools. For improved search efficiency, the SORT extension (RFC 5256) enables server-side ordering of search results, avoiding sorting of large datasets. The SORT command combines search criteria with sort keys (e.g., for sent date in UTC, SUBJECT for extracted text without prefixes like "Re:", or SIZE), producing an untagged response with sorted unique identifiers (UIDs) or sequence numbers. It supports ascending order by default, with REVERSE for descending, and handles ties via sequence numbers; charsets like ensure compliance. This is particularly useful for threaded views or chronological displays, as it leverages server resources for complex queries. The CONDSTORE extension, outlined in RFC 7162, introduces persistent modification sequences for tracking state changes across sessions, facilitating efficient resynchronization. Each and receives a monotonically increasing 64-bit mod-sequence value, updated on alterations like changes or deletions. Clients can use CHANGEDSINCE in FETCH to retrieve only modified items since a specified sequence, UNCHANGEDSINCE in STORE for conditional updates, and HIGHESTMODSEQ in STATUS for the latest value. The MODSEQ fetch attribute provides per-message sequences, enabling clients to detect conflicts or synchronize flags without full mailbox scans. This extension, often paired with QRESYNC for broader resync, reduces in multi-device scenarios. Recent extensions include LIST-METADATA (RFC 9590, May 2024), which enhances the LIST command to return mailbox annotations and in a single response, reducing the need for additional commands and improving efficiency. The JMAPACCESS extension (RFC 9698, January 2025) allows IMAP clients to access JMAP ( Message Access Protocol) capabilities through IMAP, enabling hybrid use of protocols for advanced features like event notifications. MESSAGELIMIT (RFC 9738, March 2025), an experimental extension, enables servers to announce limits on the number of messages processed in commands like FETCH or SEARCH (recommended minimum 1000), helping clients manage resources and avoid errors. As of November 2025, IMAP continues to evolve with new extensions building on IMAP4rev2 ( 9051).

Implementations in Contemporary Systems

Dovecot serves as a widely adopted open-source IMAP server, renowned for its high in handling large mailboxes while supporting standard formats like and , along with IMAP4 protocol capabilities including efficient indexing for quick access. Cyrus IMAP provides robust enterprise-scale functionality as a and open-source , featuring support for domains, shared mailboxes, and integration with various systems to manage high-volume deployments. Microsoft Exchange incorporates IMAP4 support as a hybrid option alongside its native MAPI protocol, enabling third-party client connectivity through configurable services that were updated for automatic startup and enhanced security in 2025. Prominent email clients such as deliver comprehensive IMAP4 implementation, incorporating extensions like to facilitate push-based synchronization for real-time updates without constant polling. Apple Mail offers native IMAP support optimized for the , with extensions including and others to improve server-client efficiency and performance in syncing emails across devices. Microsoft provides full IMAP4 compatibility for account setup and management, including advanced configuration options for root folders, ports, and encryption to ensure reliable access in diverse environments. In cloud ecosystems, activates IMAP access for external clients via 2.0 authentication, extending the protocol with secure authorization mechanisms to protect user data during synchronization. iCloud Mail integrates IMAP as its core retrieval , allowing seamless connection from third-party apps using server settings such as imap.mail.me.com on port 993 with SSL required. Contemporary trends highlight IMAP's role as a reliable backend for and mobile applications, enabling cross-device synchronization in services like those from and Apple while supporting modern authentication like . As of 2025, email providers continue to emphasize secure IMAP usage, with major services like requiring TLS connections and having deprecated less secure app access since 2022.

Practical Examples

Client-Server Dialog Illustration

To illustrate the flow of an IMAP session, consider a basic where an connects to a to check for new messages in the inbox. This example assumes a secure connection established via STARTTLS after the initial greeting, allowing the client to authenticate, select the inbox, retrieve headers for the first message, and disconnect cleanly. The dialog below is a representative based on the protocol's standard behavior, using tagged commands from the client (prefixed with identifiers like "a001") and untagged or tagged responses from the .
S: * OK IMAP4rev2 Server ready
C: a001 CAPABILITY
S: * CAPABILITY IMAP4rev2 STARTTLS AUTH=PLAIN AUTH=LOGIN
S: a001 OK CAPABILITY completed (0.001 sec)
C: a002 STARTTLS
S: a002 OK Begin TLS negotiation
<TLS negotiation, connection now secure>
C: a003 CAPABILITY
S: * CAPABILITY IMAP4rev2 AUTH=PLAIN AUTH=LOGIN
S: a003 OK CAPABILITY completed (0.001 sec)
C: a004 LOGIN "[email protected]" "password"
S: a004 OK LOGIN completed (0.002 sec)
C: a005 SELECT INBOX
S: * 3 EXISTS
S: * 1 RECENT
S: * OK [UNSEEN 1] First unseen message
S: * OK [UIDVALIDITY 1234567890] UIDs valid
S: * OK [UIDNEXT 4] Predicted next UID
S: * FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
S: * OK [PERMANENTFLAGS (\Deleted \Seen \*)] Limited
S: a005 OK [READ-WRITE] SELECT completed (0.010 sec)
C: a006 FETCH 1 (FLAGS BODY[HEADER.FIELDS (DATE FROM SUBJECT TO MESSAGE-ID)])
S: * 1 FETCH (FLAGS (\Recent) BODY[HEADER.FIELDS (DATE FROM SUBJECT TO MESSAGE-ID)] {150}
S: Date: Mon, 7 Feb 1994 21:52:25 -0800
S: From: Sender <[email protected]>
S: Subject: Test Message
S: To: [email protected]
S: Message-ID: <[email protected]>
S: )
S: a006 OK FETCH completed (0.005 sec)
C: a007 LOGOUT
S: * BYE Logging out
S: a007 OK LOGOUT completed (0.001 sec)
The session begins with the server's untagged greeting "* OK IMAP4rev2 Server ready," signaling that the connection is established and the server supports IMAP4rev2; the client then issues the command (a001) to query supported features, receiving a list including STARTTLS for and methods like and . Following this, the client initiates STARTTLS (a002) to upgrade to a , re-queries capabilities (a003) on the now-encrypted connection, and authenticates with (a004), transitioning from the non-authenticated to authenticated state upon success. Next, the SELECT INBOX command (a005) opens the inbox in read-write mode, prompting the server to send untagged status responses: "* 3 EXISTS" indicates three messages in the , "* 1 RECENT" shows one recently arrived message, "* OK [UNSEEN 1]" flags the first message, "* OK [UIDVALIDITY 1234567890]" confirms UID stability, "* OK [UIDNEXT 4]" predicts the next , "* FLAGS (...)" lists available message flags, and "* OK [PERMANENTFLAGS (...)]" specifies settable flags. The client then uses FETCH 1 (a006) to retrieve the first message's flags and selected headers (, FROM, , TO, ), with the server responding via an untagged FETCH including the literal header enclosed in curly braces for indication; the "\Recent" marks it as new. Finally, LOGOUT (a007) closes the session, with the server sending "* BYE" to announce termination before confirming completion. Common pitfalls in such dialogs include mismatched command tags, where a client might send "a001 FETCH ..." but expect a response tagged "a002," leading to errors and desynchronization. Another frequent issue arises with literal in FETCH responses: if the client fails to read the exact byte count specified in curly braces (e.g., {150}), it may cause incomplete reception or resets.

Configuration and Troubleshooting Basics

Configuring an IMAP client involves specifying the server's hostname, such as imap.gmail.com for Gmail or imap-mail.outlook.com for , along with the appropriate port: 143 for non-encrypted connections or 993 for IMAP over SSL/TLS (IMAPS). Authentication methods include traditional password-based login or modern 2.0 for enhanced security, where the client obtains a rather than sending credentials directly. To enable IMAP access, users must activate it in their account settings on the provider's web interface, such as toggling the IMAP option in under Settings > Mail > Sync email. On the server side, popular open-source implementations like Dovecot require enabling IMAP in the configuration file, typically by setting protocols = imap in /etc/dovecot/dovecot.conf to activate the IMAP service alongside other protocols if needed. Quota limits, which prevent mailboxes from exceeding storage thresholds, are managed via the quota plugin; this involves adding mail_plugins = $mail_plugins quota imap_quota in the protocol imap section and defining rules like quota_rule = *:storage=1G in the plugin configuration to enforce a 1GB limit per user. These settings ensure efficient resource allocation and IMAP command support for quota queries. Troubleshooting common IMAP issues begins with checking server logs for authentication failures, such as "NO AUTHENTICATE failed," which often indicates disabled IMAP access, incorrect credentials, or blocked legacy authentication due to security policies like Microsoft's retirement of basic auth in Exchange Online. To resolve UIDVALIDITY mismatches—where the server's for message UIDs changes, causing client sync errors—administrators can update the server's UIDVALIDITY value and restart the service, forcing clients to discard cached data and refetch messages for consistency. Verifying TLS encryption is straightforward using the tool with the command openssl s_client -connect <server>:993, which connects to the IMAPS and displays details to confirm secure handshakes without errors. Best practices for IMAP deployment include generating app-specific passwords when two-factor authentication (2FA) is enabled, as these 16-character tokens allow legacy clients to authenticate without exposing the primary account password, a recommendation from providers like for multifactor-protected accounts. Additionally, for large mailboxes exceeding thousands of messages, administrators should monitor connection latency, as IMAP's folder synchronization can introduce delays; optimizing this involves enabling server-side search extensions or advising users to use selective folder subscriptions to reduce initial load times.

References

  1. [1]
    RFC 9051: Internet Message Access Protocol (IMAP) - Version 4rev2
    The Internet Message Access Protocol Version 4rev2 (IMAP4rev2) allows a client to access and manipulate electronic mail messages on a server.
  2. [2]
    Internet Message Access Protocol (IMAP) - Glossary | CSRC
    IMAP is a mailbox access protocol defined by IETF RFC 3501, used to read electronic mail stored in a remote server.
  3. [3]
    What is IMAP (Internet Message Access Protocol)? - Computer Hope
    Nov 10, 2017 · Short for Internet Message Access Protocol, IMAP was created by Mark Crispin while at Stanford University in 1986. It is a protocol for ...
  4. [4]
    RFC 3501 - INTERNET MESSAGE ACCESS PROTOCOL
    RFC 3501 specifies IMAP4rev1, a protocol allowing clients to access and manipulate email messages on a server, including mailboxes and offline ...
  5. [5]
  6. [6]
    RFC 1733: Distributed Electronic Mail Models in IMAP4
    ### Summary of IMAP4 Support in RFC 1733
  7. [7]
    RFC 1176 - Interactive Mail Access Protocol: Version 2
    This RFC suggests a method for personal computers and workstations to dynamically access mail from a mailbox server ("repository").Missing: goals | Show results with:goals
  8. [8]
    Defining What Is IMAP? Internet Message Access Protocol (2025)
    Mark Crispin, an innovative American computer programmer, spearheaded the development of IMAP during his time at Stanford University in 1986. He visualized ...
  9. [9]
    Internet Message Access Protocol - Horizon Electronics
    IMAP is an internet protocol used by email clients to retrieve email messages from a mail server over a TCP/IP connection, allowing access to email on a remote ...
  10. [10]
    RFC 1064 - Interactive Mail Access Protocol: Version 2
    The intent of the Interactive Mail Access Protocol, Version 2 (IMAP2) is to allow a workstation or similar small machine to access electronic mail from a ...
  11. [11]
    RFC 1176 - Interactive Mail Access Protocol: Version 2
    This RFC suggests a method for personal computers and workstations to dynamically access mail from a mailbox server ("repository").
  12. [12]
  13. [13]
    draft-ietf-imap-imap2bis-02 - IETF Datatracker
    This is a draft document of the IETF IMAP Working Group. It is a draft specification of the IMAP2bis protocol, based upon the following earlier specifications.Missing: limitations | Show results with:limitations
  14. [14]
    RFC 2061 - IMAP4 Compatibility with IMAP2bis - IETF Datatracker
    This RFC is labeled as "Legacy"; it was published before a formal source was recorded. This RFC is not endorsed by the IETF and has no formal standing in the ...Missing: IMAP3 | Show results with:IMAP3<|control11|><|separator|>
  15. [15]
    RFC 1732 - IMAP4 Compatibility with IMAP2 and IMAP2bis
    This is a summary of hints and recommendations to enable an IMAP4 implementation to interoperate with implementations that conform to earlier specifications.
  16. [16]
  17. [17]
  18. [18]
  19. [19]
    RFC 2595 - Using TLS with IMAP, POP3 and ACAP - IETF Datatracker
    This specification defines the PLAIN SASL mechanism for use with protocols which lack a simple password authentication command such as ACAP and SMTP.Missing: limitations | Show results with:limitations
  20. [20]
  21. [21]
  22. [22]
  23. [23]
  24. [24]
  25. [25]
  26. [26]
  27. [27]
  28. [28]
  29. [29]
  30. [30]
  31. [31]
  32. [32]
  33. [33]
  34. [34]
  35. [35]
  36. [36]
  37. [37]
  38. [38]
  39. [39]
  40. [40]
  41. [41]
  42. [42]
    RFC 5321 - Simple Mail Transfer Protocol - IETF Datatracker
    This document is a specification of the basic protocol for Internet electronic mail transport. It consolidates, updates, and clarifies several previous ...
  43. [43]
  44. [44]
    IMAP, POP, and SMTP | Gmail - Google for Developers
    Gmail supports the standard IMAP, POP, and SMTP protocols. The Gmail IMAP, POP, and SMTP servers have been extended to support authorization via the industry- ...IMAP Extensions · OAuth 2.0 Mechanism · OAuth 2.0 Libraries and Samples
  45. [45]
  46. [46]
    POP, IMAP, and SMTP settings for Outlook.com - Microsoft Support
    If you want to use POP or IMAP to access your email in Outlook.com, you'll first need to enable access. Select Settings > Mail > Forwarding and IMAP. Under POP ...
  47. [47]
    IMAP Synchronization | Thunderbird Help - Mozilla Support
    Oct 27, 2015 · IMAP stands for the Internet Message Access Protocol. It enables a mail client (such as Thunderbird) to access messages stored on a mail server.
  48. [48]
    RFC 1939: Post Office Protocol - Version 3
    ### Summary of POP3 Key Features (RFC 1939)
  49. [49]
  50. [50]
  51. [51]
  52. [52]
  53. [53]
  54. [54]
  55. [55]
    RFC 2177: IMAP4 IDLE command
    ### Summary of IDLE Command Functionality in RFC 2177
  56. [56]
  57. [57]
    Possible server resource usage problems when using IMAP
    Aug 16, 2021 · IMAP can cause server resource issues by syncing all message headers each time, especially with large inboxes, and long-term storage can also ...Missing: weaknesses complexity
  58. [58]
    IMAP vs POP3: Which email protocol is better? - Hostinger
    Sep 19, 2025 · What are the limitations of POP3 over IMAP? · No synchronization across devices. POP3 is designed for a single computer. · High risk of data loss.
  59. [59]
    IMAP: A Revolutionary Past, A Challenging Present - Aurinko API
    Dec 11, 2024 · IMAP, or Internet Message Access Protocol RFC3501, is a protocol used to retrieve and manipulate email messages on a mail server.
  60. [60]
    RFC 4551 - IMAP Extension for Conditional STORE Operation or ...
    ... conflicts between multiple writing mail clients. The Conditional Store facility also allows a client to quickly resynchronize mailbox flag changes. This ...
  61. [61]
    RFC 4978 - The IMAP COMPRESS Extension - IETF Datatracker
    The COMPRESS extension allows an IMAP connection to be effectively and efficiently compressed. Table of Contents
  62. [62]
    RFC 2195 - IMAP/POP AUTHorize Extension for Simple Challenge ...
    This specification provides a simple challenge-response authentication protocol that is suitable for use with IMAP4.
  63. [63]
    RFC 2831: Using Digest Authentication as a SASL Mechanism
    ### Summary of DIGEST-MD5 for IMAP from RFC 2831
  64. [64]
    RFC 7628: A Set of Simple Authentication and Security Layer (SASL) Mechanisms for OAuth
    ### Summary of OAuth 2.0 SASL Mechanism for IMAP in RFC 7628
  65. [65]
    RFC 8314: Cleartext Email Obsolete; Use TLS
    This specification outlines current recommendations for the use of Transport Layer Security (TLS) to provide confidentiality of email traffic.
  66. [66]
    RFC 2342: IMAP4 Namespace
    ### Summary of NAMESPACE Command and Extension (RFC 2342)
  67. [67]
    RFC 4314: IMAP4 Access Control List (ACL) Extension
    ### Summary of RFC 4314 - IMAP4 Access Control List (ACL) Extension
  68. [68]
    RFC 5256 - Internet Message Access Protocol - SORT and THREAD ...
    RFC 5256 describes server-based sorting and threading extensions to IMAP, providing performance improvements for sorted and threaded views.
  69. [69]
  70. [70]
    Dovecot | The Secure IMAP server
    Dovecot is among the best performing IMAP servers while still supporting the standard mbox and Maildir formats. The mailboxes are transparently indexed.
  71. [71]
    What is Cyrus IMAP? — Cyrus IMAP 3.12.1 documentation
    Cyrus IMAP is an email, contacts and calendar server. Cyrus is free and open source. Features Read more in our full list of features.
  72. [72]
    Enable and configure IMAP4 on an Exchange server - Microsoft Learn
    Apr 3, 2025 · TCP port: 993 for always TLS encrypted connections, and 143 for unencrypted connections or opportunistic TLS (STARTTLS) encrypted connections.
  73. [73]
    The Best Email Clients for 2025 - PCMag
    Mar 3, 2025 · Our Top Tested Picks ; Apple Mail · at Apple App Store ; Canary Mail · at Canary Mail ; Microsoft Outlook · at Microsoft ; Mozilla Thunderbird · at ...<|control11|><|separator|>
  74. [74]
    IMAP extensions supported by Mail for iOS, iPadOS, and visionOS
    To improve efficiency and performance for both the Mail app and email servers, the Mail app supports various extensions to the IMAP protocol.Missing: core | Show results with:core
  75. [75]
    Advanced IMAP account settings for Outlook for Mac
    To access these settings, click Outlook > Preferences > Accounts, select the IMAP account, and then click Advanced.
  76. [76]
    OAuth 2.0 Mechanism | Gmail - Google for Developers
    This document defines the SASL XOAUTH2 mechanism for use with the IMAP AUTHENTICATE , POP AUTH , and SMTP AUTH commands.Missing: iCloud | Show results with:iCloud
  77. [77]
    Latest IMAP iCloud Email Settings (2025) - Truehost Cloud
    Jan 8, 2025 · Explore the latest IMAP iCloud Email Settings for effortless email management. Get your account set up today for smooth communication!
  78. [78]
    Set up Gmail with a third-party email client - Google Help
    To let your users sync Gmail with third-party mail clients, turn on IMAP in the Admin console by following the steps in Turn POP and IMAP on and off for users.Missing: cloud | Show results with:cloud
  79. [79]
  80. [80]
  81. [81]
    Chapter 9. Configuring and maintaining a Dovecot IMAP and POP3 ...
    To configure TLS on a Dovecot server, you only need to set the paths to the certificate and private key files. Additionally, you can increase the security of ...
  82. [82]
    quota - Dovecot CE
    Oct 24, 2025 · Enables IMAP commands for requesting and administering current quota. quota (this plugin), Implements the actual quota handling and includes all ...
  83. [83]
    Issue with IMAP Authentication - Microsoft Q&A
    May 8, 2024 · This error message usually occurs when there is suspicious activity detected on your account, and Microsoft has blocked access to your account ...Intermittent IMAP authentication failure - Microsoft Q&AIMAP connection issues - Microsoft Q&AMore results from learn.microsoft.comMissing: UIDVALIDITY TLS
  84. [84]
    Dovecot Errors and Troubleshooting
    Oct 10, 2025 · Fixing is done by letting Dovecot update UIDVALIDITY value and recreate the UIDs beginning from one. This means that client's local cache will ...
  85. [85]
    How to verify that SSL for IMAP/POP3/SMTP works and a proper ...
    To verify SSL, connect to any Linux server via SSH and use the instructions below: IMAP via SSL using port 993: connect to a mail server using openssl.
  86. [86]
    Configure app passwords for Microsoft Entra multifactor authentication
    Mar 4, 2025 · This article shows you how to use app passwords for legacy applications that don't support multifactor authentication prompts.Missing: IMAP large