This article outlines linking user participation and survey data from the EventHub platform to Salesforce. Establish the connection once, and continue using Salesforce to generate the information you need about your event participants for dashboards, sales leads, marketing data, etc.
1. Install the EventHub App in Salesforce
<tips>Please contact your customer success manager to obtain an install URL and installation key.</tips>
Access the install URL and enter your installation key. Select [Install for All Users], check the acknowledgment box, and click [Install].
<tips>You can adjust the installation according to the needs of users accessing the system.</tips>
Enable access to third-party websites.
Wait until the installation is complete, which may take up to 30 minutes.
2. Connect Salesforce and EventHub
① Click the gear icon and click [Setup]. Search for "app manager" or select it from the sidebar menu.
② Click [New Connected App].
③ Fill in the following fields, enabling the OAuth settings.
Connected App Name | Name identifying the application as EventHub |
API Name | Name indicating EventHub's API |
Contact Email | Email address of the setup contact |
Enable OAuth Settings | Check the box to enable |
Callback URL | Enter a valid URL |
④ From the [Available OAuth Scopes] list, add [Manage user data via APIs (api)] to your [Selected OAuth Scopes]. Set the following check-box options as indicated:
Require Secret for Web Server Flow | - |
Require Secret for Refresh Token Flow | - |
Enable Client Credentials Flow | ✔ |
Enable Authorization Code and Credentials Flow | - |
⑤ Click [Save], [Continue], then click [Manage].
⑥ Navigate to [Profiles]>[Manage Profiles] to add the necessary administrator permissions. Click [Save] when finished.
<tips>Your profile must have permission to edit and view EventHubQuestionnaireAnswers and EventHubAttendance. </tips>
⑦ Click [Edit Policies].
⑧ Set the following fields according to the table below and click [Save].
Permitted Users | [Admin approved users are pre-authorized] |
IP Relaxation | [Relax IP restrictions] |
Refresh Token Policy | Immediately expire refresh token |
Client Credentials Flow | Select a user with administrator rights. *The API integration may fail if the selected user's account is removed. Select an account for long-term usage. |
⑨ From the Salesforce [App Manager], click [View] from the app dropdown.
⑩ Click [Manage Consumer Details].
⑪ Copy the [Consumer Key] and [Consumer Secret] to enter into EventHub in the following section.
⑫ Return to the previous setup window and search for "my domain" in the search bar. Copy the information for [My Domain Name] to enter into EventHub in the following section.
3. Enter the Salesforce Integration Information into EventHub
Navigate to the EventHub admin page's [Settings]>[External integrations]>[Salesforce] tab. Enter the [Consumer Key], [Consumer Secret], and [Salesforce My Domain] information obtained during steps ⑪ and ⑫ of the Salesforce connection in the previous section.
Click [Save] when finished to complete the setup.
4. Salesforce Object Management
With the Salesforce-EventHub setup complete, prepare the objects in Salesforce that store the EventHub data.
API Name | Description |
EventHub__EventHubAttendance__c | Event participation information |
EventHub__EventHubQuestionnaireAnswers__c | Event survey response information |
EventHubAttendance
The following table outlines the default fields for the EventHub__EventHubAttendance__c object.
Field Name | Data Type | Description |
Affiliation__c | Text(255) | The participant's company or affiliation |
Attended__c | Checkbox | A checkbox indicating whether a participant attended the event A checked box stores the data as "True" |
Campaign__c | Lookup(Campaign) | The campaign ID for the associated eventKey (only if a campaign object has been set up) |
Contact__c | Lookup(Contact) | The contact ID for the associated participant email address |
Email__c | Text(255) | The participant's email address |
EventKey__c | Text(255) | The eventKey for the linked event |
Lead__c | Lookup(Lead) | The lead ID for the associated participant email address |
Name__c | Text(255) | The participant's name |
EventHubQuestionnaireAnswers
The following table outlines the default fields for the EventHub__EventHubQuestionnaireAnswers__c object.
Field Name | Data Type | Description |
Affiliation__c | Text(255) | The participant's company or affiliation |
AnswerXXX__c | Long Text Area(5000) | The participant's survey response to a given question The "XXX" is a number ranging from 001 to 020. Any survey responses for questions beyond 20 cannot be exported to Salesforce. |
Campaign__c | Lookup(Campaign) | The campaign ID for the associated eventKey (only if a campaign object has been set up) |
Contact__c | Lookup(Contact) | The contact ID for the associated participant email address |
Email__c | Text(255) | The participant's email address |
EventKey__c | Text(255) | The eventKey for the linked event |
Lead__c | Lookup(Lead) | The lead ID for the associated participant email address |
Name__c | Text(255) | The participant's name |
QuestionXXX__c | Long Text Area(5000) | The survey question The "XXX" is a number ranging from 001 to 020. Any questions beyond 20 cannot be exported to Salesforce. |
QuestionnaireId__c | Text(255) | The survey ID |
<tips>Use an eventKey generated in EventHub to link user participation and survey data to campaigns in the Salesforce Object Manager.</tips>
5. Linked Data
Salesforce links data by matching existing email addresses to those registered in EventHub. Data will not be linked for duplicate email addresses or if a matching address cannot be found in Salesforce. Only new data after integration will be linked; past data will not.
Where there is a match between email addresses in Salesforce and EventHub, user participation and survey response data are synced every 15 minutes.
Participation Data (EventHubAttendance__c) |
Participation is counted when a user accesses the event page at any time between the event start and end dates set via [Basic settings]>[Event information]. |
Survey Response Data (EventHubQuestionnaireAnswers__c) |
Responses are collected for the first 20 questions of a survey. Any questions beyond 20 cannot be exported to Salesforce. |
<tips>When errors occur in the integration process, reference our API Document or contact customer support. Please be prepared to share the circumstances of the error and applicable user email addresses so we can best assist you.</tips>
6. Generating Reports in Salesforce
The following lists two ways to generate reports in Salesforce for the linked participation and survey response data.
Via Leads/Contacts
Select a report type that includes leads/contacts. Add the eventKey for the event you want to filter by as a search condition. Create a report based on users by adding columns for participation and survey response data fields.
Via Campaign Members
Create custom fields to store user participation and survey response data, then create a flow to overwrite the data for campaign members and create reports based on campaigns.
Contact your Salesforce Admin regarding questions about creating a flow.
7. Salesforce Support
As Salesforce data management may vary by company, we cannot guarantee that the information provided will be applicable to all situations. If you have questions about implementation, we recommend contacting your Salesforce Admin or Salesforce customer support.
8. Additional Notes
If your Salesforce API usage reaches 100%, you may be unable to use the API to link with other systems. To help prevent this, the EventHub platform may restrict some system syncing if your Salesforce API usage exceeds a certain percentage. See this Salesforce help article for additional reference.