HOME

TheInfoList



OR:

The JSON Meta Application Protocol (JMAP) is a set of related open
Internet Standard In computer network engineering, an Internet Standard is a normative specification of a technology or methodology applicable to the Internet. Internet Standards are created and published by the Internet Engineering Task Force (IETF). They allow ...
protocol Protocol may refer to: Sociology and politics * Protocol (politics), a formal agreement between nation states * Protocol (diplomacy), the etiquette of diplomacy and affairs of state * Etiquette, a code of personal behavior Science and technolog ...
s for handling
email Electronic mail (email or e-mail) is a method of exchanging messages ("mail") between people using electronic devices. Email was thus conceived as the electronic ( digital) version of, or counterpart to, mail, at a time when "mail" mean ...
. JMAP is implemented using JSON
API An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how ...
s over
HTTP The Hypertext Transfer Protocol (HTTP) is an application layer protocol in the Internet protocol suite model for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide We ...
and has been developed as an alternative to
IMAP In computing, the Internet Message Access Protocol (IMAP) is an Internet standard protocol used by email clients to retrieve email messages from a mail server over a TCP/IP connection. IMAP is defined by . IMAP was designed with the goal of per ...
/
SMTP The Simple Mail Transfer Protocol (SMTP) is an Internet standard communication protocol for electronic mail transmission. Mail servers and other message transfer agents use SMTP to send and receive mail messages. User-level email clients ty ...
and proprietary email APIs such as Gmail and Outlook. Additional protocols and data models being built on top of the core of JMAP for handling contacts and calendar synchronization are meant to be potential replacements for
CardDAV vCard Extensions to WebDAV (CardDAV) is an address book client/server protocol designed to allow users to access and share contact data on a server. The CardDAV protocol was developed by the IETF and was published as in August 2011. CardDAV is ...
and
CalDAV Calendaring Extensions to WebDAV, or CalDAV, is an Internet standard allowing a client to access and manage calendar data along with the ability to schedule meetings with users on the same or on remote servers. It lets multiple users in diff ...
, and other support is currently in the works.


Motivation

Developers Bron Gondwana and Neil Jenkins wrote on the
Internet Engineering Task Force The Internet Engineering Task Force (IETF) is a standards organization for the Internet and is responsible for the technical standards that make up the Internet protocol suite (TCP/IP). It has no formal membership roster or requirements and a ...
(IETF) news site that "the current open protocols connecting email clients and servers, such as IMAP, were not designed for the modern age." They cited IMAP's complexity, high resource use, poor adaptability to the network constraints of modern mobile devices, and complex interactions with other protocols like SMTP, CalDAV, and CardDAV. They believe this has resulted in a stagnation in the quality of (especially free) email clients, and the creation of proprietary protocols to overcome these limitations, for instance
MAPI Messaging Application Programming Interface (MAPI) is an API for Microsoft Windows which allows programs to become email-aware. While MAPI is designed to be independent of the protocol, it is usually used to communicate with Microsoft Exchange Se ...
, used by
Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washin ...
's
Exchange Server Microsoft Exchange Server is a mail server and calendaring server developed by Microsoft. It runs exclusively on Windows Server operating systems. The first version was called Exchange Server 4.0, to position it as the successor to the related ...
and
Outlook Outlook or The Outlook may refer to: Computing * Microsoft Outlook, an e-mail and personal information management software product from Microsoft * Outlook.com, a web mail service from Microsoft * Outlook on the web, a suite of web applications ...
email products.


Design

Gondwana and Jenkins wrote, "JMAP is the result of efforts to address shortcomings n existing protocols providing a modern, efficient, easy-to-use API, built on many years of experience and field testing." The protocol was developed with the intention of providing a modern open, reliable, and easy-to-use solution, and as a result it relies heavily upon the commonly-implemented JSON (JavaScript Object Notation). According to Gondwana of Fastmail—which has been a leading developer of the protocol -- "The use of JSON and HTTP as the basis of JMAP was always a key point — it means that people wanting to build something on top of email don’t have to re-implement complex parsers or find a software library in order to get started." After atmail decided to implement JMAP, CEO Dave Richards wrote in 2018 that "the complexities required to implement IMAP in both user and server side software has resulted in user difficulties and a lack of software options, along with a rigid user experience...The new JMAP protocol solves the existing issues and is modular enough to take advantage of future technology. JMAP makes email better."


