Skip to main content

Our CMS generates an email whenever a new article is created, and I’m trying to build a Zap so that the emails can be forwarded and used to create records in an Airtable.  The emails are fairly regular but the data is not fielded.  One thing I need to do is to be able to parse out the ID number from https://domain.com/drafts/143408/invitations/46de17dbb8dc5de0/accept but the parser gets confused by other URLs in the email that include the domain name.  

I’m struggling to understand the logic that the templates use to determine what is parsed out.  Are additional templates applied first or last?  What happens if more than one template matches?  Can the same field be extracted by multiple templates?

I have a bit of coding knowledge and could write a regex to specify exactly what I want, but as far as I can tell, there’s no way to use it.

   

Hi @JoelA 

 

The different templates aren’t applied in a specific order, they’re combined to better train the Parser on what it should be looking for.  The more you have, the more accurate the Parser will be. That said, some formats/emails can be too tricky for the Parser to manage. You could try switching to a different email parser (eg MailParser, DocParser, Parserr or Parseur) as different Parsers have different strengths.

 

If you can use regex to get what you need, then the Formatter app can help you here. If you select the Formatter app for your action and then Text > Extract Pattern you can use regex to pull out whatever pattern/text you need. 

I hope that helps!