Integrating Marketo with Slack can be a great way to give visibility to people who might not have access to Marketo or to your CRM. You can configure the integration to post when ANY type of activity happens in Marketo, and it’s pretty easy to do. Follow these step-by-step instructions to setup your integration.
1. Setup an Incoming Webhook in Slack
First, you need to configure Slack so it knows what do to with the data coming from Marketo. This can be done using an incoming webhook. Navigate to this page to get started https://api.slack.com/incoming-webhooks, which will direct you to the setup wizard.
In the setup wizard, configure what channel you want the integration to post to.
Under integration settings, you can customize what you want the post to look like. In this example, I uploaded the Marketo logo, which will be the avatar whenever Marketo posts to slack. Click here to download the icon I used.
2. Create a Marketo Webhook
Next, create a Marketo webhook which will reference some of the information configured in Slack in step 1.
Under Admin > Webhooks click on New Webhook. Give the webhook a name (ex. Slack Integration) and a description of what it’s for.
Navigate back to the Slack integration settings page and copy the Webhook URL provided.
Paste the URL in the Marketo webhook setup wizard under URL.
Leave the rest of the fields blank for now and click create.
3. Setup the Messages
There are tons of trigger-based messages you can send to Slack. Here are a couple examples of what you can trigger off of.
- A lead fills out the contact form
- A lead requests a demo
- A lead visited a specific webpage
- An “interesting moment” occurred
- A white paper was downloaded
- A lead attended a webinar
To send any message to Slack, you will need to put it into a format that it will understand. The syntax for messages looks like this:
1 |
payload={"text": "YOUR TEXT, TOKENS, ETC WILL GO HERE"} |
If you wanted to send a message to Slack when someone fills out your contact form, the syntax would look like this:
1 |
payload={"text": "Contact Us Form Fill \n Name: {{Lead.First Name}} {{Lead.Last Name}} \nEmail: {{Lead.Email Address}} \nCompany: {{company.Company Name:default=not specified}} \nMessage:{{Lead.Message:default=edit me}}."} |
Once you figure out what you want the message to be, you can finish the webhook setup. Navigate to Admin > Webhooks > Edit Webhook and paste in your message under Template.
When triggered, the message will look like this:
4. Step the Smart Campaign
To send messages to Slack based on an activity you will need to create a Smart Campaign for each message you want to send. Messages can be send using any trigger and the flow step Call Webhook.
Other considerations
- If you don’t want any lead/contact data populated in your Slack message, you can use program or folder level tokens, so you can re-use the same webhook template across all programs.
- Create a Marketo testing Slack channel and integrate the webhook with that first. You won’t need to change anything in Marketo if you do this, you just have to go to Slack’s incoming webhook configuration and update the channel.
- Keep in mind that Marketo webhooks do not work on batch campaigns. They only work on triggered campaigns.
Questions?
Send them to me via email, send me a tweet @jennamolby, or leave a comment
Great guide, thank you!
This worked for me, but I had to remove “payload=” in the template field.
This is awesome. I just tested it out and it works a treat.
Glad it worked for you, Glenn!