Random Points Reward

Give users a chance to win randomized leaderboard points whenever they complete a quest.

Overview

Reward users with a randomized amount of leaderboard points automatically whenever they complete a quest. This template listens for a "quest completed" webhook, runs a weighted wheelspin to pick a points prize, then adds those points to a specified leaderboard with an auditable reason.

How it works

  1. Trigger: a "Quest Completed" webhook receives the quest claim payload (use the provided webhook URL).
  2. Weighted draw: the workflow runs a Weighted Random Value action that selects one prize from the configured prize pool.
  3. Award points: the Add Points action writes the selected points amount to the configured leaderboard for the user (uses userId and communityId from the trigger).

Built-in steps in this template

  • Quest Completed (trigger) — exposes id, community.id, and other claim info via the webhook.
  • Weighted Random Value — picks one of: 10, 25, 50, 100, 250, 500, 1000, 5000 (each with probability 0.125 by default).
  • Add Points — awards the chosen points to the leaderboard entry with reason: "Wheelspin".

Setup (what to provide)

  • leaderboardId (required): choose the leaderboard to update. This template uses a dynamic field so you can select a Domino leaderboard tied to your community.
  • network (optional in inputs): informational only in this template (default: mainnet).
  • Webhook: copy the webhook URL shown on the "Quest Completed" trigger and paste it into your quest provider (e.g., Zealy quest webhook) so Domino receives the completion events.

Inputs schema

  • leaderboardId (String, required) — dynamic field pointing to the Domino leaderboard to credit.
  • network — provided as a static input; this template includes it for context but the point award is handled by Domino leaderboard actions.

Customizing the wheelspin

  • Prize values and probabilities are configurable in the Weighted Random Value step. Replace or reorder values and adjust probabilities to create custom odds.
  • Change the reason field on the Add Points action to reflect different campaigns (e.g., "Launch Spin", "Daily Bonus").

Important notes & best practices

  • Webhook placement: add the trigger webhook URL to your quest provider (Zealy or custom) so it fires on successful claim.
  • Test first: use a test quest or a test webhook payload to verify the flow and that points land on the intended leaderboard.
  • Idempotency: ensure your quest provider does not send duplicate webhooks for the same claim — duplicate triggers will run the wheelspin again and award extra points.
  • Values format: the template stores prize values as strings in the Weighted Random Value action; the Add Points action consumes that output. If you change types, confirm the Add Points input accepts them.
  • Error handling: the builder metadata sets continueOnError to false — failures will stop the run. You can change this if you prefer to continue on downstream errors.

Logs & verification

  • After a run, verify the leaderboard entry for the user to confirm the points were added.
  • Use the trigger payload fields (user id, community id) to reconcile awards with the original claim if you need audit trails.

Tip

Start with low-value prizes and run multiple test claims to confirm expected behavior before enabling this template on high-traffic or high-value quests. Adjust probabilities to control average payout and perceived rarity.

Template Information
christian profile picture
Published by
christian
Last updated
Mar 20, 2026

Automations for every community

Domino Lets Anyone
Build Easy Web3 Automations

Do more with your dApps without technical skills or a coding know-how. Domino makes it easy to build and share new functionality for protocols, no matter if you're part of the team or the community!

App screenshot

Level Up Your dApps

Start using Domino in minutes. Use automations created by the others or build your own.

App screenshot