1

I read the doc and was able to send transaction by message(). But I couldn't find how to add output as SigLockedDustAllowanceOutput. It seems the default is SigLockedSingleOutput. The following the code I used to build tx. Please help, thanks.

for to_address in to_address_list:
    outputs_list.append({
        'address': to_address,
        'amount': amount
    })
client = iota_client.Client()
message = client.message(
    seed=seed,
    outputs=outputs_list
)
mihi
  • 7,324
  • 2
  • 15
  • 34
leftc
  • 13
  • 2

1 Answers1

1

When you check the python reference instead of the specification reference (your link), you will see that message also takes dust_allowance_outputs in addition to outputs.

Alternatively (this is the route I was going) you can search the source code of the python bindings where they call the Rust with_cust_allowance_output method and you will see that it iterates over those exact dust_allowance_outputs. Of course this requires that you know how the Rust API is building dust allowance outputs, so probably the first way is the way to go.

Regardless, use dust_allowance_outputs instead of outputs and you should be good to go.

mihi
  • 7,324
  • 2
  • 15
  • 34