Salesforce (Beta)
Integrate Instruqt with Salesforce and choose among options to create new leads as well as enrich existent leads and contacts with track play information.
Last updated
Was this helpful?
Integrate Instruqt with Salesforce and choose among options to create new leads as well as enrich existent leads and contacts with track play information.
Last updated
Was this helpful?
Note: This feature is currently in beta and may not be available to all customers. Please contact Instruqt support to enable it for your organization.
Learn how to easily connect Instruqt to Salesforce and configure options to enrich leads and contacts with play data such as:
Which tracks the user has played
Time spent in each completed play
Feedback provided (including comments).
Any interactions of the integration will be performed using an access grant (and limited) by the integration user account.
Instruqt integrates with salesforce using a connected app. It's important to properly configure a Salesforce Integration User specifically for Instruqt and follow security best practices with the minimum access required to install and use the integration effectively.
Learn more about how the integration works and which custom objects are created in the Architecture section.
Navigate to Setup → Users → New User
Fill in the following details:
Name: Instruqt Integration
User License: Salesforce Integration
Profile: Minimum Access - API Only Integrations
Under Permission Set License Assignments, add:
Salesforce API Integration
Navigate to Setup → Permission Sets → New
Fill in the following details:
Label: Instruqt Integration
API Name: Instruqt_Integration
License: None
Configure Object Permissions:
Object Settings
Contacts
Object Permissions
✅ Read ✅ View All Records
Field Permissions:
Email:
✅ Read access
Phone:
✅ Read access
Title:
✅ Read access
Leads
Object Permissions:
✅ Read ✅ Create ✅ Edit ✅ View All Records
Field Permissions:
Email:
✅ Read & Edit access
Phone:
✅ Read & Edit access
Title:
✅ Read & Edit access
System Permissions
✅ Customize Application
✅ Modify Metadata Through Metadata API Functions
✅ View All Data
Manage Assignments
Assign the Instruqt Integration User to the permission set just created.
Enabling the connection between Instruqt and Salesforce is easy and requires only a few steps:
Go to play.instruqt.com and navigate to the menu Settings > Integrations. ↳ The integrations page is displayed with the platforms enabled to your account.
Inside the Salesforce section click on Connect. ↳ The integration configuration modal is displayed.
Click again on Connect and select the desired account type (Production or Sandbox). ↳ A salesforce authorization pop-up or tab is opened. You might be required to log-in. The list of permissions required by the integrations is displayed. Learn more about the Required OAuth Scopes.
You need now to allow access to Instruqt via our subprocessor Paragon (check our subprocessor list for more information). Review the data displayed and click on Allow. ↳ The configuration modal on the Integrations page now displays the configuration of the workflows.
Enable the first workflow Create Lead on Form Submission and select the New Lead Status according to your preferences. Enabling this workflow is mandatory, but it won't duplicate entries in case there is already a Lead or Contact with the same email address, first name and last name. ↳ The configuration is saved automatically.
Review all other workflows to match your preferences. ↳ The configuration is saved automatically.
All set! You can now close the modal. It might take a few minutes before the integration is live.
Once the installation is complete, privileges must be granted to the newly created custom objects. To enhance security, it’s also recommended to limit the integration user’s access by following the principle of least privilege.
Make sure the custom objects (Instruqt Play and Instruqt Track) have been fully created before adjusting the permissions. You can verify it by accessing the Salesforce object manager. The object creation might take a few minutes.
Instruqt Plays
Object Permissions:
✅ Read
✅ Create
✅ Edit
✅ Delete
✅ View All Records
✅ Modify All Records
✅ View All Fields
Field Permissions:
✅ Read access to all fields
✅ Edit access to all fields
Instruqt Tracks
Object Permissions:
✅ Read
✅ Create
✅ Edit
✅ Delete
✅ View All Records
✅ Modify All Records
✅ View All Fields
Field Permissions:
✅ Read access to all fields
✅ Edit access to all fields
❌ Remove: View All Data
❌ You may also remove the following unnecessary global permissions required by View All Data
:
View Login Forensics Events
View Reports in Public Folders
View Event Log Files
View Dashboards in Public Folders
View Real-Time Event Monitoring Data
Out of the box the integration will send updates to the chatter section of both Leads and Contacts, including:
Track started by the lead / contact
Track completed by the lead / contact, including time spent until completion
Track score feedback, if provided
Track written feedback, if provided
Depending on your salesforce setup, this tab might also be called "Activity".
Besides the chatter it's also possible to visualize the data with the custom object Instruqt_Play
in various ways.
One of the options is to displayed as dynamic related list, as described below.
In Salesforce go to the settings from top right corner.
Go to Object Manager from left panel.
Find the Instruqt Play object and click on it.
Then click on the Fields & Relatioinship from left panel.
Click on the Lead property.
Click on the Set Field-Level Security and enable Visible to the profiles you want to be able to visualise Instruqt Plays (for instance: "Standard User" and "System Adminstrator") and click on Save.
Repeat the step above for every field you want to make visible for each profile. We advice to enable at least Lead, Contact, Instruqt Track, Feedback, Invitation link, Score and Time Spent.
Now that the field-level security visibility is correctly set we can add the Instruqt plays to the Lead and Contact pages layout.
Click on "Edit Page". In case you don't see that option you might need to contact you salesforce administrator.
On the left toolbar, under components, click on "Dynamic Related List" and drag it to the desired place in the layout.
Now configure your Dynamic Related List on the right, by changing the "Related List" field to "Instruqt Plays".
Scroll down "Related List Fields" section and click on the button "Add field".
Click now on "Save" and followed by "Activate". Assign as Org or App default and choose between Desktop, Mobile or both as preferred. ↳ Done! You now have Instruqt data in your Leads. In case you are not able to visualize the dynamic related list after saving it, make sure you have set the Field-Level Security visibility properly to all fields you are using.
Repeat the process on a "Contact" page to add the Instruqt Plays as well.
You have now configured your salesforce to display Instruqt plays on both Leads and Contacts!
To test the integration, open an incognito browser tab and access an Instruqt invite with the “Anyone leaving their details” setting enabled. Fill out the invite form with test user data and submit it.
If the integration is working correctly, a new Lead will be created in Salesforce, or an existing Lead or Contact will be updated. The matched record should be enriched with Instruqt data in Chatter and the “Instruqt Play” object, depending on your setup.
Create a dedicated Salesforce Integration User with minimum API-only access.
Create a Permission Set with temporary broader permissions to allow installation.
Connect the integration in the Instruqt platform and authorize with the correct OAuth scopes.
Reduce permissions post-installation to restrict access while ensuring functionality.
Configure Instruqt data visualization in Salesforce (e.g. Dynamic Related Lists).
This setup ensures security best practices, data protection, and smooth integration functionality for Instruqt in Salesforce.
Paragon serves as a middleman that connects Instruqt's events and activities to a CRM system like Salesforce.
For each of the designated events enabled on our customers' Salesforce connection page, Instruqt prepares the necessary data and sends it to the Paragon APIs. Within Paragon, our defined workflows activate and transform the provided data into the appropriate format for Salesforce. Finally, these workflows call Salesforce's internal APIs to complete the integration.
API access is obtained using a connected app configured with OAuth authentication.
When authorizing the Salesforce connection, ensure the following OAuth Scopes are selected:
id
, profile
, email
, address
, phone
→ Access the identity URL service
openid
→ Access unique user identifiers
lightning
→ Access Lightning applications
chatter_api
→ Access Connect REST API resources
api
→ Manage user data via APIs (Required for creating and updating records)
refresh_token
→ Perform requests at any time without requiring re-authentication
Why These OAuth Scopes?
id
, profile
, email
, address
, phone
: Required to identify the user and retrieve basic profile details.
openid
: Ensures unique user identifiers are available for authentication.
lightning
: Allows access to Lightning applications within Salesforce.
chatter_api
: Grants access to Connect REST API resources for collaboration features.
api
: Needed to interact with records (e.g., Leads, Contacts, and custom objects).
refresh_token
: Ensures that the integration doesn’t require users to re-authenticate frequently.
The Instruqt app creates two new objects: Instruqt_Play and Instruqt_Track.
The Instruqt_Play object has Lookup Fields that connects to both native Lead
and Contact objects.
No data is written onto fields in the Lead or Contact object record.
Below are described the details of the Instruqt custom objects.
Instruqt_Track
Created By
CreatedById
Lookup(User)
False
Last Modified By
LastModifiedById
Lookup(User)
False
Owner
OwnerId
Lookup(User,Group)
True
Title
Name
Text(80)
True
Track Slug
Track_Slug__c
Text(255)
Instruqt_Play
Contact
Contact__c
Lookup(Contact)
True
Created By
CreatedById
Lookup(User)
False
Description
Name
Text(80)
True
Feedback
Feedback__c
Text Area(255)
False
Instruqt Track
Instruqt_Track__c
Lookup(Instruqt_Track)
True
Invitation Link
Invitation_Link__c
URL(255)
False
Last Modified By
LastModifiedById
Lookup(User)
False
Lead
Lead__c
Lookup(Lead)
True
Owner
OwnerId
Lookup(User,Group)
True
Participant ID
Participant_ID__c
Text(15)
False
Score
Score__c
Number(1, 0)
False
Time Spent
Time_Spent__c
Text(15)
False
Time Spent Seconds
Time_Spent_Seconds__c
Number(10, 0)
False
Go to the leads page in Salesforce and open any lead. Click again on settings from top right corner.
Add any fields relevant to you. Here is as an example: Selected fields: Description, Created Date, Time Spent, Feedback.