[bug] - attachments do not appear in email if prior node is pinned

Describe the problem/error/question

If using the send email node, and the node prior (in my case is http request) is pinned. The email will not contain the file in the attachment. If you unpin the http request node and re-run the send email node, the attachment appears.

What is the error message (if any)?

None - its a silent bug.

Please share your workflow

Share the output returned by the last node

Information on your n8n setup

  • n8n version:
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app):
  • Operating system:

Hit submit accidentally. Please see below

Share the output returned by the last node

Failed Run

[
  {
    "accepted": [
      "[email protected]"
    ],
    "rejected": [],
    "ehlo": [
      "SIZE 36700160",
      "8BITMIME",
      "AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH",
      "ENHANCEDSTATUSCODES",
      "PIPELINING",
      "CHUNKING",
      "SMTPUTF8"
    ],
    "envelopeTime": 62,
    "messageTime": 395,
    "messageSize": 1482,
    "response": "250 2.0.0 OK  1752611376 ffacd0b85a97d-3b5e8dc21e7sm15977484f8f.36 - gsmtp",
    "envelope": {
      "from": "[email protected]",
      "to": [
        "[email protected]"
      ]
    },
    "messageId": "<[email protected]>"
  }
]

Successful run

[
  {
    "accepted": [
      "[email protected]"
    ],
    "rejected": [],
    "ehlo": [
      "SIZE 36700160",
      "8BITMIME",
      "AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH",
      "ENHANCEDSTATUSCODES",
      "PIPELINING",
      "CHUNKING",
      "SMTPUTF8"
    ],
    "envelopeTime": 75,
    "messageTime": 1647,
    "messageSize": 285027,
    "response": "250 2.0.0 OK  1752611118 ffacd0b85a97d-3b5e8e0dc3esm15793238f8f.47 - gsmtp",
    "envelope": {
      "from": "[email protected]",
      "to": [
        "[email protected]"
      ]
    },
    "messageId": "<[email protected]>"
  }
]

Information on your n8n setup

n8n version: 1.99.1

  • Database (default: SQLite): Not sure
  • n8n EXECUTIONS_PROCESS setting (default: own, main): Not sure
  • Running n8n via (Docker, npm, n8n cloud, desktop app): n8n cloud
  • Operating system: OSX Sonoma 14.5
1 Like

Try to upgrade the n8n to the latest version (1.102.3)

I tried myself with the latest version and can confirm the problem.

So that’s a bug (?)

Well, the title of this post strongly suggests that :slight_smile:

@Andrew_Mokotoff I would also recommend creating an official github issue here.

I come with a same suggestion as yours, I think he need to create github issue from official n8n repo

it is not a bug or issue you just can not do that.

You can’t pin data if the output data includes binary data. docs

if you find this reply helpful please mark this as solution.

1 Like

Thanks for surfacing this - I agree with you in regard to this is not necessarily a bug in functionality, but it’s definitely one in clarity.

The current documentation states:

“You can’t pin data if the output data includes binary data.”

I find this is ambiguous. That wording suggests pinning shouldn’t even be possible on nodes that output binary data - yet it is. The real issue is that pinning doesn’t preserve the binary data, which can lead to unexpected behaviour, like in the example with the Send Email node where attachments silently disappear. I would argue that a warning in the UI would do even better job, but…

To avoid confusion, the documentation should clarify this behaviour explicitly. A clearer phrasing might be:

“Pinning a node does not preserve its binary data.”

or

“If you pin a node with binary output, the binary data will not be available to downstream nodes.”

This would better reflect the actual behaviour and prevent confusion for other users. At the very least, this qualifies as a documentation bug in my opinion - the current description can easily mislead users and cause workflows to break in subtle ways.

Hopefully this can be passed on to the team for consideration. Thanks again for finding this doc, @moosa

I was not aware this was in the documentation. Perhaps a link to this documentation in the send email node’s docs would be helpful…

1 Like

here in docs it states that you can not pin binary data:Data pinning | n8n Docs

if you find this helpful please mark my response as solution :slight_smile:

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.