Importing multisig wallets into defender

Good day!
I've been looking into the defender API and haven't found any way to import third party wallets or create multisig wallets programmatically.
Is there such a possibility?

Hi @Separator -

You can create a Gnosis Safe via the UI at https://defender.openzeppelin.com/#/admin using the Add Contract button.

A contract can also be imported to Defender there.

You are not able to import a wallet to use as a Relayer however due to our Relayer infrastructure. Private keys are store in AWS KMS and we do not import private keys. You can read more about Relayer security considerations at https://docs.openzeppelin.com/defender/relay#security-considerations

1 Like

Can I create a multisig wallet programmatically via api?

I'm sorry for the inconvenience!
I can easily create multisig wallets directly:

I just need run this code

// yarn install ethers@5.0.0 @safe-global/safe-core-sdk @safe-global/safe-ethers-lib
import { ethers } from 'ethers'
import Safe, { SafeFactory } from '@safe-global/safe-core-sdk'
import EthersAdapter from '@safe-global/safe-ethers-lib'

const provider = new ethers.providers.JsonRpcProvider('...'); //1
const signerWallet = new ethers.Wallet('<PRIVATE_KEY>', provider); //2
const ethAdapter = new EthersAdapter({ethers, signerOrProvider: signerWallet}); //3

const safeFactory = await SafeFactory.create({ ethAdapter }); //4
const safeSdk: Safe = await safeFactory.deploySafe({ safeAccountConfig: { threshold: 2, owners: ['0x...', '0x...', '0x..'] }}); //5
console.log(safeSdk.getAddress());

then copy address from terminal and use it!

2 Likes