Send binary file (pdf) using Outlook API email

Describe the problem/error/question

I am trying to send an email using the Microsoft Outlook node in n8n with a PDF attachment that I fetch from a URL using the HTTP Request node. The workflow runs successfully, and the email gets sent, but the attachment does not appear in the recipient’s inbox.

Workflow Structure:

  1. HTTP Request Node: Fetches a PDF file from a web URL.
  2. Set Binary Data Node (Optional, tried with and without it): Ensures the binary file is properly handled.
  3. Microsoft Outlook Node: Sends an email and attaches the file.

The issue is that the attachment does not show up in the final email.

The error is get is:
No binary data exists on item!

I suspect that the HTTP Request node is not properly passing the binary data to the Outlook node, but I’m not sure how to fix this.

Things I tried: Someone using Google Drive instead of an HTTP Request node mentioned that PDFs were being opened instead of downloaded and thus not passed on to Outlook. They resolved this by modifying the hyperlink from "view" to "download". I also read that in some cases, the file might not be truly “downloaded” but just viewed, which could be causing the issue. It didn’t work for me.

Please share your workflow

Share the output returned by the last node

Last node output is “no binary data exists on item!”

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): n8n cloud
  • Operating system: windows 11 home

It looks like your topic is missing some important information. Could you provide the following if applicable.

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

Hi @Adrian_Georgescu

Thanks for posting here and welcome to the community! :cupcake:

I copied your workflow and it looks like you had some weird node connections that made the workflow not process correctly.

I’ve changed it a bit and also added a Merge node in to combine the binary data for the email.

Let me know if this helps!

You might wanna consider using another OpenAI node as the one in your workflow is deprecated. For example the Message an Assistant OpenAI Node.

1 Like

Thank you so much! it worked

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