Development

JMAP started around 2014 as an internal development project by the Australia-based email provider Fastmail. Starting in 2017 a working group at the
IETF The Internet Engineering Task Force (IETF) is a standards organization for the Internet and is responsible for the technical standards that make up the Internet protocol suite (TCP/IP). It has no formal membership roster or requirements and a ...
has been leading the development and standardization process. The core protocol and mail specifications were published in July and August 2019 by Neil Jenkins of Fastmail and Chris Newman of Oracle, as RFC 8620 and RFC 8621. The WebSocket specification was later published in August 2020 as RFC 8887, and Message Disposition Notification (
return receipt In email, a return receipt is an acknowledgment by the recipient's email client to the sender of receipt of an email message. What acknowledgment, if any, is sent by the recipient to the sender is dependent on the email software of the recipient. ...
s) in March 2021 as RFC 9007. Other ongoing JMAP drafts at IETF are for dealing with calendars, contacts, quotas, and
Sieve A sieve, fine mesh strainer, or sift, is a device for separating wanted elements from unwanted material or for controlling the particle size distribution of a sample, using a screen such as a woven mesh or net or perforated sheet materia ...
mail filtering. The working group originally set milestones for these to be finalised by the end of 2020.


Implementations

* As of version 3.0 Apache Software Foundation’s free mail-server
Apache James Apache James, a.k.a. Java Apache Mail Enterprise Server or some variation thereof, is an open source SMTP and POP3 mail transfer agent and NNTP news server written entirely in Java. James is maintained by contributors to the Apache Software Fo ...
has “experimental” support for JMAP. The OpenPaas collaboration platform provides a webmail implementation supporting James and JMAP. * Cyrus IMAP supports JMAP core and mail, with “experimental” support for calendars and contacts, as of version 3.2.0 released in May 2020. * Ltt.rs is a proof of concept email client for Android that only supports JMAP. * Stalwart JMAP server is a scalable open-source JMAP server written in Rust with full JMAP Core, JMAP Mail, JMAP over WebSocket at IMAP4rev2 support.


See also

*
Comparison of email clients The following tables compare general and technical features of notable email client programs. General Basic general information about the clients: creator/company, O/S, licence, & interface. Clients listed on a light purple background are no long ...
*
Comparison of mail servers The comparison of mail servers covers mail transfer agents (MTAs), mail delivery agents, and other computer software that provide e-mail services. Unix-based mail servers are built using a number of components because a Unix-style environment i ...
* Fastmail *
IMAP In computing, the Internet Message Access Protocol (IMAP) is an Internet standard protocol used by email clients to retrieve email messages from a mail server over a TCP/IP connection. IMAP is defined by . IMAP was designed with the goal of per ...
*
List of mail server software This is a list of mail server software: mail transfer agents, mail delivery agents, and other computer software which provide e-mail. Product statistics All such figures are necessarily estimates because data about mail server share is diffic ...
*
Post Office Protocol In computing, the Post Office Protocol (POP) is an application-layer Internet standard protocol used by e-mail clients to retrieve e-mail from a mail server. POP version 3 (POP3) is the version in common use, and along with IMAP the most common ...
(POP) *
Push-IMAP Push-IMAP, which is otherwise known as P-IMAP or ''Push extensions for Internet Message Access Protocol'', is an email protocol designed as a faster way to synchronise a mobile device like a PDA or smartphone to an email server. It was developed ...
* Simple Mail Access Protocol *
Simple Mail Transfer Protocol The Simple Mail Transfer Protocol (SMTP) is an Internet standard communication protocol for electronic mail transmission. Mail servers and other message transfer agents use SMTP to send and receive mail messages. User-level email clients typica ...
* Webmail


References

{{Email clients Internet mail protocols JSON