In order to integrate with the MultiversX Network and be able to broadcast transactions and query blockchain data in an optimized approach, one needs to set up an on-premises Observing Squad. An Observing Squad is defined as a set of N Observer Nodes (one for each Shard, including the Metachain) plus an MultiversX Proxy instance which will connect to these Observers and provide an HTTP API (by delegating requests to the Observers).
The snapshotless mode allows you to quickly synchronize with the network and perform Rest API calls for retrieving real-time data from the blockchain, such as getting data of an address (GET /address/${address}
), getting the balance of an address (GET /address/${address}/balance
), sending transactions, performing Smart Contract Queries and many more .
Full List of supported Operations can be found here : https://docs.multiversx.com/sdk-and-tools/proxy/#snaphotless-observers-support
Click the Deploy to DigitalOcean button to create a Droplet based on this 1-Click App. If you aren’t logged in, this link will prompt you to log in with your DigitalOcean account.
In addition to creating a Droplet from the MultiversX Observing Squad 1-Click App using the control panel, you can also use the DigitalOcean API. As an example, to create a 4GB MultiversX Observing Squad Droplet in the SFO2 region, you can use the following curl
command. You need to either save your API access token) to an environment variable or substitute it in the command below.
curl -X POST -H 'Content-Type: application/json' \
-H 'Authorization: Bearer '$TOKEN'' -d \
'{"name":"choose_a_name","region":"sfo2","size":"s-2vcpu-4gb","image": "multiversx-multiversxobserv"}' \
"https://api.digitalocean.com/v2/droplets"
A systemd service will start docker compose and run all the Multiversx Observers shards in snapshotless mode .
Make sure to allow port 22 and 8079 in your security group settings .
The following tools are available at this path : /opt/multiversx-observing-squad-tools/
./stop_stack.sh #-- stops the observing squad stack
./start_stack.sh #-- starts the observing squad stack
./check_stack_sync_status.sh #-- get node syncronization status
./check_stack_node_version.sh #-- get stack version information
./upgrade_stack.sh #-- upgrade stack version
Once the stack is in sync you can query the proxy for information :
curl -s -k localhost:8079/network/config
Or via the public ip address of your instance on port 8079.
Full list of supported operations in snapshotless mode can be found here: https://docs.multiversx.com/sdk-and-tools/proxy/#snaphotless-observers-support