Skip to main content

Hello,

I am trying to use a Catch Hook in Zapier to grab Marketo Lead Details. It is returning no data, I was hoping to use the Marketo ID to find a record in Airtable. 

 

Is Catch Hook the best way to accomplish this? Or should I be using a Custom Action to try to grab Lead Details from Marketo? 

 

 

Hi @mktgbt1 

Did you test the Marketo event that would trigger the Zap webhook after the Zap webhook was configured?

Once you do, in the Zap trigger ‘Test’ section, click the Find new records] button.


Hey @Troy Tessalone 

Thanks for the reply here. I have tested the marketo event that triggers the Zap webhook. It started to work and brought a few records in successfully. I made a few changes to the payload template and tried to bring more test records in. It seems like no more test records are coming through to the Zap even though on the Marketo side, it says it was a success. 

 

Do you have experience with issues with test records not coming through the Zap?

 

I have made sure that I have the test trigger tab open while sending through the records. I have also made sure that all of the test records I send through are new to ensure the test records come in correctly. 

 

 


@mktgbt1 

There is built in deduplication with Zap triggers.

You may need to add a cache buster, such as a timestamp value to come across in the webhook data payload to make the record data unique.


@Troy Tessalone 

Thanks again for the reply. I have tried a few different things. I have tried the payload templates of: 

{“time”: {{system.dateTime}} "email": {{lead.Email Address}},"lastName": {{lead.Last Name}},"mktoID": {{lead.ID}},"munchkinID": {{system.munchkinId}}}

and

{"email": {{lead.Email Address}},”firstName”: {{lead.First Name}},"lastName": {{lead.Last Name}},"mktoID": {{lead.ID}},"munchkinID": {{system.munchkinId}}}

 

Neither of those payloads templates worked when syncing over test records. The only payload template that I have had success with is the original one of:

{"email": {{lead.Email Address}},"lastName": {{lead.Last Name}},"mktoID": {{lead.ID}},"munchkinID": {{system.munchkinId}}}

Any idea why this payload template would work and not the other two above? Is it possible that only a certain amount of characters/fields can be synced over in a Catch Hook payload template? 


@mktgbt1 

We would probably need to see screenshots with how the webhook is configured in the source app.


@mktgbt1 

You can use this tool to validate your JSON: https://jsonlint.com/

 

You may need to add double quotes “” around each of the dynamic placeholders for the values.

 

This is missing a comma after the time (highlighted where added)

{“time”: {{system.dateTime}}, "email": {{lead.Email Address}},"lastName": {{lead.Last Name}},"mktoID": {{lead.ID}},"munchkinID": {{system.munchkinId}}}

 


@Troy Tessalone 

This is what the payload template in Marketo is. {"email": {{lead.Email Address}},"firstName": {{lead.First Name}},”lastName": {{lead.Last Name}},"mktoID": {{lead.ID}},"munchkinID": {{system.munchkinId}}}

The request token encoding is JSON

Request type is POST

Response type is non

Custom headers: 

header: content-type

value: application/json

I would post a screenshot but it is not working right now. 

 


@mktgbt1 

Can you provide a screenshot to give us true context?


@Troy Tessalone 


@mktgbt1 

Did you try this suggestion using the template below?

You may need to add double quotes “” around each of the dynamic placeholders for the values.

 

{"email": "{{lead.Email Address}}","firstName": "{{lead.First Name}}",”lastName": "{{lead.Last Name}}","mktoID": "{{lead.ID}}","munchkinID": "{{system.munchkinId}}"}

 


Reply