Hello fellow flowers !
I am currently building a flow, which you've already seen before : When an item is created whithin a certain Sharepoint List,
I get the elements and the files attached and then send an email (I just have more operations in the way because I get elements from another list to retrieve the good email to send it).
I've followed Laura Roggers' video on How to get and send attachments
Everything is working, my Flow is sending the emails....
BUT the attachment are corrupted.
Here are some scrrenshots on How I get the attachments from the list :
When an item is created, Get Attachments
For each attachment, get attachment content
Then, send an email (I don't really know why it has looped here, buecause, that is absolutely silly, it is sending me the same email twice, but each with a different attachment -if i have multiple attachments on my item)
Here is the actionOutput i'm putting into "Attachment's body/Content"
Now, as i said, the flow is working well, it is sending emails, and the attachments are attachedµ. The only BIG problem is that the attachments are corrupted and nothing can open them.
Here is he contentBytes I got when i test, it is a really weird format !
So, do you know :
- How to attach several attachments to a single email ?
- How to get the Attachment content format good to have correct and valid attachments in my emails ?
Thanks a lot ! 🙂
Solved! Go to Solution.
Hello !
A little feedback with the solution !
So, thanks to @ScottShearer, I've been able to get my attachment without it being corrupted !
Only, this works for one attachment only : the HasAttachments column is strangely set to "false" when there is more than one object attached to the list item.
Then, I had to adapt this solution to work for several attachments.
I found Sunay Vaishnav,'s solution which did not work, because the email server responded everytime with a 400 error "No input parameters provided. Please provide required input parameters 'To', 'Subject' and 'Body' ". Fortunately, you can find the right solution to this little bug in the comment, thanks to Vytenis Jazbutis
So, here is my full flow :
I hope this will help someone, thanks to @ScottShearer and all the flow community !
Hey all
To clarify on this you should use the expression something like this:
body('Create_file_content').$content
Where in the body is the name of your step where you get the file content out of.
Then it creates an expression and you should be good to go.
For those who want to know how to send multiple attachment in one Flow, you could @ me in a new thread or you could search the community how to do it. There are multiple threads covering this piece.
Hope this helps.
Kind regards
Tom
If this reply has answered your question or solved your issue, please mark this question as answered.
Answered questions helps users in the future who may have the same issue or question quickly find a resolution via search. If you liked my response, please consider giving it a thumbs up.
Here is a solution that should work for you. I haven't watched Laura Rogers video, but it was likely created before some new SharePoint attachment features were added.
My solution uses the Get Attachments action and the Get Attachment Content action inside of a loop.
I tested the solution below and was able to open the documents from my email - they are not corrupt.
I do not know of a method to add more than one attachment to an email unless the attachments are specified in advance and hard coded into the Flow.
If this solves your issue, please mark your question as solved.
If you have additional questions, please post here.
Hi @ScottShearer,
Have you take a try with @ScottShearer's solution?
The solution is works.
Please take a try with @ScottShearer's solution to achieve your requirement.
Best regards,
Alice
Hi @ScottShearer !
Thanks a lot for your tip, it is not the global solution but still a big improvement !
I'll try to update it to my requirements and update my answers/solution.
But if any of you have an idea to send multiple attachments into one solo email, I'll be glad to hear it !
Thanks a lot !
Hello !
A little feedback with the solution !
So, thanks to @ScottShearer, I've been able to get my attachment without it being corrupted !
Only, this works for one attachment only : the HasAttachments column is strangely set to "false" when there is more than one object attached to the list item.
Then, I had to adapt this solution to work for several attachments.
I found Sunay Vaishnav,'s solution which did not work, because the email server responded everytime with a 400 error "No input parameters provided. Please provide required input parameters 'To', 'Subject' and 'Body' ". Fortunately, you can find the right solution to this little bug in the comment, thanks to Vytenis Jazbutis
So, here is my full flow :
I hope this will help someone, thanks to @ScottShearer and all the flow community !
Hi Gaëlle ,
I also encountered the same problem, the same flow, "the email server responded everytime with a 400 error "No input parameters provided. Please provide required input parameters 'To', 'Subject' and 'Body' ". But now Vytenis Jazbutis's article can't be accessed, could you tell me how you solved it?
I have a slightly different but similar problem. My implemention is different, many branches of my flow require adding an attachments to the email. So I generalise email attachment as a child flow I call through http. I experienced the issue with the returned http response. The solution, I have come up with uses a select data operation on the return body. And then for the ContentBytes. I wrap this up in this expression coalesce(base64(item()?['ContentBytes'])) the essential bit is the base64 function around ContentBytes this is essential for email attachments as emphasized in this ignite 2017 session (about 55min mark). But for some odd reason when I save the flow and return to it, the base64 function disappears so I found that wrapping it in coalesce fixed the issue for.
Hi @HideonBush !
Sorry for the late answer !
Strange that you can't access Sunay Vaishnav's article, because I can. Here is the full URL : https://flow.microsoft.com/en-us/blog/multiple-attachments-single-email/ And under it, you'll find all the discussion with Vytenis Jazbutis , especially this comment http://disq.us/p/1pjv8ke which will help you. I've attached my whole process in my solution post (here : https://powerusers.microsoft.com/t5/Building-Flows/Flow-and-SharePoint-Send-Email-with-Attachment-un... ) for support. I know it's in french, but you can easily translate french with goole's translate tool 😉
If you need more help, do not hesitate 😉
Hi @Ola,
I'm very interested by your solution, I did not know about coalesce, and it seems to have a really odd behavior !
Thanks for sharing it with us 😉
Hi... Kindly add the link to the comment in this post too...
hi Scott,
your solution sends a mail for each attachement, but I like the mail to have all attachements in a single go.
I'm very new to MS Flow, hope you can help me in "simple speak"?
Thank you
Regards
Charles
Bonjour Gaëlle,
Can you please help me? I can't find the $content element you have in the "append into Array" element.. where do I find this or how do I build this in expressions editor?
I'm very new to this so please use simple steps?
Thank you
A+
Charles
Hey all
To clarify on this you should use the expression something like this:
body('Create_file_content').$content
Where in the body is the name of your step where you get the file content out of.
Then it creates an expression and you should be good to go.
For those who want to know how to send multiple attachment in one Flow, you could @ me in a new thread or you could search the community how to do it. There are multiple threads covering this piece.
Hope this helps.
Kind regards
Tom
If this reply has answered your question or solved your issue, please mark this question as answered.
Answered questions helps users in the future who may have the same issue or question quickly find a resolution via search. If you liked my response, please consider giving it a thumbs up.
Tried all expressions in this thread and the ones refered here:
base64(body('Get_file_content'))
body('Get_file_content’).$content
body('Get_file_content’)[’$content’]
And no one worked for me.
Always return the same error when sending the email:
Did your solution worked ?
Hello @Anonymous ,
Disregard. I was able to find the solution in another thread.
I added base64 to the content variable.
I cannot access the comments for find the solution to
I was working through this issue as well. Creating an array of attachments to attach to an email. The Coalesce and Base64 functions were what worked for me too! Thank you @Ola
Just saw this post
Need help urgently.. try to use it these few days...
I need to have the attachment file send with the Start Approval..email.
Can anyone advice what I am missing..
The current flow is working fine.. am using MS Form to submit and update all the data and attachment after approved send to SharePoint.. now I just need the attachment (likely pdf format) to be send with the email.
Thank you
here's my flow..
where to add action to have attachment in the email?
what is missing? cannot see the file content..
Somehow I can't add pictures to my answer (I get some screen asking me for source etc...). But the solution could be:
{
"Content": [get atachment content: $content],
"Name":[apply to each: DisplayName]
}
now that you have the Array filled you can drop it into the approval request attachment list
Sorry that I can't add pictures....
Regards
charles
User | Count |
---|---|
95 | |
45 | |
21 | |
18 | |
18 |
User | Count |
---|---|
142 | |
50 | |
43 | |
40 | |
31 |