How to use defender with own address

I have tried to deploy smart contract using defender-relayer by following this article https://betterprogramming.pub/how-to-deploy-smart-contracts-via-relayer-db438ad7c399 . The relayer creates one private key for us. Using this private key defender-relayer deploys contract. But instead of managed private key, i want to use my own address. When the ralayer receiver request, I should connect respective address with metamask, then deploy the contract. Can we do this using defender-relayer ? I need exactly same like defender's relayer logic but I want to use my own address as signer.

If it is not possible with defender-relayer, is there any alternative solution.

As far i know you just need use Secrets to hold your keys and use normal ethers to get your signer.

Screenshot below where to create Secrets for Autotasks

In the docs https://docs.openzeppelin.com/defender/autotasks#secrets

you can get your secrets like that

exports.handler = async function(event) {
  const { mySecret, anApiKey } = event.secrets;
}

After that use can use the ethers.Wallet to create the signer to use for your tx calls. https://docs.ethers.org/v4/api-wallet.html

I hope that can help you.

1 Like

Thanks for all the help on support @kamikazebr !