Sending Transactions
Sending transactions using InitiaJS is straightforward. First, we need to import the necessary classes and functions.
Next, we need to set up our environment variables. We will need the following:
MNEMONIC
: The mnemonic of the account that will be sending the transaction.REST_URL
: The URL of the Initia REST.GAS_PRICES
: The gas prices for the transaction.SENDER_ADDRESS
: The address of the account that will be sending the transaction.RECIPIENT_ADDRESS
: The address of the account that will be receiving the transaction.AMOUNT
: The amount of tokens to send.
We can then use the use these variables to ultimately create the wallet
client, as well as the sendMsg
object. Since for this example we’re making a token transfer, we’ll use the MsgSend
object. But the SDK provides many other message types for different actions related to staking, governance, and more.
Finally, we can create the function to send the transaction.
- We first create the transaction by calling
wallet.createAndSignTx
. This function takes in the raw message object, signs it using thewallet
, and returns a signed transaction object. - We then broadcast the transaction by calling
restClient.tx.broadcast
. This function takes in the signed transaction object and broadcasts it to the network.
Finally, we can call the function to send the transaction.
If you then run the script using npx ts-node src/sending-transactions.ts
, you should see an output similar to the following:
Full Example
Was this page helpful?