Skip to content

unsafe_publish ​

Transaction Builder API

Create an unsigned transaction to publish a Move package.

Parameters ​

  • sender · SuiAddress · requiredthe transaction signer's Sui address
  • compiled_modules · Base64[] · requiredthe compiled bytes of a Move package
  • dependencies · ObjectID[] · requireda list of transitive dependency addresses that this set of modules depends on.
  • gas · ObjectID · optionalgas object to be used in this transaction, node will pick one from the signer's possession if not provided
  • gas_budget · BigInt<u64> · requiredthe gas budget, the transaction will fail if the gas cost exceed the budget

Result ​

  • TransactionBlockBytes · TransactionBlockBytes

    • gas · ObjectRef[] · requiredthe gas objects to be used
    • inputObjects · InputObjectKind[] · requiredobjects to be used in this transaction
    • txBytes · Base64 · requiredBCS serialized transaction data bytes without its type tag, as base-64 encoded string.

Example ​

Replace each <param> with a value of the type listed under Parameters.

Request ​

bash
curl https://mainnet-api.inodra.com/v1/jsonrpc \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY' \
  -d '{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "unsafe_publish",
  "params": [
    "<sender>",
    "<compiled_modules>",
    "<dependencies>",
    "<gas_budget>"
  ]
}'

The full-stack Sui data layer.