LiaDevelopers

Concepts

Lia can fund a pool of $LIA for your app. Your server pays players from it, once per reward, within the pool and the daily limit per player.

#What a pool is

A reward pool is $LIA the Lia team sets aside for your app from Lia's treasury. Your server pays players from it: for winning a tournament, finishing a quest, watching a video, anything your app decides. The $LIA goes straight to the player's balance in Lia, and shows in their activity under your app's name with the reason you give.

The Lia team decides whether your app has a pool, funds it, and can top it up or take some back. Ask them about one when you talk to us.

#Paying a reward

Your server calls POST /rewards with your secret key:

JSON
{
  "playerId": "p_3f9c0a6d1b2e4f5a6b7c",
  "amount": 25,
  "key": "tournament-2026-11-01:p_3f9c0a6d1b2e4f5a6b7c",
  "reason": "Weekly tournament, 1st place"
}

Rewards only ever come from your server. There's no SDK call for them, because a page can't be trusted to say what someone earned.

#Once per key

Every reward has a key that you choose, up to 128 characters of letters, digits, _, ., : and -. A key pays once, ever: sending the same key again pays nothing and answers { "status": "duplicate" } with the amount it paid the first time. So:

  • Make the key say what the reward is for, so a retry or a double click can't pay twice: daily:2026-11-01:p_3f9c…, quest-7:p_3f9c…, ad:ad_8e1c….
  • It's safe to retry a reward after a timeout with the same key.

#Limits

LimitWhat happens
One reward is more than 0 and at most 10,000 LIA, to 6 decimal places.400 bad_amount
The pool must hold the amount.409 pool_empty, with what's left
A player can get at most the daily limit per player from your pool in a day (UTC). The Lia team sets it; 0 means no limit.429 daily_limit, with the limit

GET /pool tells your server what's left and the daily limit. Watch the balance and ask the team to top it up before it runs out.

#Test mode

With your test key, rewards are pretend: they're recorded and their webhook is sent, but your pool isn't used, the daily limit doesn't apply, and no $LIA reaches the player. Keys are still once only.

#Webhooks

Every reward paid sends a reward.paid webhook with its key, player, amount, reason and mode. A duplicate sends nothing.

Reward players puts it together with a daily bonus as the example.

Type to search every page, method and endpoint.