Besides saving user preferences in the browser's local storage, we also want them to be synchronized with the server and to be present when logging in using another device. The designated way to exchange data with the server is the JMAP protocol which lacks a specification how to exchange user preferences. It's probably unrealistic to extend the official JMAP spec as user preferences is something very specific to clients. We therefore seek to specify a vendor specific extension primarily used by Roundcube / Kolab clients.
The goal of this task is to define such a JMAP extension and to specify all methods, responses and models involved. The extension will likely define new methods like getConfiguration, getConfigurationUpdates and setConfiguration.