cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Highlighted
Helper II
Helper II

Using a flow to extract email body details

Hello, 

 

Is there a way to leverage a flow to pull out email body and subject details without using a third party service? I'm looking to move details from an email into a sharepoint list.

 

Thank you

1 ACCEPTED SOLUTION

Accepted Solutions
Community Support
Community Support

Re: Using a flow to extract email body details

Hi @Willo,

 

Yes, it could be achieved by using WDL function in flow.

 

Say your email body would be always the following format:

1.PNG

 

Then you could create a flow likes below. In this case, I will show how to extract the subject from the email body, please take it for a reference.

 

The flow is triggered by When a new email arrives, then convert the email body from Html to text.

 

In action Compose, use the code to get the total length of the body:

length(body('Html_to_text'))

In Compose2, use the following code:

add(indexOf(body('Html_to_text'),'Subject'),9)

In compose3, use the following code:

indexOf(body('Html_to_text'),'Start time')

In Compose4, use the following code:

substring(body('Html_to_text'),outputs('Compose_2'),sub(outputs('Compose_3'),outputs('Compose_2')))

 

It works fine and the subject can be extracted from the email body successfully.

2.PNG3.PNG

 

More details about the functions at here:

https://docs.microsoft.com/en-us/azure/logic-apps/workflow-definition-language-functions-reference

 

 

Best regards,

Mabel Mao

Community Support Team _ Mabel Mao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

7 REPLIES 7
Community Support
Community Support

Re: Using a flow to extract email body details

Hi @Willo,

 

Yes, it could be achieved by using WDL function in flow.

 

Say your email body would be always the following format:

1.PNG

 

Then you could create a flow likes below. In this case, I will show how to extract the subject from the email body, please take it for a reference.

 

The flow is triggered by When a new email arrives, then convert the email body from Html to text.

 

In action Compose, use the code to get the total length of the body:

length(body('Html_to_text'))

In Compose2, use the following code:

add(indexOf(body('Html_to_text'),'Subject'),9)

In compose3, use the following code:

indexOf(body('Html_to_text'),'Start time')

In Compose4, use the following code:

substring(body('Html_to_text'),outputs('Compose_2'),sub(outputs('Compose_3'),outputs('Compose_2')))

 

It works fine and the subject can be extracted from the email body successfully.

2.PNG3.PNG

 

More details about the functions at here:

https://docs.microsoft.com/en-us/azure/logic-apps/workflow-definition-language-functions-reference

 

 

Best regards,

Mabel Mao

Community Support Team _ Mabel Mao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

Highlighted
Administrator
Administrator

Re: Using a flow to extract email body details

Hello, @Willo!

 

Thank you for posting on the Flow Community Forum! Have you had an opportunity to apply @v-yamao-msft‘s recommendation to adapt your Flow? If yes, and you find that solution to be satisfactory, please go ahead and click “Accept as Solution” so that this thread will be marked for other users to easily identify!


Thank you for being an active member of the Flow Community!

 

-Gabriel
Flow Community Manager

- Gabriel
Community Manager
Power Automate | Power Virtual Agents
Super User Program Manager
Power Platform Communities
Highlighted
New Member

Re: Using a flow to extract email body details

Could you explain how you then create the list itemfrom the extracted text items?  This was the OP's original aim, and we have a similar problem.

 

Regards

Highlighted
New Member

Re: Using a flow to extract email body details

I was able to do this by making sure I had a connection for SharePoint online in my connectors.

 

Then I selected after "compose 4", Create Item for SharePoint, then by putting in the address of the site in SharePoint online, then selecting the list,

 

Then used the dynamic content selector to get the output for Compose 4

 

 

Annotation 2019-10-15 163540.png

 

Highlighted
Regular Visitor

Re: Using a flow to extract email body details

Hi @v-yamao-msft ,

 

I know this is quite an old post but i hope you will be able to help. Could you explain each of the various compose steps? I'm especially curios why you have a 9 in compose 2?

 

Seeing this is quite old is there any new and better ways to do this without a third party services of course.

Highlighted
Helper V
Helper V

Re: Using a flow to extract email body details

Hi @dee2005 

 


@dee2005 wrote:

Hi @v-yamao-msft ,

 

I know this is quite an old post but i hope you will be able to help. Could you explain each of the various compose steps? I'm especially curios why you have a 9 in compose 2?

 

Seeing this is quite old is there any new and better ways to do this without a third party services of course.


I supposed that @v-yamao-msft ha used 9 because if you see, you have "Subject" plus ":" plus " " (blank space), so the total characters are 9.

 

--

Regards

Marco

Highlighted
Regular Visitor

Re: Using a flow to extract email body details

@v-yamao-msft  So the problem I am facing is :  I am getting an email , in email 's body i am getting an email address"  , I need to extract that . Can you suggest something?

Helpful resources

Announcements
Community Conference

Power Platform Community Conference

Check out the on demand sessions that are available now!

Power Platform ISV Studio

Power Platform ISV Studio

ISV Studio is designed to become the go-to Power Platform destination for ISV’s to monitor & manage published applications.

Tech Marathon

Maratón de Soluciones de Negocio Microsoft

Una semana de contenido con +100 sesiones educativas, consultorios, +10 workshops Premium, Hackaton, EXPO, Networking Hall y mucho más!

Users online (3,636)