Example for doveadm-save using Doveadm HTTP API

KT Walrus kevin at my.walr.us
Wed May 10 16:57:57 EEST 2017

I could use an example of how to use curl to save a new message to a user’s INBOX using the Doveadm HTTP API.

https://wiki2.dovecot.org/Design/DoveadmProtocol/HTTP <https://wiki2.dovecot.org/Design/DoveadmProtocol/HTTP>

Do I really use the -d option and inline the entire new message in the command-line? Or, should I create a temporary .json file with the message wrapped in JSON and pass this filename to the -d option?

Does anyone have a PHP class that abstracts the HTTP API commands?

I’ve been using the Roundcube Framework to deliver new messages by IMAP, but I’m experimenting whether the Doveadm HTTP API might be a better solution. I eventually want my PHP code to do full administration of my users mailboxes. I was planning on using Sieve pipe PHP scripts in conjunction with IMAP to do full admin on mailboxes (as they receive new messages or change a flag, I would trigger maintenance on the mailbox such as deleting or moving to the trash old messages or filing a copy of a new message in a folder).

Finally, is the Doveadm HTTP API stable enough to use in production? It seems like the documentation is rather minimal. Can this interface really be used for new message delivery instead of LMTP in production? Or, is this a bad idea to combine mailbox administration with new message delivery?

Does anyone here use the Doveadm HTTP API in production?


More information about the dovecot mailing list