Create an IMAP manipulation node

This comes as follow up of: IMAP mark as read only after the workflow is done - #8 by harshil1712

Right now, IMAP Read Email offers the possibility to mark an email as read.
However, I would like to mark emails as read, after the workflow has successfully completed.

When wroking with Gmail, usually something like this solves the problem:

But not everyone uses Gmail as their email server (I also want to use protonmail), so that solution will not work.

I would suggest to create an IMAP manipulation node, where we can pass a query to filter a specific/or set of emails, and do operations on then (remove labels per example).

I believe that node-imap allows for search queries (not entirely sure tbh), so we could use that to pull emails a second time and perform operations on those emails. This is not the cleanest solution, but I believe it would work.

Good one. I had created this other feature request.

I’d say they’re related.

I created an n8n community node, n8n-nodes-imap, which is now available for use. Here’s a snapshot of what you can expect from this node:

Operations

Mailbox Operations:

  • Get List of Mailboxes: This function allows you to retrieve a list of all your mailboxes, complete with essential status information like message count.
  • Get Status of a Mailbox: Gain detailed insights into the status of any mailbox, including the total number of messages and other pertinent details.
  • Create a Mailbox: You can now set up new mailboxes directly within your workflow.
  • Rename a Mailbox: Adjust the names of your mailboxes as required.
  • Delete a Mailbox: To prevent accidental data loss, this feature is currently disabled, as I haven’t identified a significant use case in standard workflows.

Email Operations:

  • Get List of Emails in a Mailbox
  • Download Attachments from an Email
  • Move an Email to Another Mailbox

I encourage you to test this node and share your experiences or suggestions.

Github repo: GitHub - umanamente/n8n-nodes-imap