For the complete documentation index, see llms.txt. This page is also available as Markdown.

⛓️On-Chain Records (HCS)

Hashly records the actions anyone should be able to check on the Hedera Consensus Service (HCS): votes, event check-ins, Ember grants and claims, and raffle entries and draws. This page lists every topic, what goes into it and how to read it yourself.


πŸ” What Is HCS?

The Hedera Consensus Service is a public, ordered log. Every message sent to a topic gets a consensus timestamp and a sequence number from the network, and once written it can't be changed or removed. Anyone can read a topic's messages to verify the data on their own.


πŸ“‹ Hashly's Topics (Mainnet)

Topic
ID
What it records

πŸ—³οΈ Event Votes

0.0.10279947

Stars on mints, meetups, X Spaces, hackathons and other events

πŸ’° Asset Votes

0.0.10279948

Stars on tokens, NFT collections and ecosystem projects

πŸ“ Event Attendance

0.0.10300837

Check-ins at events with an attendance badge

🎁 Raffles

0.0.10855136

Raffles opening, ticket purchases and draws

πŸ”₯ Embers

0.0.10855219

Embers granted by an admin and Embers claimed from staking

All five topics have no admin key, so their settings can never be changed, and the same submit key (held by Hashly's account 0.0.10279885) is the only one allowed to write to them. That keeps spam out while anyone can still read everything.

⚠️ Records are permanent. Each one includes your Hedera account ID and a timestamp, and nobody, Hashly included, can edit or delete it. See Privacy & Terms.


πŸ—³οΈ Event Votes

Written when someone stars an event:

Field
Meaning

wallet

Account that starred

event_id

Hashly's ID for the event (hash-ly.com/events/<event_id>)

event_type

nft for mints, meetup for meetups and X Spaces, hackathon for hackathons. Events of type Other are recorded as nft

vote

Always up: events are voted with stars

timestamp

When Hashly sent the message, in milliseconds

Event votes don't include voting power. The weight a star added is calculated from the wallet's Dragon and El Santuario holdings when it was cast; see Voting System.


πŸ’° Asset Votes

Written when someone stars a token, an NFT collection or an ecosystem project:

Field
Meaning

target_id

The token ID for tokens and collections, or ecosystem:<project slug> for ecosystem projects

target_type

token for tokens, nft for NFT collections and for ecosystem projects

vote

Always up

voting_power

Weight of the star: 1 + 1 per Dragon + 5 if the wallet holds El Santuario

holdings.el_santuario

1 if the wallet held at least one El Santuario, otherwise 0

holdings.santuario_hedera

Number of Santuario Hedera Dragons held


πŸ“ Event Attendance

Written for every check-in, whether it came from the QR code, the attendance link or the host adding a wallet by hand:

event_name is the event's title at check-in time, and event_type is Hashly's internal type name. See Attendance Badges for Hosts.


🎁 Raffles

A raffle leaves three kinds of message, so its terms, its entries and its result can all be checked.

Raffle opened β€” written when the raffle is published, before anyone can buy a ticket:

ticket_cost is in Embers, winners is how many will be drawn, and requires is the holding needed to enter (<count>x <token ID>), or null when there's none.

Entry β€” written each time someone buys tickets:

tickets is how many were bought in that purchase, and total_tickets is the raffle's running total across everyone.

Draw β€” written when the winners are drawn:

Field
Meaning

raffle

The raffle's slug

tickets

Tickets held by entrants who still met the requirement at the draw

winners[].place

1 for the first winner, 2 for the second, and so on

winners[].roll

The random number that picked that winner

winners[].prng_tx

Transaction ID of the Hedera random number transaction that picked that winner

prng_tx

Transaction ID of the last roll, kept for draws recorded before each winner carried its own

🎲 How Winners Are Drawn

  1. πŸ” At the draw, every entrant's holding is checked again on the mirror node. Wallets that no longer meet the requirement are left out.

  2. 🎟️ Each remaining ticket is one possible number, so a wallet with 10 tickets covers 10 numbers.

  3. 🎲 For each winner, Hashly asks the network for a random number with a Hedera PRNG transaction. The number is generated by the consensus nodes and stored in the transaction record, so anyone can look it up on HashScan.

  4. πŸ‘€ The number lands on a ticket and that ticket's wallet wins. The wallet is taken out before the next roll, so nobody wins twice.

  5. 🚫 If Hedera's randomness isn't available, nothing is drawn. Hashly never falls back to a random number of its own.

Ember balances themselves are kept in Hashly's database. What goes on-chain is the raffle's terms, every entry and the random numbers that chose the winners.


πŸ”₯ Embers

Grant β€” Embers an admin gives to a wallet:

from is the admin account that gave the Embers, to is the wallet that received them, and reason says why. A grant is written to the topic before anything is credited. If the message can't be written, the Embers aren't given.

Claim β€” Embers a staker moves into their balance:

Field
Meaning

amount

Embers claimed

dragons

Dragons that qualified at the moment of the claim

rate_per_day

Embers per day those Dragons were earning

hours

Time since the wallet's last check, settled at the moment of the claim

A claim is recorded after the Embers are credited, because they were already earned. See Staking.

πŸ’‘ Embers have no monetary value and only work inside Hashly. Being recorded on HCS doesn't make them an asset. See Privacy & Terms.


πŸ”Ž Verify It Yourself

  • πŸ” HashScan β€” open a topic from the table above to browse its messages.

  • 🌐 Mirror node API β€” read the messages directly (they're base64-encoded JSON): https://mainnet.mirrornode.hedera.com/api/v1/topics/{topicId}/messages

  • 🎲 Raffle rolls β€” look up the prng_tx transaction on HashScan to see the number Hedera generated.


πŸ’‘ Tips

  • πŸ—³οΈ Find your own votes by searching a topic's messages for your account ID.

  • ⏱️ Allow a few seconds. Votes and claims are sent to Hedera just after Hashly saves them.

  • 🧾 Use the consensus timestamp on HashScan as the network's time for a record; timestamp inside the message is when Hashly sent it.

Last updated

Was this helpful?