Transaction Builder API: Create an unsigned transaction to execute a Move call on the network, by calling the specified function in the module of a given package.


  • signer : <SuiAddress> - the transaction signer's Sui address

  • package_object_id : <ObjectID> - the Move package ID, e.g. `0x2`

  • module : <string> - the Move module name, e.g. `devnet_nft`

  • function : <string> - the move function name, e.g. `mint`

  • type_arguments : <[TypeTag]> - the type arguments of the Move function

  • arguments : <[SuiJsonValue]> - the arguments to be passed into the Move function, in <a href="https://docs.sui.io/build/sui-json">SuiJson</a> format

  • gas : <ObjectID> - gas object to be used in this transaction, node will pick one from the signer's possession if not provided

  • gas_budget : <uint64> - the gas budget, the transaction will fail if the gas cost exceed the budget

  • execution_mode : <SuiTransactionBuilderMode> - Whether this is a Normal transaction or a Dev Inspect Transaction. Default to be `SuiTransactionBuilderMode::Commit` when it's None.


  • TransactionBytes : <TransactionBytes>

    • gas : <[ObjectRef]> - the gas object to be used

    • inputObjects : <[InputObjectKind]> - objects to be used in this transaction

    • txBytes : <[Base64]> - BCS serialized transaction data bytes without its type tag, as base-64 encoded string.

Example Request and Result for unsafe_moveCall


curl --location 'https://sui-testnet.blastapi.io/<project-id>' \
--header 'Content-Type: application/json' \
--data '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "unsafe_moveCall",
    "params": [

Last updated