Overview
Certain Signal: Eloqua Native Integration Guide.
This document is a guide to using Certain Signal to integrate with Eloqua.
Certain Signal also integrates with other products. Certain Signal integrates with Marketo and Salesforce via native integrations. Certain Signal integrates with other products via Webhooks or Advanced Webhooks. Separate guides cover those integrations.
This product is not included with Certain Platform by default. This document requires the account name for setup. The setup requires email sent to help@certain.com. The email must include the account name.
Contents
- What is Signal? How does it work? ..................................................2
- Prerequisites ..................................................2
- Data-Flow Considerations ..........................2
- Eloqua Credentials ..........................................2
- Overview of Setup Steps ..................................................3
- Setting up Tags ..................................................3
- What Are Tags? .................................................3
- Setting Tags Up for an Account.................3
- Applying Tags in an Account......................4
- Applying Tags in an Event............................4
- Recording an Event’s Campaign Name ..................................5
- Opening Certain Signal ..................................................6
- Setting up a Connection ..................................................6
- What are Connections? ................................6
- Adding a Connection ....................................6
- Setting Up Flows ..................................................8
- What is a “Flow”? ..........................................8
- The Flow List...................................................8
- Configuring a Flow .......................................8
- Flow Data Source ..................................................10
- Available sources .........................................10
- Activate for … .............................................10
- Flow Filters ..................................................10
- Flow Destination ..................................................11
- Setting up a Destination ................................11
- Mappings .......................................................11
- Campaign ID ..................................................13
- Form .................................................................13
- Metrics Dashboard ..................................................14
- Account Insights .........................................14
- The Retry Queue ..................................................16
- Replaying a Flow ..................................................17
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 Eloqua.
This real-time integration empowers sales and marketing teams. This real-time integration enables prompt action on the right event data.
Almost everything is set up at the account level. Certain Signal processes information from the events in the account. Event-level information comes from custom tags attached to data. Custom tags include custom tags attached to data such as Registration Statuses.
Important: Signal processes outbound information. Signal processes outbound information from Certain. Signal sends outbound information to Eloqua.Prerequisites
Data-Flow Considerations
Capture data in registration questions that will be synced to Eloqua. This capture requires applying tags to those questions. The guide references page 5 for tags.
If different data mappings exist based on registration status or attendee type, apply tags to those items. The guide references page 4 for tags.
Determine how many Eloqua campaigns exist. The guide describes two options. The guide describes one common campaign for all events. The guide describes one campaign per event.
If one campaign exists per event, the guide requires an Event Question for the Campaign ID. The guide references page 5 for the Event Question.
Eloqua Credentials
Setting up a Connection in Signal requires deciding between two authentication options. Signal supports OAuth2 or Basic Credentials.
Setting up a Connection is explained later in this guide. The section for OAuth2 and Basic Credentials explains the information required in advance.
OAuth2
The Eloqua administrator must create an OAuth2 app in Eloqua. The Eloqua administrator must use Settings > App Cloud Developer > Create New App.
The Eloqua administrator must provide the following details:
- Endpoint
- Client Id
- Client Secret
- Callback URL: https:///svcs/maintegration/oauth2Callback
Basic Credentials
This option uses an Eloqua user. The Eloqua user provides Username and Password.
The Eloqua user is likely an integration-only user. The user can use a name such as MyOrganization/Integrationuser. The Eloqua user can also be a regular user.
The Eloqua user must have access in Eloqua to:
- Create Contacts
- Add Contacts to a List
- External Activities
Overview of Setup Steps
The guide lists the setup steps across Certain Platform and Certain Signal.
On Certain Platform
1. Add tags in the account. See page 3.
2. Apply those tags. See page 4.
3. Add Event Question for Campaign ID. See page 5.
4. Answer that question in events. See page 5.
In Certain Signal
5. Add Connection. See page 6.
6. Configure a Flow. See page 8.
Setting up Tags
What Are Tags?
Tags are a way of identifying event-level data using labels set at the account level.
The guide applies tags to generic items in events. The guide especially applies tags to custom registration statuses and custom registration properties. Certain Signal uses these tagged items.
Tags support other purposes. The guide states that other purposes are not covered by the guide.
For example, events may have several custom registration statuses. These events may also have standard registration statuses. The guide says the same Tags can apply to more than one status. The guide also says each custom status can get its own Tag.
When a Flow in Certain Signal sends data to Eloqua when an attendee’s Registration Status changes, the Flow uses tags applicable to those statuses. The Flow uses tags instead of statuses themselves.
This configuration allows a Flow to apply to any event in the 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. Examples include ‘Registration Statuses’ and/or ‘Custom Registration Properties’.
4. Click Add.
5. Repeat as required for as many tags as needed.
6. Important: Add enough tags to apply to all of the following that will be used in flows. The guide references page 10.
- Registration Statuses
- Custom Registration Properties
7. Also add enough tags to apply to all of the following that will be used in filters for flows. The guide references page 10.
- Attendee Types
- Events
Applying Tags in an Account
In each event from which information will flow through Certain Signal, apply tags to relevant information. Relevant information includes Registration Statuses and Registration Custom Properties.
The guide states that tagging Attendee Types and Events is optional. This tagging supports filtering registration records. The guide references Filters on page 10.
Default Registration Statuses
Default Registration Statuses apply to all events. Default Registration Statuses require an Administrator to apply tags at the account level.
1. Go to Account Settings > Management > Registration Statuses. 2. Select one or more Tags for each status.
Important: The guide requires tagging at least the ‘New’ status. Certain uses ‘New’ behind the scenes when first processing each registration.Even if standard registration statuses are not used, the guide recommends tagging for all standard registration statuses. The guide states that tagging all standard registration statuses is best practice. The guide also states tagging at least the ‘New’ status is essential.
If standard registration statuses are used, tag them all. Tagging enables using those statuses in the Flows configured in Signal. The guide references page 8.
Applying Tags in an Event
Custom Registration Statuses
Custom Registration Statuses are relevant when any Flows configured in Signal will watch or activate for changes of Registration Status.
1. In each event, go to Plan > Event Setup > Custom Statuses. 2. Select at least one tag for each status.
Custom Registration Properties
Custom Registration Properties apply when any Flows configured in Signal 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
Standard Registration Properties have tags set up automatically. These tags have names identical to the properties themselves:
- Complete
- Badge Printed
- On To Do List
- Invoice Generated
- Test
These tags appear in Signal. Signal activates Flows for these properties the same way as it activates Flows for Custom Reg Properties.
The guide states there is nothing to edit on Certain Platform.
Attendee Types (Optional– for use with filters – see page 10.)
1. In each event, go to Plan > Event Setup > Attendee Types.
2. Select one or more Tags for each attendee type used for filtering registrations.
Events (Optional– for use with filters – see page 10.)
1. In each event, include tags in a filter. The filter example ensures only registrations for that event are passed to Eloqua.
2. Go to Plan > Event Setup > Details.
3. Select one or more Tags for the event.
Registration Questions (Optional– for use with mapping Certain fields to Eloqua fields – see page 11.)
1. In each event where registration questions capture data from attendees and the organization wants to pass those answers and/or questions to Eloqua, use Registration Questions.
2. Go to Plan > Event Setup > Questions.
3. Select just one Tag for each question. The guide states that selecting more could result in duplicate data in Eloqua.
Recording an Event’s Campaign Name
Some Flows include an action to ‘Trigger Campaign’ or ‘Create/Update Contact’. The campaign for those actions can be set per event rather than using the same campaign for all events.
This scenario requires an event question to record the Campaign Name for each event.
1. As an Administrator in Certain Platform, go to Account Settings > Management > Event Data. 2. Add an Event Question. The example event question name is ‘Eloqua Campaign Name’.
In each event: 3. As an Event Planner or Administrator in Certain Platform, go to Plan > Event Setup > Custom Event Data. 4. Enter the Eloqua Campaign Name for that event in the custom question field.
Opening Certain Signal
When Signal is activated for an account, the Account Settings > Implementation menu includes an extra option for Administrators.
- Signal Real-Time Data Integration
The guide instructs Administrators to click Signal Real-Time Data Integration. The click opens Certain Signal in a separate window. Certain Signal runs separately from Certain Platform.
The guide also includes a note. The note instructs returning from Signal to Certain Platform by clicking the return control in the interface.
Setting up a Connection
What are Connections?
A Connection in Certain Signal specifies how to connect to an instance of Eloqua. Eloqua is the Target application.
An account can have multiple connections. These connections may connect Eloqua and another application. Other target applications appear in separate guides.
Each Flow requires a Connection. Multiple flows can use the same Connection.
A connection can be set up before configuring the first Flow. The guide also states that connection setup can occur while configuring a Flow. The guide assumes setting up the Connection first.
Adding a Connection
As an Administrator, set up one or more Connections for the account. The guide says connection setup is required once. After setup, Connections can be used in Flows.
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 on the Connection List page. 5. Enter the details in the Connection Setup screen.
Connection Setup fields:
- Target: Select Eloqua as the third-party app to connect to.
- Connection Name: Enter a name of choice. The guide includes examples such as ‘Eloqua’ or ‘Eloqua Connection’.
- Service URL: Enter the beginning of the Eloqua URL to which the login redirect redirects. The guide states the value includes the part starting with “https://” and ending with “eloqua.com”. The guide includes an example: https://secure.p03.eloqua.com
- Authentication Type: Select the authentication type. The options include Basic Authentication or OAuth2.
If Authentication Type is Basic Authentication:
- User Name: Enter an Eloqua user name. The guide includes an example such as ‘MyOrganization/Integrationuser’. The guide also allows a regular user.
- Password: Enter the Eloqua password.
If Authentication Type is OAuth2:
- The guide states OAuth2 is the recommended best practice.
- Grant Type: Select Authorization Code.
- Client Id and Client Secret: Enter values unique to the OAuth2 app created by the Eloqua administrator.
- Access Token URL: Use the default value.
- Refresh Token URL: Use the default value.
- Scope: Use the default value if one exists.
- Test Connection URL: Use the default value.
- Force Update: This setting is relevant only for Add to List actions. If Force Update is selected, Eloqua updates an existing record for the Contact. Eloqua updates where Certain differs. The guide provides the example of updating phone number.
6. Click Save & Test. 7. If the test is successful, click Close. 8. If the test is not successful, check that the values in step 5 are all correct.
Setting Up Flows
What is a “Flow”?
A flow is a configuration that manages the flow of data from Certain to Eloqua.
Flows are created from the landing page in Signal. The guide references Configuring a Flow later.
An account can configure multiple flows. Multiple flows may use the same Connection.
A flow needs configuration once at the account level. When the flow completes, it starts picking up data for each event in the account within about a minute.
The guide explains the minute’s delay. Certain Signal runs independently from Certain Platform. After a Flow edit, the guide states a similar slight delay occurs. The delay occurs before changes take effect in the processing of 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.
The Flow List lists all flows. The Status column shows whether a flow is completely set up. The Active column shows whether the flow is running.
A toggle button changes a flow from Active to Inactive. The toggle also supports changing from Inactive to Active.
Configuring a Flow
Click ADD A FLOW to start setting up a new flow.
The guide lists the configuration elements:
- Name
- ‘Live’ or ‘Test’ status.
- Source: What information the Flow will look for and what the Flow will activate for in events.
- Filters: Optional filters to narrow down information.
- Destination: Where and how information enters Eloqua.
‘Live’ or ‘Test’
The Live toggle switch determines whether the Flow is Live or Test.
A Live Flow picks up live registrations in live events. A Live Flow ignores test registrations. This ignoring applies even in live events.
A Test Flow picks up test registrations. Test registrations include registrations in test events. Test registrations also include registrations marked as ‘Test’ in live events.
Best Practice: Set a new flow up as Test. Test that flow. Then set the flow to Live.Flow Data Source
Next, specify the Source of data for the flow. Filters may optionally apply.
The guide defines the Source of a Flow as what the Flow watches for in Certain. The guide also defines Source as when the Flow activates in the data. Activation occurs based on data.
For example, a flow might watch for a change to a Registration Status. The flow activates when an attendee’s status changes to a status tagged as ‘Registered’.
Available sources
The guide allows selecting one of the following sources for a flow:
- 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.
The guide includes a note about incomplete flows. You can save an incomplete Flow and complete it later. After completion, the flow starts picking up data after the usual minute’s delay.
Activate for …
Choose what the flow should activate for. Activate for requires selecting one or more tags in each appropriate object dropdown list.
As shown in the guide screenshot example, activation includes tags applied to:
- Registration Statuses
- Registration Properties
Other activation options may appear depending on what the flow watches for:
- If the flow watches for Registration Status Change, activation requires Registration Statuses.
- If the flow watches for Session Registration Status Change, activation requires Session Registration Statuses.
- If the flow watches for Event Create Update, activation requires Event Statuses.
The available tags for selection are those set up for the object. The guide references page 3.
For example, Registration Statuses tags include Registration Status tags. These tags can apply to:
- Standard registration statuses at account level. The guide references page 4.
- Custom registration statuses at event level. The guide references page 4.
Flow Filters
Flow filters narrow down which data enters a flow.
Filters apply by selecting fields in any of these three filter types:
- Event fields
- Profile fields
- Attendee Type tags
The flow includes a registration only if the registration meets the filter rule(s).
Event
Available Event fields:
- standard event fields. Example: Event Code
- custom event fields
- event tags
Profile
Available Profile fields:
- standard profile fields. Example: Position
- custom profile fields
Attendee Type Tags
Available Attendee Type Tags fields:
- tags that can be applied to Attendee Types
- Select
- Multi-select
- Checkbox
- Radio
Flow Destination
Select Eloqua from the integrations set up by Certain for the account. Eloqua may be the only integration.
Setting up a Destination
1. Give the Destination a name of your choice.
2. Select the Connection to use.
3. Select the action for this connection from listed available actions.
The guide lists available actions:
- Add to List
- Create/Update Contact
- External Activity (available only if the Flow is activated for Session Registration Statuses)
- Form Post
The guide explains how action selection affects configuration options.
If the action is External Activity, the configuration displays these two fields:
- External Asset Type
- External Activity Type
The guide states the drop-down values are automatically populated by Eloqua.
Mappings
The Available Mappings option appears for most actions.
A mapping specifies how each target field in Eloqua matches a source field in Certain.
Select a mapping from the dropdown list.
If no mappings exist or if a needed mapping does not exist, click New Mapping to add one.
New Mapping steps:
1. Give the mapping a name of choice.
- Best Practice: For multiple mappings used for different flows, the guide recommends self-explanatory names. Examples include ‘Contact Mapping’ and ‘Form Mapping’.
2. The left column lists Eloqua fields as target fields.
- Each target field shows a default source field in Certain that matches the target field.
- Example: target field ‘Company’ defaults to source field ‘Organization’.
3. Default mandatory fields include:
- First Name
- Last Name
Select the checkbox next to a target field to make it mandatory.
- If a required field is missing, a validation error occurs when the flow tries to update Eloqua.
- The guide states this validation error is not normally fixable. The guide states this validation error would not go into the Retry Queue.
4. Delete a source field by clicking the x after a source field label. Add a new source field.
Note: You can concatenate multiple source fields for the same target field. You can also type fixed text.Example: For target field ‘Title’, choose source fields ‘Position’ and ‘Organization’. Separate them by two spaces and “@”.
The guide lists the Certain fields available as source fields:
- Profile Standard Fields
- Profile Custom Fields
- Registration Standard Fields
- Registration Custom Question Tags. The guide states this includes one field for the question and one for its answer.
- The guide references page 5 about not using the same tag for more than one question.
- Registration Standard Properties
- Account Standard Fields (Account Code)
- Event Standard Fields. Example: Event Code and Event Name
- Event Custom Fields
- Flow Fields (Flow Name)
- Macros. Example: Current Date
5. In the second column, select a transformation option for each field.
- Default no selection sends the data to Eloqua unchanged.
- Transformation options:
- lower case
- Proper Case
- UPPER CASE
- Trim (This removes extra spaces.)
- The guide states multiple transformations can apply to a field. The guide also gives an example of using Proper Case and trim.
6. Add Target Fields at the end of the list. Select source fields for those target fields. Delete a field from the mapping by clicking DELETE at the end of that row.
If a mapping is selected, the guide states that two buttons become enabled:
- Edit Mapping
- Preview Mapping
A third button becomes enabled:
- Refresh Target Fields
Use Refresh Target Fields if a target field is not found in an existing mapping.
Technical note: Target fields are cached when a connection is tested. Refresh updates the cached mappings.
Campaign ID
Campaign ID is required if the flow action is ‘Trigger Campaign’ or ‘Create/Update Contact’.
Note: In Signal, ‘Campaign ID’ refers to the ‘Campaign Name’ in Eloqua.Campaign ID has two options:
- Select Campaign ID Based on Event Question
- If one unique campaign exists per event, use a custom event question to specify Campaign Name.
- The guide references page 5 for the event question.
- Select that question in this section.
- Campaign ID
- To move all attendees to a single campaign regardless of event, enter the campaign name.
Form
If the selected action is Form Post, then complete the following:
- Select A Form: Select the Eloqua form to which data will be sent.
- Form URL: This field populates automatically based on the form selected.
- Mapping: Target fields pre-populate based on the form selected.
Select target fields and map them to source (Certain) fields. This mapping follows the mapping configuration described in Mappings.
Metrics Dashboard
To see statistics in Signal, click Metrics in the left navigation panel when looking at flows.
Navigation panel metrics choices depend on flows and their targets. The first option is Insights.
Other links can include Leads Created and Form Posts. The guide states these work the same way as Account Insights.
Account Insights
Select whether to view Live Flows or Test Flows.
Select the period for which to see data. Examples include:
- last 15 minutes
- 1 hour
- 4 hours
- a number of days
The guide lists three tabs:
- Summary
- Troubleshooting
- Activity Feed
Summary tab
The Summary tab is the default tab on the Insights page.
Figures shown depend on flows and actions. Some figures can drill down further. For example, click Unique Registrations to see registrations processed by flows in the selected time frame.
The guide states drilling down allows filtering and search for records. For example, filter on an Event Code to see only registrations in that event.
The figures listed below apply to the whole account. Whole account includes all events and registrations.
For each figure, clicking the number drills down to details.
The guide lists figures:
- Changes Processed: The number of registrations processed.
- This value increments each time a registration is created or updated in Certain and then processed by a flow in Signal.
- This value may include the same registration more than once.
- Example: creating a registration and then updating it twice totals three “changes”.
- Unique Registrations: The number of registrations processed.
- Unique Registrations counts each registration only once.
- The guide states this figure is likely the most relevant figure on the page.
- The guide states this figure is likely lower than Changes Processed.
- Example: if Joe Citizen’s registration was processed three times, Changes Processed increases by 3. Unique Registrations increases by 1.
- Actions Triggered: The number of actions triggered by flows.
- Example: if one flow exists with one action, Actions Triggered could match Changes Processed.
- Additional flows and additional actions increase the number of actions triggered.
- Actions Not Triggered: This appears only if registrations were processed by flows without actions being triggered.
- The guide gives an example cause: a registration having an untagged status.
- Active Flows: The number of flows actively processing registrations during the selected period.
- The guide states this value is not related to whether the flow appears as “Active” or “Inactive” on the Flow List.
- External Activities: The number of External Activities created in Eloqua by flows.
- Form Posts: Relevant for Form Post actions.
- This value is the number of form posts.
- Leads Created: The number of leads created in Eloqua by flows.
- Leads Updated: The number of leads updated in Eloqua by flows.
- Registration Activity in Certain: Overview information.
- Processing Status: A pie chart comparing failure and success numbers.
- Drilling down into failures provides a troubleshooting view.
- The guide states the troubleshooting view can show why an action failed.
- The guide states that after addressing the failure reason, expediting the fix in Signal requires returning to Flows and clicking Retry in the left navigation panel. The guide references Retry Queue on page 16.
Troubleshooting tab
The Troubleshooting tab is the second tab on the Insights page.
The guide describes the Troubleshooting tab as useful for troubleshooting.
Example: registrations are not processed because a Registration Status isn’t tagged. This scenario provides a chance to rectify tagging so registrations can be processed on the next retry.
The guide states numbers shown are:
- In Retry Queue:
- If an action fails, it joins the Retry Queue.
- The guide references page 16.
- The guide states actions will be tried again.
- The guide states the maximum automatic retries per action equals 3.
- Total Retried: The number of retries.
- Example: if an action is retried twice, add 2 to Total Retried.
- Retried Abandoned: The actions that failed three retries.
- Validation Errors: No retries possible because failed validation.
- Example: a contact cannot be created because a mandatory target field has no value in the source field.
- The guide references ‘Mappings’ on page 11.
- Retry Activity: A chart showing retries by time.
- Retry Processing Category: A chart showing retries by category.
- The guide gives examples: “General”, “System”, “Config”, “Connection”, etc.
- Connection Activity: A chart showing activity per connection over time.
Activity Feed tab
The Activity Feed tab is the third tab on the Insights page.
The guide states Activity Feed lists registrations processed, including success or failure, Registration Code, Event, Flow, and other fields.
The Activity Feed is a rolling history by date.
The guide instructs readers to treat Activity Feed as another way to access lower-level data. The lower-level data can also be accessed by drilling down into the Summary or Troubleshooting tabs.
The Retry Queue
When an action fails, the action usually joins the “Retry Queue”. The action takes its turn to run again.
The guide describes exceptions. Failures that cannot be resolved such as missing mandatory fields do not join the queue.
The guide states an action can be retried up to three times. After three attempts, the action does not rejoin the queue.
To view the Retry Queue, click Retry in the left navigation panel on the Flows page.
The guide lists causes of failure:
- Planner-controlled causes:
- A registration with a status that hasn’t been tagged.
- Technical causes:
- A connection being down.
Where a planner can resolve failure causes, the guide states that resolving the cause is all that is needed. The guide gives examples such as tagging a registration or setting a flow back to being active.
The guide states the action should succeed when retried.
For failures that do not resolve themselves, the guide instructs contacting an administrator or asking Certain for help.
The guide states the interval between retries depends on severity. The guide states more serious reasons retry sooner.
Filtering the Queue
The guide says three filters exist for the Retry Queue:
- Integration: Probably only one option, ‘Eloqua’, unless multiple integrations exist.
- Status: ‘All Statuses’, ‘Retry’, ‘Error’, ‘Failed’, or ‘Done’.
- Category: ‘All Categories’, ‘General’, ‘System’, ‘Config’, ‘Certain API’, ‘Connection’, etc.
Submitting to the Queue
When clicking an item in the Retry Queue, the interface shows full details.
If knowledge is enough to solve the problem, the guide instructs clicking Submit to Retry Queue. This action adds the item straight to the front of the queue.
Replaying a Flow
If a user changes an aspect of a flow while the flow runs for some time, the guide says replaying may be necessary.
The guide provides examples of flow changes:
- changing filters.
Replaying a flow repeats processing for the same registrations as before. The replay acts as if changes had been made earlier.
The guide states this replay cannot be done directly.
The guide says Certain must arrange replay. The guide states the user may specify a date range or even an event.