Description
https://jmap.io/spec-mail.html#identityset is currently not implemented.
Only https://jmap.io/spec-mail.html#identityget is supported, and exposes read-only identities based on RecipientRewriteTable content (email and domain aliases).
In addition to these server generated Identities, a user might wish to manage its own identities, Identity/set would allow to do this.
How:
This means we need a storage being defined for user created identities, so API & contract tests (within server/data/data-jmap), cassandra implementation and memory implementation.
Once this storage implemented...
- Identity/get would do the union of the server generated identities and of the user created identities.
User created identities and server ones might be distinguished by frontend apps via the mayDelete field (only user created Identities may be deleted)
- Identity/set would use this identity repository. Validation would need to be performed: the from field need to be validated.
As we want several identity by address, and we might want to update that address, user created Identities would need to have a UUID backed identifier.