JSON Mail Access Protocol (jmap) Internet Drafts


      
 JSON Meta Application Protocol (JMAP) for Calendars
 
 draft-ietf-jmap-calendars-22.txt
 Date: 13/11/2024
 Authors: Neil Jenkins, Michael Douglass
 Working Group: JSON Mail Access Protocol (jmap)
This document specifies a data model for synchronizing calendar data with a server using JMAP. Clients can use this to efficiently read, write, and share calendars and events, receive push notifications for changes or event reminders, and keep track of changes made by others in a multi-user environment.
 Use of VAPID in JMAP WebPush
 
 draft-ietf-jmap-webpush-vapid-05.txt
 Date: 24/11/2024
 Authors: Daniel Gultsch
 Working Group: JSON Mail Access Protocol (jmap)
This document defines a method for JMAP servers to advertise their capability to authenticate WebPush notifications using the Voluntary Application Server Identification protocol.
 JMAP Essential Profile
 
 draft-ietf-jmap-essential-01.txt
 Date: 01/08/2024
 Authors: Joris Baum, Hans-Joerg Happel
 Working Group: JSON Mail Access Protocol (jmap)
JMAP (RFC8620) is a generic, efficient, mobile friendly and scalable protocol that can be used for data of any type. This makes it a good fit for migrations or data portability use cases that are focusing on data import and export. However, due to its large set of features, it is also quite complex, which makes it difficult to explore new application domains in practice. The goal of this document is to provide guidelines on implementing essential parts of JMAP for a much lower entry barrier and more efficient implementation of the protocol.
 JMAP File Storage extension
 
 draft-ietf-jmap-filenode-00.txt
 Date: 21/11/2024
 Authors: Bron Gondwana
 Working Group: JSON Mail Access Protocol (jmap)
The JMAP base protocol (RFC8620) provides the ability to upload and download arbitrary binary data. This binary data is called a "blob", and can be used in all other JMAP extensions. This extension adds a method to expose blobs as a filesystem along with the types of metadata that are provided by other remote filesystem protocols.


data-group-menu-data-url="/group/groupmenu.json">

Skip to main content

JSON Mail Access Protocol (jmap)

WG Name JSON Mail Access Protocol
Acronym jmap
Area Applications and Real-Time Area (art)
State Active
Charter charter-ietf-jmap-03 Approved
Document dependencies
Additional resources Github
Issues, Zulip stream
Personnel Chairs Bron Gondwana, Jim Fenton
Area Director Murray Kucherawy
Mailing list Address jmap@ietf.org
To subscribe https://www.ietf.org/mailman/listinfo/jmap
Archive https://mailarchive.ietf.org/arch/browse/jmap
Chat Room address https://zulip.ietf.org/#narrow/stream/jmap

Charter for Working Group

The JMAP protocol defined in draft-ietf-jmap-core is designed to be
extensible to multiple datatypes which are useful for personal
information management related to email stores.

Now that draft-ietf-jmap-mail is completed, the working group will
produce specifications for related data types, beginning with calendars
and contacts.

The calendar work will be based on draft-ietf-calext-jscalandar as the
data format. This working group will consult with the CALEXT working
group to ensure that calendar access via JMAP remains compatible with
existing calendar standards.

The contact work will begin with a JSON format for contact data based
upon the work begun in draft-stepanek-jscontact, and in consultation with
other users of contact data within the IETF and outside to build an
extensible format. Where possible, this format will retain the ability
to convert backwards and forwards to RFC6350 vCard format. This format
will then be used as the basis of JMAP object types for contacts.

Extensions to the existing core and mail JMAP specifications are also
within scope for this working group, for example any additional parts
of SIEVE, IMAP, SMTP submission, as well as transport of JMAP over
WSS (WebSocket over TLS, RFC 6455).

Work on JMAP extensions will be bound by the following constraints:

