Skip to main content

I have an existing workflow that I created, that is triggered by a webhook and gathers information from the account via webhook. I then have a path that looks for the status of the account via webhook, and updates the corresponding record in Salesforce with the same status. There is a second path break that looks for field entries, and if the field is present then the corresponding Salesforce record has a checkbox updated. There are 9 paths for the status and 9 for the checkbox fields; how can I put these into a table to simplify the process?

Hi ​@ORMZap 

For us to have more context, outline a specific example for us to follow the data flow and logic.

Make sure to include screenshots of the relevant Zap steps, fields, filters, etc.


Sure!

step 12 is looking for a status, and then updates the opportunity with the same status. Same for the rest. In the second screenshot, step 17 looks for a field for DOB, and then updates the corresponding opportunity field. I would like to simplify these using a table (I’ve never used a Zapier table before).

 


@ORMZap 

If the existing Zaps work as expected, then what are you trying to simplify by using Zapier Tables?


Because of Zap limitations. Is this possible with tables or not really?


@ORMZap 

What are the limitations you are encountering?


As in, there are limitations to how many Zaps my org can use, and for future workflow expansion. So are you saying it’s not possible?


@ORMZap 

Zapier plans come with unlimited Zaps.

Do you mean Tasks used in live Zap Runs?

Glossary of Terms in Zapier: https://help.zapier.com/hc/en-us/articles/8496181725453-Learn-key-concepts-in-Zaps


Thanks for trying to help. Have a great evening.


In case anyone reads this and wants to know how it’s done:

 

Table:

Create your table with the fields that are being retrieved from your webhook under the “Key” column. These should be case specific, so pay attention to that. The other columns are the fields that should be updated in your Salesforce object. You can choose what type of field (checkbox, and selection for mine) it should be.

 

Zapier Workflow:

Enter your Zapier table in the workflow by selecting “+” and then “Tables” under New Zapier Products. Action event is “Find record”, and then enter your table name under configure. The lookup field is Key, and the lookup value is the field you want updated from your webhook. 

 

Get your object from Salesforce, and then enter a code block.

The Input Data will be the items you have under Key in the table (in my case I needed two because I needed to check for both), and then enter on the right the field the input data corresponds to. (I’m checking both the Salesforce record and the webhook data). Use the “Generate with AI” to help you create Javascript code that will get everything done properly (I don’t know how to write Javascript). Here’s what I used:

We are defining 21 Boolean input variables;

var_PhoneSF

var_PhoneWH

var_DoBSF

var_DoBWH

var_StateSF

var_StateWH

var_LicensesSF

var_LicensesWH

var_IndividualSF

var_IndividualWH

var_TeamSF

var_TeamWH

var_LicenseExpirySF

var_LicenseExpiryWH

var_BrokerageSF

var_BrokerageWH

var_TitleVenSF

var_TitleVenWH

var_EstSalesSF

var_EstSalesWH

var_IndividualorTeam

 

If var_PhoneSF is equal to "true", return the value in var_PhoneSF for the variable var_PhoneSF. Otherwise, return the value in var_PhoneWH.

If var_DoBSF is equal to "true", return the value in var_DoBSF for the variable var_DoBSF. Otherwise, return the value in var_DoBWH.

If var_StateSF is equal to "true", return the value in var_StateSF for the variable var_StateSF. Otherwise, return the value in var_StateWH.

If var_LicensesSF is equal to "true", return the value in var_LicensesSF for the variable var_LicensesSF. Otherwise, return the value in var_LicensesWH.

If var_IndividualSF is equal to "true", return the value in var_IndividualSF for the variable var_IndividualSF. Otherwise, return the value in var_IndividualWH.

If var_LicenseExpirySF is equal to "true", return the value in var_LicenseExpirySF for the variable var_LicenseExpirySF. Otherwise, return the value in var_LicenseExpiryWH.

If var_BrokerageSF is equal to "true", return the value in var_BrokerageSF for the variable var_BrokerageSF. Otherwise, return the value in var_BrokerageWH.

If var_TitleVenSF is equal to "true", return the value in var_TitleVenSF for the variable var_TitleVenSF. Otherwise, return the value in var_TitleVenWH.

If var_EstSalesSF is equal to "true", return the value in var_EstSalesSF for the variable var_EstSalesSF. Otherwise, return the value in var_EstSalesWH.

If the following variables, var_IndividualSF or var_TeamSF has a non-null value, then set the variable var_IndividualorTeam to true.

If the variable var_TeamSF has a non-null value, return the value in var_TeamSF for the variable var_TeamSF, otherwise, return the value in var_TeamWH.

If the variable var_LicenseExpirySF has a non-null value, then set the variable equal to true.

 

Everything worked out from there in the end. :)


Wow! Awesome work here, ​@ORMZap🙌 Thanks so much for sharing details of how you solved this, it’s super helpful for others that are looking to build something similar. 🤗

Hope to see you sharing more automation wins like this in the Community soon. Thanks again! 🧡