In the examples section of the SDK documentation, there are encoders for a bunch of common DAO operations.

However I can't see an encoding for an arbitrary contract call in the examples.

Does the SDK support arbitrary calls yet?

1 Answer 1


You can pass any arbitrary action that you can encode using an existing library.

So, if you know the function signature, you can use ethers.js to initialize its interface and then pass the calldata bytes to the proposal’s action array. You can find documentation on how to pass actions to proposals here: https://devs.aragon.org/docs/sdk/examples/tokenVoting-client/create-proposal-with-actions These actions get executed when a proposal passes.

What the SDK can’t possibly do is detecting/decoding calldata for functions it knows nothing about. In such case, you would need to have your function signatures ready to match all incoming actions that you create.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.