A Token Creation and Airdrop Tool Suite for the XRPL.
Disclaimer: This software is provided as is without any express or implied warranties. X33 Labs/authors/maintainers/contributors to this repo assume no responsibility for errors or omissions, or for damages resulting from the use of this software contained herein. There is no guarantee as to the suitability of said source code. X33 Labs/authors/maintainers/contributors, will not be held responsible for any damages or costs which might occur as a result. USE AT YOUR OWN RISK
- Create Tokens on the XRPL
- Set the Email Hash and Domain for your Issuer Account
- Blackhole Issuer Account
- Control token distribution and air drops
- XRPLVerify.com integration to filter out bots/script trustline farmers
- Export Reports to show current token balances for your users and airdrop status.
Open a command prompt or Powershell prompt and issue the following commands
git clone https://github.com/X33-Labs/XRPL-Airdrop
Navigate to the directory where you cloned the project.
Build the project
dotnet build --configuration Release
Navigate to the Config directory and open up the settings.json file to change settings variables. Reference the Settings.Json section further down in this document.
cd [User Path]\XRPL-Airdrop\XRPLAirdrop\bin\Release\net5.0\config
Open the settings.json file located at: [User Path]\XRPL-Airdrop\XRPLAirdrop\bin\Release\net5.0\config
Navigate back one directory to the main build directory
cd [User Path]\XRPL-Airdrop\XRPLAirdrop\bin\Release\net5.0
Now Run the App
dotnet XRPLAirdrop.dll
When this feature is initiated, the app will attempt to pull into local storage all of the addresses/balances that have a trustline setup with the configured issuer address that was set in the settings.json file. This is the 1st step that must be taken in order to run an airdrop campaign. It's also useful for taking snapshots of trustline accounts at a certain point in time or viewing account balances for your token. If an airdrop campaign has already been initiated, DO NOT update trustline accounts as it will overwrite all airdrop statuses and data.
When this feature is initiated, the app will pull in Forensics data to identify Bots/Scripts/Trustline Farmers as provided by XRPlorer. Contact for more info: Xrplorer(https://xrplorer.com/contact) Deprecated as of 1/1/22
Outputs various trustline # stats and rudimentary settings data. Refer to the Settings.json file for all settings data.
Starts the airdrop campaign based on the current config. If at any time the airdrop campaign gets interrupted, the airdrop will start where the app was previously interrupted.
Outputs either a CSV or XLSX report on the balance and status of airdrop accounts (configured in the settings.json file). For more info, refer to the Report section of this document. Output Directory: [User Path]\XRPL-Airdrop\XRPLAirdrop\bin\Release\net5.0\Reports
Manually resets the airdrop/verify status in local memory for an address. Useful if an address was non-qualifying at first or didn't properly receive their airdrop.
Outputs the current Network fees.
If there are non-verified transactions on the Export Report, this function will attempt to re-verify those transaction hashes to confirm that the transactions were validated and included in a ledger.
Issues a new token on the XRPL based on the configured fields in the settings.json file. Required fields: Issuer_Address, Issuer_Address_Secret, Airdrop_Address, Airdrop_Address_Secret, Currency_Code, Supply. In this case, the Airdrop_Address acts as the hot wallet address.
Blackholes the Issuer Account. ***WARNING: by initiating this function, you will lose all access to the issuer account configured in the settings.json file. Make sure all of your issuer account changes are correct before blackholing (email hash, domain, currency, supply, ect).
Updates the email hash and the domain for the issuer account based on the Domain and Email settings in the settings.json file.
The websocket connection URL. Change this to specify Mainnet, Testnet or Devnet
The issuer address for your token
The issuer address secret **only required when issueing a new currency or changing the email hash/domain or blackholing an issuer account
The address where your airdrop tokens are located for running an airdrop campaign. This also acts as the hot wallet when issuing a new currency.
The secret for the airdrop address
The ASCII currency code for your existing or new currency
The domain for your currency ex. pixelaperowboat.club
The email for your gravatar account. Shows a custom image for your issuer address in a block explorer. See for more info: https://en.gravatar.com/
integer value for the total supply of your currency (Only used when creating a new currency)
Sets the transfer fee (as a percentage) for your new currency. Default is set to 0. Can be 0 to 100 (Only used when creating a new currency)
Amount of token to drop to each trustline
Only used with XRPForensics data. Default is false. deprecated as of 1/1/22
URL for XRPlorer Bot data api. Do not change. deprecated as of 1/1/22
The API Key for XRPlorer. Contact for more info: https://xrplorer.com/contact deprecated as of 1/1/22
Throttle when pulling in trustlines to keep load to a minimum on ledger RPC servers. (in seconds)
Trottle when sending transactions in an airdrop campaign (in seconds)
Excludes addresses that have a balance of the token. Useful for excluding team wallets and other addresses that already have a balance before running your airdrop.
Includes only holders of your token in an airdrop campaign
The number of tokens a user has to hold in order to qualify for the airdrop when Include_only_holders is set to true
The number of trustlines to send to
The multiplier for sending transactions on the ledger for reliable inclusion in ledgers. Default is 1.1. Fees you pay per txn = (Open Ledger Fee) * 1.1
The maximum fee in drops you are willing to pay per transaction. If the current Open Ledger Fee * FeeMultiplier is greater than the MaximumFee, the app will pause the airdrop campaign with a status message of the current fees and wait until fees are reduced down to your Maximum Fee that you set. Default is 11 drops.
true or false. This is X33 Labs solution to combating bots/scripts/farm accounts when running an airdrop campaign. Verifiable human interaction. See https://www.xrplverify.com/ for more information
The password you were assigned when signing up for X33 Labs XRPLVerify service.
CSV or XLSX file format for Report Exports
The XRPLAirdrop app has built in local memory and storage for trustline accounts. Reports allow the user to quickly check balances and status of accounts pre or post airdrop campaign. If an airdrop gets interrupted for any reason, it allows the user to see the status of each address in the trustline list. See Below for Report Fields.
the integer primary key of the record
Address of the trustline user
Current token balance of the user
1 = a token transaction has been initiated for this address for the current airdrop campaign 0 = no transaction has been initiated -1 = Error or address was excluded based on criteria in the configuration file
The date and time when the transaction was initiated
1 = the transaction for this address for an airdrop was validated/verified on the ledger 0 = nothing was verified -1 = error or address was excluded from the airdrop
1 = this address's trustline was verified through xrplverify.com 0 = not verified through xrplverify.com
The status message for the transaction
The detail message for the transaction
The transaction hash after the transaction was initiated