Hi, Does Marketo allow us to have a check with an external URL on the subscription list before sending out an email. Does webhook allow this? | Community
Skip to main content
May 12, 2016
Question

Hi, Does Marketo allow us to have a check with an external URL on the subscription list before sending out an email. Does webhook allow this?

  • May 12, 2016
  • 3 replies
  • 3464 views

Hi,

Does Marketo allow us to have a check with an external URL on the subscription list before sending out an email. Does webhook allow this?

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

3 replies

Josh_Hill13
Level 10
May 12, 2016

Yes, you could use a webhook.

There are docs around on how to do this and you can check out RingLead's old webhook guide.

Why do you need to do this?

May 12, 2016

We have two other services that need to be synced when ever a user unsubscribes. Instead, we're considering having one source of truth and have Marketo make a call to this service before sending emails.

Josh_Hill13
Level 10
May 12, 2016

Why not make Marketo the source of truth and use a batch API update to bring in the values elsewhere, manage the conflicts, and pass it back to Marketo?

SanfordWhiteman
Level 10
May 12, 2016

You can do this with a webhook, yes.

But note it's not as simple as returning a true/false value from the webhook: you use the webhook to set the value of a field on the lead, and then use that data value change to take further action.

May 12, 2016

Thanks for the quick response. Could you point me to an example of this. I'm just trying to figure out how I can make the webhooks for a particular event.

SanfordWhiteman
Level 10
May 12, 2016

What exactly are you not finding in the docs or elsewhere on the web?  Webhooks are a general-use technology and Marketo supports them quite well.  Set up your service to expect the {{Lead.Email Address}} -- either in the URL (GET) or in the body (POST) of the request -- and respond with a JSON object with the field(s) you want to update.

The tricky part with Marketo is that data value change is asynchronous (i.e. "in the background") meaning that you can't expect the lead field to be updated on the very next step of the flow.  Some people put an arbitrary wait step. I categorically disagree with this approach.  Instead, set up an SC that triggers on the Change Data Value activity, so it is always right.

Grégoire_Miche2
Level 10
May 14, 2016

Hi Sridevi,

The approach you are looking into (checking before sending the email if the lead is unsubscribed in another DB), IMHO, is dangerous: it works only for smart campaigns and will not work for engagement programs with emails nor with email programs. It also completely depends on users not forgetting to call the webhook before sending.

At the end of the day, the safest approach is to that the complete list of unsubscribes are located within Marketo, so that you protect sends non only now but also in the future and is implemented on all programs for all users. It can be done without increasing your Marketo DB. See this post: Feeding the Durable Unsubscribe List without increasing the database

The approach described in this post is done through an import, but you could also use it through the REST API.

-Greg

Josh_Hill13
Level 10
May 14, 2016

You can certainly do this with Engagements with a daily removal campaign. Also, if the unsub flag is properly updated, the Engagement won't send anyway.

Grégoire_Miche2
Level 10
May 15, 2016

Hi Josh,

Sure, bit as these unsubscribes are not known to Marketo until the webhook is called, it is still completely dependent on the users not forgetting to place checks everywhere. Quite a sure way that someone forget's one day.

-Greg