Token-Based Raffle

The Token-Based Raffle Extension allows you to conduct auditable, transparent, and fair raffles for holders of specific NFT tokens across several blockchains.

One of the unique features of an Apollo raffle is that the end user does not need to take any action; they are passively entered into Apollo raffles depending on whether or not they hold the tokens.

Raffle off a 1:1 pair programming session to holders of NFTs from the following projects.

Configuration

Raffle Details

ValueDescriptionRequired

Raffle Name

The name of the Raffle displayed to users

True

Raffle Host

The name of the host that is displayed to users

True

Raffle Header Image

The main raffle image is used on the public page header, typically representing the host or displaying their logo.

True

Raffle Description

Description of the raffle, including any detailed information on the prizes or external links.

False

Raffle Draw Time

You may host a raffle at a given datetime or a specific block height from the Ethereum blockchain.

True

Date

Time

Block Height

The block height when the raffle is drawn. The block hash generated at this height is also used for the public entropy source.

Exclude Wallet Addresses

Include one wallet address per line that cannot win. This feature is useful for excluding DAOs, staking contracts, or other bad actors.

False

Tokens

Specify which tokens a user must hold to be eligible to participate in your raffle. Before using it as entry criteria, you must deploy or import the smart contract on Apollo.

ValueDescriptionRequired

Tokens Required

Specify the minimum number of tokens required for a wallet address to be entered into the raffle.

True

Token IDs Required

Specifiy Token IDs that are eligible to be entered into the raffle

False

Or Conditional

If required Token IDs are provided, this option will necessitate that a wallet owns any of those Token IDs to be eligible for entry into the raffle.

False

And Conditional

If required Token IDs are provided, this option will necessitate that a wallet owns all of those Token IDs to be eligible for entry into the raffle.

False

Prizes

You can host a raffle with many prizes of varying quantities.

ValueDescriptionRequired

Prize Title

The prize title should be descriptive enough to clearly distinguish between prizes.

True

Quantity

The number of prizes to be raffled off individually.

True

Prize Image

A visual representation of the prize, this will be visible on the public page.

True

Max. Prizes per Wallet Address

Sets the maximum number of times a given wallet address may win this prize.

False

Max. Entries per Wallet address

Sets the maximum number of entries a given wallet address can enter the draw for this prize.

False

Single Prize Policy

Ensures that if a users wins this prize then they will not be elgible to win any other prizes in this raffle.

False

Results

Download a CSV with draw details for each prize in any supported formats.

Apollo supported CSV

ColumnDescription

entry_index

The entry index computed when building the snapshot of token holders

prize_index

The prize index of the prize this is a raffle being hosted for

entry_address

The wallet address for this ticket

ticket_hash

The computer ticket hash using a combination of wallet address, prize index, entry index and prize title

result_hash

The resulting hash using a combination of the wallet address and entropy

entropy_used

The entropy used from the given Ethereum block and used in the calculation of the resulting hash

result_index

The sorted index for the result hashes sorting those descending

is_winner

Boolean indicating if this is a winning ticket

prize

The prize the wallet address has won

Manifold supported CSV

ColumnDescription

wallet_address

The address of the winner

count

The quantity of the prize that the winner has won

Users can connect their wallets to the public page to check if they have won. In addition, the public page displays the details of all winners, which anyone can view.

How We Ensure Fairness

pageHow We Ensure Fairness

FAQs

What if no one is elgible to win?

If a raffle is held with no eligible participants, the drawing will occur with no entries, and the prizes will not be distributed to anyone.

Can I delete a published raffle?

You can archive a live raffle, and if the public page of an archived raffle is visited, a message will be displayed to the user indicating that the raffle is archived.

Can I delete a drawn raffle?

A raffle that has been drawn cannot be deleted or archived. The public page will remain available and indexed.

Can I edit a published raffle?

A published raffle cannot be edited. If changes are desired, the published raffle must be archived and a new one created. This ensures that the details of raffles cannot be altered after they have been published.

Do users need to enter raffles?

Users are not required to actively enter raffles. Raffles will automatically be drawn from all eligible participants based on the criteria set for the raffle. This makes the process completely passive, avoiding any potential issues related to game theory or non-sharing of raffles.

Are prizes automatically sent to users?

No, Apollo raffles are used to facilitate the drawing process. The delivery of prizes is dependent on the host. If you suspect any abuse or irregularities, you can report it to support@apollo.xyz.

What am I legally allowed to raffle?

It is the responsibility of the host to determine the legality of a raffle, which may vary depending on the jurisdiction. If you need to provide a free postal entry option, don't hesitate to contact support@apollo.xyz, and we can include those entries in a provably fair manner.

What if my raffle has not yet drawn?

Raffle processing may take some time, especially if the raffle involves large NFT contracts. The backend processing can take several minutes. If your raffle has not been drawn after more than an hour, don't hesitate to contact support using the in-app support system. If a raffle needs to be redrawn due to technical issues, the result will be the same as the original drawing due to the fixed entropy used.

Last updated