Salesforce
Connect Instruqt with Salesforce to create hands-on lab invites directly from Opportunities and track prospect engagement in real-time.
Important: The Salesforce integration is currently available by request. Contact our Customer success team to enable this feature for your organization.
Overview
The Instruqt Salesforce integration enables your sales team to:
Create personalized invites directly from Opportunity records
Track prospect engagement including time spent, progress, and completion
View session feedback and ratings within Salesforce
Match activity to Contacts automatically by email address
How It Works
When a user creates an invite from an Opportunity in SalesForce, Instruqt generates a shareable link. When prospects claim the invite and complete tracks, their activity syncs back to Salesforce as Session records - giving your team visibility into engagement without leaving the CRM.
Prerequisites
Before enabling the integration, ensure you have:
Role
Team Owner or Team Admin
System Administrator
Edition
Any paid plan
Professional, Enterprise, or Unlimited
Lightning Experience Required: This integration uses Lightning Web Components and is not compatible with Salesforce Classic.
Enable the Integration
The setup requires configuration in both Instruqt and Salesforce. Follow these 4 steps in order.
Step 1: Get the Installation Link from Instruqt
Log in to play.instruqt.com as a Team Owner or Admin
Navigate to Team Settings > Integrations
Find the Salesforce card and click Connect
You'll receive a package installation link
Click the link to proceed, or copy it to share with your Salesforce admin
The link takes you to Salesforce to install the managed package.
Step 2: Install and Configure in Salesforce
2a. Install the Managed Package
Click the installation link from Instruqt (or paste it into your browser)
Log in to Salesforce as a System Administrator
Choose Install for All Users (recommended)
Click Install (installation can take a a few minutes, you will recieve an email when complete)
Wait for the installation confirmation email
Verify: Go to Setup > Installed Packages and confirm "Instruqt for Salesforce" appears.
2b. Assign the Integration Permission Set
Complete this step BEFORE returning to Instruqt. Without this permission set, data sync will fail.
Go to Setup > Users > Permission Sets
Click instruqtapp__Integration_Access
Click Manage Assignments > Add Assignment
Select the user who will complete the OAuth connection. That user will finish the integration process from Instruqt in Step 3. (see tip below)
Click Assign
Recommended: Create a dedicated integration user (e.g., `[email protected]`) for the OAuth connection. This ensures the integration stays connected even if individual users leave your organization.
2c. Activate Remote Site Setting
Critical: Salesforce installs Remote Site Settings as inactive by default. You must manually activate this setting or API calls will fail.
Go to Setup > Security > Remote Site Settings
Find Instruqt_API (or
instruqtapp__Instruqt_API)Click Edit
Check the Active checkbox
Click Save
Step 3: Complete the Connection in Instruqt
Log in as the correct user. During the OAuth flow, you must authenticate as the Salesforce user who has the `instruqtapp__Integration_Access` permission set assigned.
Return to Instruqt and click Continue
You'll be redirected to Salesforce for OAuth authorization
Log in using the Integration User credentials (the user with
instruqtapp__Integration_Access)Review the requested permissions and click Allow
Verify: The integration card in Instruqt shows "Connected" status.
Data Processing: Instruqt uses Paragon as a subprocessor to handle Salesforce data synchronization. See our [subprocessor list](https://instruqt.com/legal/subprocessors) for details.
Step 4: Assign User Permission Sets in SalesForce
Grant access to your sales team based on their role:
Sales Representatives
instruqtapp__Editor
Create invites, view sessions
Sales Managers
instruqtapp__Viewer
Read-only access to all data
Salesforce Admins
instruqtapp__Admin
Full access including configuration
To assign a permission set:
Go to Setup > Users > Permission Sets
Click the appropriate permission set
Click Manage Assignments > Add Assignment
Select users and click Assign
That's it! The integration is now active. Instruqt data will sync to Salesforce automatically.
Recommended Configuration
The following configurations are optional but recommended for the best experience.
Add the Quick Action to Opportunities
Enable the "Create Instruqt Invite" button on Opportunity records:
Go to Setup > Object Manager > Opportunity > Page Layouts
Edit your active Opportunity layout
In the palette, find Mobile & Lightning Actions
Drag Create Instruqt Invite to the "Salesforce Mobile and Lightning Experience Actions" section
Click Save
Verify: Open any Opportunity and confirm the action appears in the highlights panel.
Add Related Lists (Recommended)
Display Instruqt data directly on Opportunity records:
Edit your Opportunity page layout
Scroll to the Related Lists section
Add these related lists:
Instruqt Invites β Invites created for this Opportunity
Instruqt Sessions β Prospect activity and progress
Click Save
Recommended columns for Instruqt Invites:
Title, Status, Invite URL, Claim Count, Expires At
Recommended columns for Instruqt Sessions:
Contact, Content Title, Status, Progress, Completed At, Rating
Share Reports with Your Team
The package includes 5 pre-built reports in the Instruqt_Reports folder:
Engagement by Opportunity
Which prospects engaged with hands-on content
Pipeline by Stage
Pipeline view with engagement per stage
Completion Analysis
Completion rates across all invites
Content Engagement Summary
Which content drives the most engagement
All Opportunities Pipeline
Pipeline overview with Instruqt activity
To share reports:
Go to Reports > All Folders > Instruqt_Reports
Click the folder dropdown > Share
Add appropriate users, roles, or public groups
Set access level (View or Edit)
Using the Integration
Create an Invite from an Opportunity
Open an Opportunity record in Salesforce
Click Create Instruqt Invite in the highlights panel (or from the actions dropdown)
Step 1 - Initial configuration of the Invite:
Details: Public Title (required), Public Description, Internal Title
Sharing: Sharing Method (Shareable Link or Embed), Invite Type (Self-Paced or Live Event)
Step 2 - Select Content:
Browse or search available tracks and labs
Click Add to select content for the invite
Use Refresh to sync the latest content from Instruqt
Click Next when done
Step 3 - Configure limits of the invite:
Access Mode: Anyone with the link, Anyone leaving the details, (recommended) Only specific people
Limits: Invite Limit, Expiration, Play Limit, Play Time Limit
Settings: Learner Sharing, Instructor Tools, Screen Sharing
Step 4 - Select Contacts (will be skipped if you selected Anonymous is Step 3):
Select contacts from the Opportunity to receive the invite
Leave all unchecked for an anonymous invite link
Click Next to continue
Click Create Invite
The invite URL appears on the Instruqt Invite record. Share this link with your prospects.
Track Prospect Engagement
When prospects claim an invite and start a track:
An Instruqt Session record is created in Salesforce
The session automatically links to:
The Contact (matched by email)
The Opportunity (from the invite)
The Invite used to access the content
Progress updates sync as the prospect completes challenges
Session fields include:
Status: Not started, In progress, Completed
Progress: Visual summary of challenge completion (e.g., β β β β)
Duration: Time spent in the track
Rating: Prospect's rating (1-5 stars)
Feedback: Written comments from the prospect
Sync Timing: Session data typically syncs within 2-30 seconds of activity in Instruqt.
How to Use Instruqt's Reports in Salesforce
The Instruqt for Salesforce package includes 5 pre-built reports to help you measure the impact of hands-on experiences on your sales pipeline.
Available Reports
Engagement by Opportunity
Identifies which prospects have actively engaged with your hands-on content.
Use this report to:
See which contacts on a deal have completed labs or demos
Prioritize follow-ups with engaged buyers
Identify opportunities where prospects haven't engaged yet
Pipeline by Stage
Shows your sales pipeline with Instruqt engagement metrics broken down by deal stage.
Use this report to:
Understand how engagement correlates with deal progression
Identify stalled deals lacking hands-on engagement
Track engagement trends across your pipeline stages
Completion Analysis
Measures completion rates across all invites you've sent.
Use this report to:
Identify content that prospects finish vs. abandon
Spot content that may be too long or complex
Optimize your hands-on experiences based on completion data
Content Engagement Summary
Reveals which specific tracks, labs, and sandboxes drive the most engagement.
Use this report to:
Double down on high-performing content
Identify underperforming assets that need improvement
Align sales and marketing on which content resonates
All Opportunities Pipeline
Provides a holistic pipeline view combining deal data with Instruqt activity.
Use this report to:
Get a single view of deal health and prospect engagement
Support pipeline reviews and forecasting
Identify opportunities that could benefit from hands-on content
Accessing Reports
All reports are located in the Instruqt_Reports folder:
Go to Reports in Salesforce
Navigate to All Folders > Instruqt_Reports
Click any report to view it
Sharing Reports with Your Team
To give your sales team access to these reports:
Go to Reports > All Folders > Instruqt_Reports
Click the folder dropdown and select Share
Add appropriate users, roles, or public groups
Set access level:
View β Users can run reports but not modify them
Edit β Users can customize and save report changes
Click Save
Tip: Share with a public group like "Sales Team" rather than individual users for easier maintenance.
Customizing Reports
You can modify any pre-built report to fit your needs:
Open the report you want to customize
Click Edit
Add or remove fields, filters, and groupings
Click Save As to create your own version
Note: Save customizations as a new report to preserve the original pre-built version.
Building Custom Reports
To create your own Instruqt reports:
Go to Reports > New Report
Select a report type:
Instruqt Invites β Report on invite creation and usage
Instruqt Sessions β Report on prospect engagement and progress
Instruqt Invites with Sessions β Combined view of invites and resulting activity
Add fields, filters, and groupings as needed
Save to the Instruqt_Reports folder or your own folder
Useful fields for custom reports:
Instruqt Invite
Title, Status, Claim Count, Expires At, Opportunity
Instruqt Session
Contact, Content Title, Status, Progress, Duration, Rating, Completed At
Architecture
Data Model
The integration creates custom objects in Salesforce to store Instruqt data. All objects use the instruqtapp__ namespace prefix:
instruqtapp__Config__c
Stores API credentials and sync state
1 per org
instruqtapp__Content__c
Caches track/lab metadata
β
instruqtapp__Invite__c
Invite records
Lookup to Opportunity
instruqtapp__Invite_Claim__c
Records when invites are claimed
Master-Detail to Invite
instruqtapp__Session__c
User progress and engagement
Lookups to Contact, Opportunity, Invite
Authentication
Salesforce β Instruqt
KMS-signed JWT (API Key stored in instruqtapp__Config__c)
Instruqt β Salesforce
OAuth 2.0 (managed by Paragon)
Troubleshooting
OAuth connection fails
Symptoms: Error during Salesforce login or redirect fails
Solutions:
Clear browser cache and cookies
Use an incognito/private browser window
Ensure you're logging in with the user who has
instruqtapp__Integration_AccessVerify the Remote Site Setting is active
Integration shows "Disconnected"
Symptoms: Previously working integration stops syncing
Solutions:
The Integration User may have been deactivatedβverify user is active
OAuth token may have expiredβreconnect the integration from Instruqt
Check Remote Site Setting is still active in Salesforce Setup
"Unauthorized endpoint" error
Symptoms: Invite creation fails, tracks don't load, or sync fails
Solutions:
Go to Setup > Security > Remote Site Settings
Find the Instruqt_API entry
Click Edit and ensure Active is checked
Save and retry
This is the most common issue. Salesforce installs Remote Site Settings as inactive by default.
"Unable to fetch tracks" error
Symptoms: Invite wizard shows error when loading content
Solutions:
Verify integration shows "Connected" in Instruqt
Check Remote Site Setting is active for
api.instruqt.comVerify
instruqtapp__Config__crecord has valid Team ID and API Key
Sessions not appearing
Symptoms: Prospects complete tracks but no Session records appear
Solutions:
Wait up to 5 minutes for real-time sync to complete
Verify the prospect used the correct invite link
Check the Integration User has
instruqtapp__Integration_AccessRun a retroactive sync to backfill missing data
"Create Instruqt Invite" button not visible
Symptoms: Users don't see the button on Opportunities
Solutions:
Verify Quick Action is on the Opportunity page layout
Confirm user has
instruqtapp__Editororinstruqtapp__Adminpermission set
Users can't see Instruqt objects
Symptoms: Tabs or related lists don't appear
Solutions:
Verify user is assigned an Instruqt permission set (Viewer, Editor, or Admin)
User may need to log out and back in after assignment
Check profile-level object permissions if using custom profiles
Verification Checklist
After setup, verify the integration is working:
Connection:
Functionality:
Last updated
Was this helpful?