Send a Multisig Transaction

A web application may request Adena to broadcast a multisig transaction via the BroadcastMultisigTransaction method. This method allows you to submit a transaction along with the collected signatures from authorized signers. Upon the user's approval, Adena will broadcast the transaction to the blockchain.

Note: Unlike the UI-based broadcast method where you upload .tx and .sig files, the injection method manages all transaction data and signatures through code.

Code

adena.BroadcastMultisigTransaction(
  multisigDocument: MultisigTransactionDocument,
  multisigSignatures?: Signature[]
)

Params

Key
Type
Description

multisigDocument

object

Multisig Transaction Document Model

multisigSignatures

array

Array of Signature Models (optional)

Multisig Transaction Document Model

Key
Type
Description

tx

RawTx

The raw transaction object containing messages, fees, signatures, and memo

chainId

string

The chain ID of the target blockchain (e.g., "staging", "portal-loop")

accountNumber

string

The account number of the multisig account

sequence

string

The sequence number of the multisig account

RawTx Model

Key
Type
Description

msg

RawTxMessageType[]

Array of transaction messages (BankSend, VmCall, VmAddPackage, or VmRun)

fee

object

Fee object containing gas_wanted and gas_fee

fee.gas_wanted

string

The maximum gas units allowed for the transaction

fee.gas_fee

string

The gas fee amount with denomination (e.g., "6113ugnot")

signatures

RawSignature[] | null

Array of signatures or null if unsigned

memo

string

Optional memo text for the transaction

RawTxMessageType

Message Type
Description

RawBankSendMessage

Message for sending tokens from one address to another

RawVmCallMessage

Message for calling a function in a Gno realm or package

RawVmAddPackageMessage

Message for adding a new package to the blockchain

RawVmRunMessage

Message for running Gno code

Signature Model

Key
Type
Description

pub_key

object

Public key object

pub_key.type

string

Public key type (e.g., /tm.PubKeySecp256k1)

pub_key.value

string

Base64-encoded public key

signature

string

Base64-encoded signature

Response

Key
Type
Description

code

number

Code (success: 0)

status

string

Returns success or failure

type

string

Response type

message

string

Descriptive message of the result

data

object

Broadcast Multisig Transaction Result Model

Broadcast Multisig Transaction Result Model

Key
Type
Description

check_tx

object

CheckTx result

deliver_tx

object

DeliverTx result

hash

string

Transaction hash

height

string

Block height

Sample Request

Important: Replace the following fields with your actual transaction details:

  • caller: Your multisig account address

  • chainId: Your target chain ID

  • accountNumber and sequence: Your account's current values

  • Signatures array: The collected signatures from authorized signers

Sample Response

Last updated