Transcend Docs

Marketo: Inbound Webhook Triggers

Configure Salesforce to forward consent change events to Transcend Preference Management.

This guide will run you through how to setup a custom webhook trigger in Marketo to push consent changes into the Transcend Preference Store.

For other details about this integration, you can find documentation for that integration in the Transcend Dashboard. These instructions can also be found by selecting your integration from the Infrastructure -> Integrations page and clicking on the "Connection" tab to view the instructions.

Overview

Setting up webhook triggers into Transcend involves 4 steps:

  1. Create a new custom field on your lead object called Unsubscribed_Inverted
  2. Create a smart campaign that sets the value of Unsubscribed_Inverted to the opposite of whatever Unsubscribed is set to whenever a new lead is created or the Unsubscribed field is changed.
  3. Create a webhook that calls the Transcend PUT /v1/preferences API that forwads the value of your Unsubscribed_Inverted field.
  4. Create a smart campaign that triggers the webhook in (3) whenever the value of Unsubscribed_Inverted is changed.

Step 1. Create custom field Unsubscribed_Inverted

  • Click on the Admin top menu.
  • Go to Database Management -> Field Management in left hand side menu

Go to Marketo Field Management

  • Click New Custom Field and specify following values
    • Object: Person
    • Type: Boolean
    • Name: Unsubscribed_Inverted
    • API Name: unsubscribedInverted

Create New Custom Field

  • Click Create, after which you should be able to search for your newly created field in search menu on right hand side of the screen

Marketo resulting created custom field

Step 2. Create a smart campaign to populate Unsubscribed_Inverted

  • Click on the Marketing Activties top menu.
  • Right click on Default in the left side menu and click New Campaign Folder to create a new folder to store Transcend smart campaigns

Create a new campaign folder

  • Name the folder Transcend with a description something like Integration with transcend.io for preference management

Name and save the Camaign folder

  • Click back on Default in top left corner and click New Smart Campaign button

Create a new smart camaign

  • Fill out the form to create the smart campaign
    • Campaign Folder: Transcend
    • Campaign Name: Set Unsubscribed_Inverted for transcend.io
    • Description: Set the Unsubscribed_Inverted custom field to be the inverted value of Unsubscribed field whenever a new lead is created or updated.
    • Executable: Leave blank

Fill out the smart campaign form

  • Go to Smart List tab and make the following changes:
    • Update filter to Use ANY filters instead of Use ALL filters
    • Add new rule for Data Value Changes with Attribute selection of Unsubscribed
    • Add additional rule for Person is Created

Set up smart list rule for unsubscribed_inverted

  • Go to Flow tab and make following changes
    • Add rule for Change Data Value
    • Set if statement logic to: If Unsubscribed is true
    • Set first conditional to Attribute: Unsubscribed_Inverted New Value: false
    • Set default choice to Attribute: Unsubscribed_Inverted New Value: true

Set up the flow for unsubscribed_inverted

  • Go to Schedule tab to activate campaign
    • Ensure Campaign Status is set to Active
    • Ensure Block non-operational emails is not checked
    • Ensure Run each person through the campaign flow is set to every time

Enable qualifcation rules for unsubscribed_inverted campaign

  • At this point, you should be able to test that this is working
    • You should start seeing triggers for this smart campaing in the Results tab
    • You can test this by going to a lead, toggle the Unsubscribed field and then check back on the Results tab to ensure the campaign triggers

View results of unsubscribed_inverted camaign

Step 3. Create a webhook trigger

  • Click on the Admin top menu.
  • Go to Integration -> Webhooks in left hand side menu
  • Click New Webhook
    • Webhook Name: Transcend Preference Change
    • Description: Push consent change events to transcend.io Preference Management
    • URL: This value can be found in the section below. If Transcend hosted, this value is https://multi-tenant.sombra.us.transcend.io/v1/preferences for EU hosting and https://multi-tenant.sombra.transcend.io/v1/preferences for US hosting.
    • Request Type: PUT
    • Template: See Below
    • Request Token Encoding: None
    • Response type: None

