Create and connect to Leaderboard
Leaderboards enable you to create more engaging and interactive content with little to zero maintenance.
Example use cases include:
- Creating & running a weekly quiz with a leaderboard
- Creating & running a Predictor for every match of your sports team
You can work with leaderboards in two ways:
- Create a leaderboard: You can create a leaderboard and connect it to any Quizzes and Predictors right away.
- Connect to an existing leaderboard: You can connect any Riddle to an existing leaderboard. This is useful if you want to run multiple Riddles with the same leaderboard, e.g. a seasonal leaderboard.
Create leaderboard
Properties
| Property | Required | Type | Description |
|---|---|---|---|
title | ✓ | string | The title of the leaderboard |
riddleConnections | string | An array of UUIDs of the Riddles that should be connected to the leaderboard; maximum: 10 | |
isEmailValidationRequired | boolean | Whether email verification is required to appear on the leaderboard |
Example object
Creating an empty leaderboard (= no Riddle connections):
{
"type": "Leaderboard",
"build": {
"title": "My leaderboard"
}
}
Creating a leaderboard with Riddle connections:
{
"type": "Leaderboard",
"build": {
"title": "My leaderboard",
"riddleConnections": ["SampleUUID1", "SampleUUID2"]
}
}
Connect Riddle to existing leaderboard
Any built quizzes or predictors with at least one Name and Email field can be connected to an existing leaderboard.
Note: Connecting multiple Riddles to a single leaderboard is only possible with our Enterprise subscription.
Note: leaderboard.connections accepts between 1 and 3 connections (a maximum of 3 leaderboards can be connected to a single Riddle).
Connection properties
| Property | Required | Type | Description |
|---|---|---|---|
identifier | string | Overrides auto-detection of the leaderboard identifier field; either the label of a form field to use, or a dataLayer: variable | |
nickname | string | Overrides auto-detection of the leaderboard nickname field; either the label of a form field to use, or a dataLayer: variable |
Example object
Leaderboard connections are specified within build.leaderboard.connections. For example if I want to connect to the leaderboard with the UUID Fw5uSygx to my built Riddle the following build configuration is needed:
{
"type": "Quiz",
"build": {
"title": "My quiz",
"blocks": [
{
"title": "What's the capital of Germany?",
"type": "SingleChoice",
"items": {
"Berlin": true,
"Lissabon": false,
"Leipzig": false
}
},
{
"title": "My form",
"type": "FormBuilder",
"fields": {
"Your email": "Email",
"Your name": "Name"
}
}
],
"leaderboard": {
"connections": ["Fw5uSygx"]
}
}
}
To show the leaderboard on the result page and to fully engage the user, we advise adding the Leaderboard block to the result page. Click here to learn more.
Troubleshooting
Make sure that..
- the leaderboard UUID is correct
- the leaderboard is in the same project as the Riddle you are creating
- you have added a
FormBuilderwith aName(or genericText, which is also accepted as the nickname source) andEmailfield to your Riddle - when you want to connect multiple Riddles: you are subscribed to our Enterprise plan