1) The work of this group is limited to developing protocols for a
client synchronising data with a server. Any server-to-server issues
are out of scope for this working group.

2) Object models will use existing IETF work where possible.

3) JMAP Extensions will be built following the core principles:

3.1) The server will not be required to perform work not explicitly
requested by the client, and the default should always be the
mode which requires the least server work.

3.2) The client can discover limits enforced by the server on
resources or request complexity.

3.3) Where side effects generated by the server are optional, the
protocol will default to no side effects, and the client must
explicitly request that those side effects happen (for example:
sending a calendar invitation or reply when updating an event)

The working group will deliver documents for the following:

  • JMAP access to calendars using the JSCalendar format

  • JSON formats for representing contacts and groups of contacts
    (JSContact)

  • JMAP access to addressbooks using the JSContact format

  • Accessing JMAP over Websockets

  • Handling of S/MIME email messages (e.g. signature verification) over JMAP

  • Message Disposition Notifications (RFC 8098) via JMAP

  • Other extensions which the working group considers related to email
    and compatible with the constraints listed above

Also within scope for this working group are informational documents for
converting between JMAP data representation and other formats already
in wide use which can be used to specify the same underlying data.

Milestones

Date Milestone Associated documents
Jul 2025 Submit JMAP Tasks document to IESG draft-ietf-jmap-tasks
Apr 2025 Submit Portability Extensions to IESG draft-baum-jmap-portability-extensions
Apr 2025 Submit REST Mapping document to IESG draft-ietf-jmap-rest
Mar 2025 Submit SMIME Sender Extensions document to the IESG draft-ietf-jmap-smime-sender-extensions
Mar 2025 Adopt a document for JMAP Archive format
Dec 2024 Adopt a draft for Push Filtering
Dec 2024 Submit Portability Guide (Minimal Profile) to IESG draft-baum-jmap-portability-guide
Dec 2024 Adopt a draft for File Storage draft-gondwana-jmap-filenode
Nov 2024 Submit Webpush Vapid document to IESG draft-ietf-jmap-webpush-vapid

Done milestones

Date Milestone Associated documents
Done Submit JMAP Calendars document to the IESG draft-ietf-jmap-calendars
Done Adopt a document for Server info and debug draft-baum-jmap-debug
draft-baum-jmap-backend-info
Done Adopt a document for JMAP REST mapping draft-baum-jmap-rest
Done Adopt a draft for a basic migration simplified endpoint draft-baum-jmap-portability
Done Submit JMAP Sharing document to IESG rfc9670 (was draft-ietf-jmap-sharing)
Done Submit Sieve document to the IESG rfc9661 (was draft-ietf-jmap-sieve)
Done Submit Contacts document to the IESG rfc9610 (was draft-ietf-jmap-contacts)
Done Coordinate with extra wg and potentially adopt document for snooze draft-murchison-email-snooze
Done Adopt a document defining JMAP access to addressbooks
Done Submit JMAP Quotas document to the IESG rfc9425 (was draft-ietf-jmap-quotas)
Done Submit document for Blobs via JMAP to the IESG rfc9404 (was draft-ietf-jmap-blob)
Done Adopt a document for S/MIME key management and server side signing/encryption draft-melnikov-jmap-smime-advanced
draft-ietf-jmap-smime-sender-extensions
Done Submit JMAP S/MIME signature validation document to the IESG rfc9219 (was draft-ietf-jmap-smime)
Done Adopt a document for creating Blobs via JMAP method call draft-gondwana-jmap-blob
Done Adopt a document for managing Sieve via JMAP draft-murchison-jmap-sieve
Done Submit Message Disposition Notification document to the IESG rfc9007 (was draft-ietf-jmap-mdn)
Done Adopt a document defining mappings between VCARD and JSContact draft-loffredo-jmap-jscontact-vcard
Done Adopt a document for a JSON Contact format (after recharter) draft-stepanek-jscontact