The request template will look like:

{
  "records": [
    {
      "userId": "{{lead.Email Address}}",
      "partition":  "6efb0409-a0f6-4d3c-90dd-0a03f909dd68",
      "timestamp": "{{system.dateTime}}",
      "purposes": [
        {
          "purpose": "Marketing",
          "enabled": {{lead.unsubscribedInverted}}
        }
      ]
    }
  ],
  "skipWorkflowTriggers": false
}

However you will need to adjust partition using the guide below and purpose using the guide below

Create a new webhook in Marketo

  • Lastly, you will want to add two Customer Headers
    • Authorization: This is an API key created under Developer Settings -> API Keys and create a new API key with the scope Modify User Stored Preferences.
    • Content-Type: application/json

Add webhook headers to Marketo webhook

Finding your Sombra URL

  • Go to Infrastructure -> Sombra in your Transcend account
  • Choose the Sombra gateway that makes sense for your use case (you most likely will want to use the Sombra marked as "Is Primary Sombra?")
  • Copy the "Transcend Ingress URL" value as your Sombra base URL

Preference Management Sombra Gateway

Finding your partition

The partition can be thought of as the ID of the consent database to update. In most implementations, you will just have one unique partition in your account. Multiple partitions can be useful in situations where you have multiple brands, partners or data controllers for which you need to separately track consent preferences for.

To grab this value:

  • Go to Preference Management -> User Preferences -> Settings
  • Ensure Preference Store toggle is enabled.
  • Click on the button "Open Partition Settings"
  • Locate your desired partition and click the copy button. The default partition is labeled BUNDLE_ID - this is most likely the value you will want to use.

Preference Management Settings

Preference Management Copy Partition Key

Finding your purpose and preference slugs

When submitting requests to the Transcend API, you will want to update your purposes and preferences using their respective "Slug" values.

To find your purpose slugs, look at the "Slug" column under Consent Management -> Regional Experiences -> Purposes. To find your preference slugs, look at the "Slug" column under Preference Management -> Topics. To find your preference option slugs, look at the "Slug" column under Preference Management -> Preference Topics -> Options.

Step 4. Create a smart campaign to trigger webhook when Unsubscribed_Inverted changes

  • Click on the Marketing Activties top menu.
  • Fill out the form to create the smart campaign
    • Campaign Folder: Transcend
    • Campaign Name: Trigger Transcend Webhook when Unsubscribed_Inverted changes
    • Description: Send webhook event to Transcend when Unsubscribed_Inverted custom field changes.
    • Executable: Leave blank

Create new smart campaign to send webhook

  • Go to Smart List tab and make the following changes:
    • Add new rule for Data Value Changes with Attribute selection of Unsubscribed_Inverted

Add smart list rules to webhook campaign

  • Go to Flow tab and make following changes
    • Add rule for Call Webhook with value Transcend Preference Change (created in Step 3)

Add flow rules to webhook campaign

  • Go to Schedule tab to activate campaign
    • Ensure Campaign Status is set to Active
    • Ensure Block non-operational emails is not checked
    • Ensure Run each person through the campaign flow is set to every time

View successful result in schedule tab

  • At this point, you should be able to test that this is working
    • You should start seeing triggers for this smart campaing in the Results tab
    • You can test this by going to a lead, toggle the Unsubscribed field
    • If you refresh the page you should see Unsubscribed_Inverted set to the inverse of Unsubscribed
    • Under the Results tab of the second smart campaign created in step (4) you should see webhooks sending. Check to m and then check back on the Results tab to ensure the campaign triggers
    • Click on any Results to ensure that Transcend API is returning a 200 status code
  • Check Transcend Preference Management to ensure consent is synced in properly

Enable webhook smart campaign

On this page