Send Webhook from Marketo to Zapier

Connecting Marketo to Zapier allows you to unlock a world full of automation and integration capabilities. One way to do this is by sending a webhook from Marketo to Zapier containing information about an event or person and then using this to trigger a workflow to leverage all of the 3rd party integrations and automation tools that Zapier has which Marketo does not.

If you want to learn how to set up webhooks in Marketo, see different use cases, and how to troubleshoot issues then check out the Marketo Webhook Guide with Examples.

In this blog post I will show you how to:

  1. Set up a Zap in Zapier to receive a webhook from Marketo
  2. Configure your webhook in Marketo to send to Zapier
  3. Request this webhook from the flow of a Marketo smart campaign

I will use the example of sending information from a form fill in Marketo to Zapier so that a Jira ticket can be created and populated using the form fill information and a Slack message sent to notify people of the ticket’s creation.

Why would you want to Send a Webhook from Marketo to Zapier?

Zapier is a powerful automation tool with many different integrations with platforms like Slack, Jira, and Google Sheets. Marketo itself is also a powerful automation tool however it lacks the number of integrations and the ease of integration with 3rd party platforms that Zapier has.

By sending a webhook from Marketo to Zapier you can get the best of both worlds by being able to send data from Marketo to Zapier so that Zapier can kick off an automation workflow with these 3rd party platforms using the person or event information sent from Marketo.

Zap Setup to Receive Webhook from Marketo

The very first step when setting up your Zap to receive a webhook from Marketo is to use the “Webhooks by Zapier” App and the “Catch Webhook” trigger. The “Webhook URL” that gets generated for this trigger is what we will use later on in Marketo as the destination for our webhook.

Trigger in Zapier to catch the webhook being sent from Marketo
Catch webhook trigger in Zapier

The next step takes the information that will be sent by the webhook to Zapier and uses it to populate a Jira ticket that is then moved into the “To Do” column of the responsible party in Step 3.

Creating a Jira ticket using the information sent to Zapier from the webhook sent by Marketo
Creating a Jira Ticket from the webhook information
Moving the Jira ticket to the "To Do" column of the responsible person's Jira board
Moving the Jira ticket to the “To Do” column

Step 4 in this Zap is completely optional. All this step does is use some Python code to determine the date 30 days from the form submission date when the Jira ticket created in Step 2 will need to be completed.

Python code used to calculate the date 30 days from the date of the form submission
Determining the date 30 days from form submission date

The final step in this Zap then uses the project key of the Jira ticket in Step 2 to create a link to this Jira ticket which will be sent to an appropriate Slack channel along with the due date for this ticket.

Sending a Slack notification containing a URL link to the Jira ticket along with the date that the ticket needs to be completed by
Sending Slack notification with ticket information

Setting up Webhook to send from Marketo to Zapier

Follow these steps below to create a webhook to send information from Marketo to Zapier:

  1. Navigate to the Admin section in Marketo
  2. Click on “Webhooks” under the “Integration” section in the navigation tree on the left hand side
  3. Click on “New Webhook” at the top of the screen
  4. Name your webhook using the “Webhook Name” field
  5. Enter an optional description if you desire
  6. Paste the “Webhook URL” from the “Catch Webhook” trigger in Zapier into the “URL” field
  7. Leave the “Request Type” as “Post”
  8. What you put in the “Template” field will depend on the information you are trying to send to Zapier (see below for an example template)
  9. Select “JSON” for the “Request Token Encoding” field
  10. Leave the “Response type” field as “None”
Screenshot of the webhook configuration in Marketo
Webhook configuration in Marketo

For this particular example where information from a form fill is being sent to Zapier, the webhook template looked like this:

{
  "First Name" : {{Lead.First Name}},
  "Last Name" : {{Lead.Last Name}},
  "Email" : {{Lead.Email Address}},
  "Phone Number" : {{Lead.Form - Phone}},
  "Address" : {{Lead.Address}},
  "City" : {{Lead.city}},
  "Postal Code" : {{Lead.Postal Code}},
  "Country": {{Lead.Form - Country}},
  "State" : {{Lead.State}},
  "Request Type" : {{Lead.Request Type}},
  "Timestamp" : {{system.dateTime}}
}

Notice how lead tokens are being used to pull in the information that the person submitted to the form along with the system date time token to indicate when the form was filled out. You can insert similar tokens into your webhook template using the “Insert Token” buttons when creating or editing the webhook.

Calling Webhook to Send from Marketo to Zapier

Now this is the easy part!

All you have to do is include the “Call Webhook” action in the flow of your Smart Campaign.

Marketo smart list showing the "Fills Out Form" trigger
Trigger for form submission in Marketo
Screenshot of the smart campaign flow to call the webhook to send from Marketo to Zapier
Calling the webhook to send from Marketo to Zapier

What’s After Sending A Webhook from Marketo to Zapier?

Sending a webhook from Marketo to Zapier unleashes a world full of possible automation and integration capabilities that you can use to streamline your marketing operations workflows.

When it comes to webhooks in Marketo we are only scratching the surface of the sorts of things we can do. Check out the Marketo Webhook Guide with Examples post to see a lot more use cases for webhooks such as:

  • Sending notifications to Slack from Marketo
  • Sending SMS to customers
  • Routing Leads In Salesforce with Chili Piper
  • Computing formulae and storing the output in a field

Leave a Reply

Your email address will not be published. Required fields are marked *