On-chain Operations
Create a Contract Call
Submit an arbitrary contract call from a vault, such as EVM call data, an ICP canister call, a raw-signing message, or an Alephium method.
Request example
POST
/api/external/transactions/
Use a contract call for arbitrary contract execution. These transactions can have chain-specific data requirements and may require approval before broadcast.
Request body
string
required
Vault that signs and submits the call.
string
required
Blockchain identifier.
string
Decimal amount of native asset sent with the call.
string
required
Must be
"CONTRACT_CALL".object
Chain-specific call payload. Use one of the following shapes.
string
Client reference.
object
Gas settings for the call.
object
Creation options.
The SDK accepts
chain and serializes it as blockChain. It injects category: "CONTRACT_CALL".Response
Returns a Transaction. Itsstatus is the lifecycle source of truth.
Approve the transaction
New transactions returnstatus: "PENDING" and wait for approval. Get the approval message for the transaction id, sign it with your API user’s key, then submit the approval. See Approvals.
With the SDK, call approveChangeRequest({ entityId: transaction.id, action: "approve" }) after this call.
Request example