Certain Signal: Marketo Native Integration Guide.
This document is a guide to using Certain Signal to integrate with Marketo. Signal also integrates with other products, including Eloqua and Salesforce via native integrations and others via Webhooks or Advanced Webhooks – see separate guides.
This product is not included with Certain Platform by default. If you’re interested in it after reading this document, please email help@certain.com and features@certain.com, including your account name.
Contents
1. What is Signal? How does it work?
2. Prerequisites
- Data-Flow Considerations
- Marketo Credentials
3. Overview of Setup Steps
4. Setting up Tags
- What Are Tags?
- Setting Tags Up for an Account
- Applying Tags in an Account
- Applying Tags in an Event
5. Opening Certain Signal
6. Setting up a Connection
- What are Connections?
- Adding a Connection
7. Setting Up Flows
- What is a “Flow”?
- The Flow List
- Configuring a Flow
8. Flow Data Source
- Available sources
- Activate for
9. Flow Filters
10. Flow Destination
- Setting up a Destination
- Mappings
- Campaign ID
- Form
11. Metrics Dashboard
- Account Insights
12. The Retry Queue
13. Replaying a Flow
What is Signal? How does it work?
Certain Signal processes data from your events in real-time.
Certain Signal passes data from Certain Platform to your instance of Marketo.
This real-time integration empowers sales and marketing teams to take intelligent, prompt action on the right event data.
Almost everything is set up at the account level. Signal processes information from the events in your account.
For event-level information, Signal uses the custom tags you attach to data such as Events, Custom Registration Properties, or Registration Statuses, as explained in this guide.
> Important: Signal processes outbound information. > Signal processes information from Certain. > Signal sends processed information to Marketo.
Prerequisites
Data-Flow Considerations
- Do you capture data in registration questions that will be synced to Marketo?
If so, you’ll need to apply tags to those questions: see Registration Questions.
- Do you have different data mappings based on registration status, or attendee type?
If so, you’ll need to apply tags to those items: see Registration Status or Attendee Types.
- How many Marketo campaigns?
- One campaign that’s common to all events, or one campaign per event?
- If one per event, you’ll need an Event Question for the Campaign ID: see Campaign ID.
Marketo Credentials
For you to set up a Connection in Signal ( see Setting up a Connection ), you’ll need to know the URL you use to log in to Marketo.
Marketo administrator must create an OAuth2 app in Marketo.
To create the OAuth2 app in Marketo, go to: Admin > Integration > LaunchPoint > New Service > Service: Custom > Create.
Marketo administrator must provide the following details:
- Client Id
- Client Secret
Overview of Setup Steps
Table: Setup steps
| Step | See Page |
|---|---|
| On Certain Platform | |
| 1. Add tags in the account | Setting up Tags |
| 2. Apply those tags | Applying Tags |
| In Certain Signal | |
| 3. Add a Connection | Adding a Connection |
| 4. Configure a Flow | Setting up Flows |
Setting up Tags
What Are Tags?
Tags are a way of identifying event-level data using labels you set at the account level.
You can apply those tags to generic items in events.
You can especially apply those tags to custom registration statuses and custom registration properties for use in Certain Signal.
Tags can be used for other purposes. This guide does not cover other purposes.
For example, your events may have several custom registration statuses in addition to the standard ones. You can apply the same Tags to more than one status. You can also give each one its own Tag.
When you set up a Flow in Certain Signal to send data to Marketo when an attendee’s Registration Status changes, you specify the tags applicable to those statuses. You specify the tags instead of the statuses themselves.
That setup means the flow can apply to any event in your account.
Setting Tags Up for an Account
1. As an Administrator, go to Account Settings > Management >Tags.
2. Enter a Name and a Label for the tag.
3. Select the Object(s) to which the tag can apply.
For example, ‘Registration Statuses” and/or “Custom Registration Properties”.
4. Click Add.
5. Repeat as required for as many tags as you need.
6. Important: Add enough tags to apply to all of the following that you will use in your Signal Flows (see Flow Data Source):
- a. Registration Statuses
- b. Custom Registration Properties
7. Also, add enough tags to apply to all of the following that you will use in filters for flows (see Flow Filters):
- a. Attendee Types
- b. Events
Applying Tags in an Account
In each event from which you want information to flow through Certain Signal, apply tags to the relevant information: Registration Statuses and Registration Custom Properties.
You can also tag Attendee Types and Events to filter registration records by attendee type or event: see Flow Filters.
Default Registration Statuses
These apply to all events.
An Administrator applies the tags at the account level.
1. Go to Account Settings > Management > Registration Statuses. 2. or more Tags for each status.
> Important: Even if you don’t use any standard registration statuses, the best practice is to set up tags for all of them. > It’s essential to tag at least the ‘ New ’ status. > Certain uses “behind the scenes” behavior when first processing each registration.
Applying Tags in an Event
Custom Registration Statuses (Essential)
1. In each event, go to Plan > Event Setup > Custom Statuses
2. Select at least one tag for each status.
Custom Registration Properties (Optional)
If any of the Flows you configure in Signal ( see Configuring a Flow ) will activate for Custom Reg Properties:
1. In each event, go to Plan > Configure. 2. Under Custom Registration Properties, select at least one tag for each custom reg property in the event.
Standard Registration Properties (Automatic)
These tags are set up for you automatically.
The tag names match the property names.
The standard registration properties are:
- Complete
- Badge Printed
- On To Do List
- Invoice Generated
- Test
You only see these tags in Signal. Signal supports activating Flows for them (see Activate for).
There’s nothing to edit on Certain Platform.
Attendee Types
(Optional– for use with filters – see Flow Filters.)
1. In each event, go to Plan > Event Setup > Attendee Types. 2. or more Tags for each attendee type on which you may wish to filter registrations. (See Flow Filters.)
Events
(Optional– for use with filters – see Flow Filters.)
1. In each event, you wish to include in a filter. For example, to ensure that only registrations for that event are passed to Marketo: 2. Go to Plan > Event Setup > Details. 3. or more Tags for the event.
Registration Questions
(Optional– for mapping Certain fields to Marketo fields – see Mappings.)
1. In each event in which you use registration questions to capture data from attendees and wish to pass those answers and/or questions to Marketo: 2. Go to Plan > Event Setup > Questions. 3. Select just one Tag for each question. Selecting more could result in duplicate data in Marketo.
Opening Certain Signal
When Signal is activated for your account, the Account Settings > Implementation menu—available to Administrators—includes an extra option:
- Signal Real-Time Data Integration
Click that link to open Certain Signal in a separate window. Signal runs separately from Certain Platform.
> Note: To return from Signal to Certain Platform at any time, click the return control inside Signal.
Setting up a Connection
What are Connections?
A Connection in Certain Signal specifies how to connect to your instance of Marketo.
Marketo is the Target application.
You can have multiple connections. You can connect to Marketo and another application.
Other target applications are covered in separate guides.
Each Flow ( see Setting up Flows ) requires a Connection. Multiple flows may use the same Connection.
You can set up a Connection before configuring your first Flow. You can also set up a Connection while configuring a Flow.
This guide assumes you’re setting up the Connection first.
Adding a Connection
As an Administrator, you may set up one or more Connections for your account.
You need only do so once.
Then you can use Connections in the Flows you set up (see The Flow List, below).
1. Go to Account Settings > Implementation > Signal Real-Time Data Integration.
2. Certain Signal opens in a separate window.
3. Click Connections in the left navigation panel.
4. Click Add A Connection in the Connection List page that opens.
5. Enter the details in the Connection Setup screen that opens.
- Target: Select Marketo as the third-party app to connect to.
- Connection Name: Enter a name of your own choice.
This could be just ‘Marketo’ or ‘Marketo Connection’.
- Service URL: Enter the beginning of the Marketo URL to which you are redirected when you log in to Marketo.
Use the part starting with “https://” and ending with “marketo.com”.
For example: https://app-ab13.marketo.com
- Authentication Type: Select the authentication type to be used.
For Marketo this is currently OAuth2.
- Grant Type: Select 'Client Credentials'
- Client Id and Client Secret: These two long strings of characters are unique to the OAuth2 app your Marketo administrator has set up, as explained under ‘Marketo Credentials’.
- Access Token URL: Use the default value.
- Refresh Token URL: Use the default value.
- Scope: Leave blank.
Use the default value if there is one.
- Test Connection URL: Use the default value.
- Force Update: Relevant only for ‘Trigger Campaign’ actions.
If selected, then if Marketo already has a record for the Lead whose data is being sent, that Lead will be updated where any details in Certain differ.
For example, their phone number.
- Is this a primary connection: Select only if previously you used Plan > Configure > Connectors to integrate with Marketo.
The Signal connection will take precedence.
6. Click Save & Test.
7. If the test is successful, click Close.
If it’s not, check that the values in step 5 are all correct.
Setting Up Flows
What is a “Flow”?
A flow is a configuration to manage the flow of data from Certain to Marketo.
You create Flows from the landing page in Signal.
You may configure several flows for an account. Multiple flows might all use the same Connection.
You only need to configure a flow once at the account level. When a flow is complete, it will start picking up data for each event in that account within about a minute.
The minute’s delay occurs because Signal runs independently from Certain Platform. If you edit a flow, the same slight delay occurs before changes take effect in the processing of the registrations.
The Flow List
As an Administrator in Certain Platform, go to Account Settings > Implementation > Signal Real-Time Data Integration.
Certain Signal opens in a separate browser window.
The main screen in Signal is the Flow List, which lists all flows.
The Status column shows whether a flow is completely set up.
The Active column shows whether the flow is running. Click the toggle button to change a flow from Active to Inactive, or vice versa.
Configuring a Flow
Click ADD A FLOW to start setting up a new flow.
See screenshot overleaf.
The configuration consists of:
- Name
- ‘ Live ’ or ‘ Test ‘ status.
(See immediately below.)
- Source: What information the Flow will look for, and what it will activate for in your events.
(See Flow Data Source.)
- Filters: Optional filters to narrow down that information.
(See Flow Filters.)
- Destination: Where and how that information goes into Marketo.
(See Flow Destination.)
‘Live’ or ‘Test’
The Live toggle switch determines whether your Flow is Live or Test.
A Live Flow will pick up all live registrations in live events. It will ignore test registrations, even in live events.
A Test Flow picks up all test registrations. Test registrations include registrations in test events and registrations marked as ‘Test’ in live events.
> Best Practice: Set a new flow up as Test. > Test the flow. > Then set the flow to Live.
Flow Data Source
Next, specify the Source of data for the flow.
Optionally apply Flow Filters.
The Source of a Flow is what the Flow will watch for in your data in Certain. The Source controls when the Flow activates in Signal.
For example, the Flow might watch for any change to a Registration Status. Then Signal activates if an attendee’s status has changed to a status tagged as ‘Registered’.
Available sources
You set a flow to watch for any one of the following:
- Registration Create Update: When a registration is created or updated.
- Registration Status Change: When a registration’s status changes.
- Session Registration Status Change: When a registration’s session registration status changes.
- Event Create Update: When an event is created or updated.
> Note: You can always save an incomplete Flow. > You can complete it at a later date. > Once a Flow is complete, it will start picking up data after the usual minute’s delay.
Activate for …
Choose what the flow should activate for by selecting one or more tags in each appropriate object’s dropdown list.
As shown in the screenshot above, you can activate for tags applied to Registration Statuses and/or Registration Properties. Registration Properties includes both Standard Reg Properties and Custom Reg Properties.
Other options may be added depending on what the Flow is watching for:
- If the Flow is watching for Registration Status Change, you must activate for Registration Statuses.
- If it’s watching for Session Registration Status Change, you must activate for Session Registration Statuses.
- If it’s watching for Event Create Update, you must activate for Event Statuses.
The tags available for selection are those set up for that object. See Setting up Tags.
For example, the tags for Registration Statuses include Registration Status tags.
You can apply those tags to:
- standard registration statuses at account level (see Applying Tags in an Event)
- custom registration statuses at event level (see Applying Tags in an Event)
Flow Filters
You can filter the data going into a flow by selecting fields in any of these three filter types:
- Event fields
- Profile fields
- Attendee Type tags
The flow will only include a registration if it meets the rule(s) specified in the filter.
Event
Available fields:
- standard event fields
For example, Event Code
- custom event fields
- event tags
Profile
Available fields:
- standard profile fields
For example, Position
- custom profile fields
Attendee Type Tags
Available fields:
- tags that can be applied to Attendee Types
> Note: For custom fields you can only select “enumerated” questions. > Enumerated questions use pre-configured answers. > Enumerated question types include: > - Select > - Multi-select > - Checkbox > - Radio
Flow Destination
Select Marketo from the integrations set up by Certain for your account.
Setting up a Destination
1. Give the Destination a name of your choice.
2. Select the Connection to use.
- Note: You can instead click New Connection to add a connection.
The process to set up the new connection is the same as described on Setting up a Connection.
3. Select the action for this connection from those listed as available:
- Trigger Campaign
- Create/Update Lead
- Form Post
Your choice of action determines the other configuration options.
Mappings
The Available Mappings option is available for most actions.
This includes:
- 'Trigger Campaign'
- 'Create/Update Lead'
- 'Form Post'
A mapping specifies how each target field in Marketo matches a source field in Certain. Select a mapping from the drop-down list.
If nobody has set any mappings up yet, or you need something other than one of the existing mappings, click New Mapping to add one.
1. Give the mapping a name of your choice.
Best Practice: For multiple mappings used for different flows, make the names self-explanatory.
For example, ‘Lead Mapping’ and ‘Form Mapping’.
2. The left column lists Marketo fields.
These are the “target” fields.
Under each one is the default “source” field in Certain that matches that target field.
For example: target field ‘Salutation’ defaults to source field ‘Prefix/Title’.
This means the value of the Salutation field in Certain will populate the Prefix/Title field in Marketo.
3. By default, only the First Name, Last Name and Email fields are mandatory.
Select the checkbox next to a target field to make it mandatory.
- If a required field is missing, there’ll be a validation error when the flow tries to update Marketo.
This is not normally fixable.
Signal does not send this issue into the Retry Queue.
4. Click the x after a source field label to delete that field.
Click to add a new one.
> Note: You can concatenate multiple source fields for the same target field. > You can also type fixed text.
For example, for target field ‘Title’ you could choose source fields ‘Position’ and ‘Organization’. Separate the source fields by two spaces and “@”.
The Certain fields you can choose from as the source of the data going into the target fields in Marketo include:
- Profile Standard Fields
- Profile Custom Fields
- Registration Standard Fields
- Registration Custom Question Tags – one field for the question, and one for its answer.
See page 5 about not using the same tag for more than one question.
- Registration Standard Properties
- Account Standard Fields (Account Code)
- Event Standard Fields
For example, Event Code and Event Name
- Event Custom Fields
- Flow Fields (Flow Name)
- Macros
For example, Current Date
5. In the second column you can select a transformation option for each field.
The default of no selection sends data to Marketo unchanged.
The options are:
- lower case
- Proper Case
- UPPER CASE
- Trim (This removes extra spaces.)
> Note: You can select more than one transformation for a field. > For example, you could change a field to Proper Case and then trim it.
6. At the end of the list you can Add Target Fields and select source fields for them.
To delete a field from the mapping, click DELETE at the end of that row.
If you’ve selected a mapping then Signal enables two other buttons:
- Edit Mapping
- Preview Mapping
A third button is also enabled:
- Refresh Target Fields
Use Refresh Target Fields if you don’t find a target field you were expecting in an existing mapping.
> Technical note: This is likely for new fields added since a connection was created. > Target fields are cached when a connection is tested. > A refresh updates the cached mappings.
Campaign ID
The Campaign ID is required if your action is ‘Trigger Campaign’ or ‘Create/Update Lead’.
There are two options:
- Select Campaign ID Based on Event Question
If you have a unique campaign for each event, use a custom event question to specify the campaign ID.
See Registration Questions.
Select that question here.
- Campaign ID
To move all attendees to a single campaign regardless of event, enter the campaign ID here.
> Note: If you specify both an event question and an account-level campaign ID, then the event question-based campaign takes precedence.
Form
If the selected action is Form Post, complete the following:
- Select A Form – Select the Marketo form to which the data will be sent.
- Form URL – This is populated automatically based on the form selected.
- Mapping – The target fields are pre-populated based on the form selected.
Then select the target fields and map them to the source (Certain) fields, as described under Mappings above.
Metrics Dashboard
To see the statistics available in Signal, click Metrics in the left navigation panel when looking at flows.
The choices in the new navigation panel depend on the flows and their targets.
The first choice will be Insights.
Other links will be, for example:
- Leads Created
- Form Posts
These links work in the same way as Account Insights.
Account Insights
Select whether you want to see Live Flows or Test Flows.
Select the period for which you want to see the data.
For example:
- for the last 15 minutes
- 1 hour
- 4 hours
- a number of days
There are three tabs:
- Summary
- Troubleshooting
- Activity Feed
Summary tab
The Summary tab is the default tab on the Insights page.
The figures shown depend on the flows and actions.
For some figures, you can click the number to drill down further. For example, click Unique Registrations to see the registrations processed by any flows in your selected time frame.
You can filter or search for records when you’ve drilled down. For example, filter on an Event Code to see only the registrations in that event.
All figures are for the whole account, including all events and registrations.
For each of these, you can click the number to drill down to details:
- Changes Processed: The number of registrations processed.
It increments each time a registration is created or updated in Certain and then processed by a flow in Signal.
> Note: This will often include the same registration more than once.
> For example, creating a registration and then updating it twice would total three “changes”.
- Unique Registrations: The number of registrations processed.
This counts any single registration only once.
This is likely the most relevant figure on the page.
It’s likely lower than Changes Processed.
For example, if Joe Citizen’s registration was processed three times, Changes Processed would have increased by 3.
Since those changes were all for the same registration, Unique Registrations increases by only 1.
- Actions Triggered: The number of actions triggered by flows.
If you only have one flow with one action, this could be the same as Changes Processed.
Multiple flows and multiple actions increase the number of actions that may be triggered.
- Actions Not Triggered: This is only displayed if registrations were processed by flows without actions being triggered.
This could be caused, for example, by a registration having an untagged status.
- Active Flows: The number of flows actually processing registrations during the selected period.
This is not related to whether the flow are shown as ”Active” or ‘Inactive” on the Flow List.
- External Activities: Not applicable to Marketo.
This would apply only if a Target were Eloqua.
- Form Posts: Relevant for Form Post actions.
This is the number of form posts.
- Leads Created: The number of leads created in Marketo by flows.
- Leads Updated: The number of leads updated in Marketo by flows.
- Registration Activity in Certain: Overview information.
- Processing Status: A pie chart comparing numbers of failures and successes.
Drilling down into failures provides a high-level view for troubleshooting.
For example, you can see why an action has failed.
If you can address the issue, you can expedite the fix in Signal by going back to Flows. Then click Retry in the left navigation panel. See Retry Queue.
Troubleshooting tab
The second tab on the Insights page shows information useful for troubleshooting.
For example, if some registrations are not processed because a Registration Status isn’t tagged, this gives you the chance to rectify that. Then the registrations can be processed on the next retry.
Numbers shown include:
- In Retry Queue: If an action fails, it joins the Retry Queue and is tried again.
Maximum automatic retries per action = 3.
- Total Retried: The number of retries.
If an action was retried twice, it adds 2 to this number.
- Retried Abandoned: The actions that failed three retries.
- Validation Errors: No retries possible because failed validation.
For example, a lead that could not be created because a mandatory target field had no value in the source field.
See ‘ Mappings ’
- Retry Activity: A chart showing retries by time.
- Retry Processing Category: A chart showing retries by category: “General”, “System”, “Config”, “Connection”, etc.
- Connection Activity: A chart showing activity per connection over time.
Activity Feed tab
The third tab on the Insights page lists the registrations processed.
The feed notes success or failure, Registration Code, Event, Flow, etc.
This is a rolling history by date. This provides another way to access lower-level data you could see by drilling down in the Summary or Troubleshooting tabs.
The Retry Queue
When an action fails it usually joins the “ Retry Queue ”.
Signal runs that action again in turn.
Failures that can’t be resolved do not join the queue. Examples include missing mandatory fields.
An action can be retried up to three times. After three retries, the action does not rejoin the queue.
To see the Retry Queue, click Retry in the left navigation panel on the Flows page.
Causes of failure include ones under your control as a planner. For example, a registration with a status that hasn’t been tagged.
Causes also include technical ones such as a connection being down.
Where you can resolve the cause of a failure, such as tagging a registration or setting a flow back to being active, that resolution is enough. The action should succeed when retried.
For other failures that don’t resolve themselves, you probably need to contact your administrator or ask Certain for help.
The interval between retries depends on the severity of the reason. More serious reasons trigger retries sooner.
Filtering the Queue
You can filter the records shown in the Retry Queue using these three filters:
- Integration: Probably only one option, ‘Marketo’, unless you have multiple integrations set up.
- Status: ‘All Statuses’, ‘Retry’, ‘Error’, ‘Failed’, or ‘Done’.
- Category: ‘All Categories’, ‘General’, ‘System’, ‘Config’, ‘Certain API’, ‘Connection’, etc.
Submitting to the Queue
When you click an item in the Retry Queue, you see its full details.
If that knowledge is enough for you to solve the problem, you can click Submit to Retry Queue. Submitting adds the item straight to the front of the queue.
Replaying a Flow
If you change an aspect of a flow while it has been running for some time, such as changing its filters, you may want to replay that flow for the same registrations as before.
This replay acts as if the changes had been made earlier.
This replay is not something you can do directly. You can ask Certain to arrange it for you.
You may be able to specify a date range. You may also be able to specify an event.