Part 1: Set up the connection
1. Navigate to Gainsight > Integrations > Connectors
2. Add https://api.joinzealot.com/embed/overview as an API Connection
3. Go to the Advocacy Admin Panel > Integrations
4. Click Learn More
5. Copy your Brand ID
Part 2: Add the query parameters
Query parameters tell the embed who the advocate is, which brand to load, and which components to display.
6. Add the following query parameters to your connection:
Parameter | Value | Required? |
|
| ✅ Yes |
| Paste the Brand ID you copied | ✅ Yes |
|
| Optional |
|
| Optional |
|
| Optional |
|
| Optional |
Which components show by default?
If you don't pass the component parameters, your embed shows Missions and Rewards. Leaderboard and Levels are off by default.
Component | What it shows | On by default? |
Missions | Tasks for advocates (leave a review, join a reference call, etc.) | ✅ Yes |
Rewards | Rewards advocates can earn with points | ✅ Yes |
Leaderboard | Top advocates, ranked | ❌ No |
Levels | Advocate tiers (Bronze, Silver, Gold, etc.) | ❌ No |
Copy-paste recipes
Show everything
?email={{ user.email }}&brandID=YOUR_BRAND_ID&leaderboard=true&levels=trueMissions only — great for focused landing pages
?email={{ user.email }}&brandID=YOUR_BRAND_ID&rewards=falseHide Rewards, show Leaderboard — great for public-facing pages
?email={{ user.email }}&brandID=YOUR_BRAND_ID&rewards=false&leaderboard=trueGamification showcase — Leaderboard + Levels only
?email={{ user.email }}&brandID=YOUR_BRAND_ID&missions=false&rewards=false&leaderboard=true&levels=truePart 3: Add the iFrame
7. Edit any page or add a new tab
8. Click Other
9. Click HTML widget
10. Paste the HTML script below:
<div id="widget-container"></div> <script src="https://static.customer-hub.northpass.com/widget-sdk/latest/index.umd.js"></script> <script> (async () => { const sdk = new window.WidgetServiceSDK(); const result = await sdk.connectors.execute({ permalink: "zealot", method: "GET" }); const container = document.getElementById('widget-container'); if (result?.iframe && typeof result.iframe === 'string') { container.innerHTML = result.iframe; } else { console.warn('Unexpected result format:', result); container.textContent = 'Unable to display widget.'; } })(); </script>
11. Click Done
12. Click Publish
Quick tips
Components you don't mention stay at their default. Missions and Rewards stay on, Leaderboard and Levels stay off.
To show Leaderboard or Levels, you have to turn them on explicitly.
Spelling matters — use
missions,rewards,leaderboard,levels.Capitalization doesn't matter.
Missionsandmissionswork the same.
Troubleshooting
My Leaderboard isn't showing. It's off by default. Add
&leaderboard=trueto your query parameters.I hid Missions but they're still there. Check your spelling —
mission=false(missing the "s") won't work.My embed shows the defaults even though I added parameters. Make sure the parameters are on the connection URL, not the page URL.
Need a hand?
Reach out to your UserEvidence CSM and we'll help you pick the right setup for your community.