Why I need to provide vaultAccountIds when deploying smart contract to hardhat using Fireblocks Hardhat Plugin

I have the following code in hardhat.config.js when deploying my smart contract to hardhat using Fireblocks Hardhat Plugin:

module.exports = {
  solidity: "0.8.20",
  networks: {
    goerli: {
      url: "https://rpc.ankr.com/eth_goerli",
      fireblocks: {
        apiBaseUrl: ApiBaseUrl.Sandbox, // If using a sandbox workspace
        privateKey: process.env.FIREBLOCKS_API_PRIVATE_KEY_PATH,
        apiKey: process.env.FIREBLOCKS_API_KEY,
        vaultAccountIds: process.env.FIREBLOCKS_VAULT_ACCOUNT_IDS,
      }
    },
  },
};

My question is why do I need to provide vaultAccountIds? how Fireblocks uses vaultAccountIds parameter regarding to the smart contract being uploaded?

Hey @usama, you have to specify the vault account ID for the system to know from which wallet to deploy the contract.

Fireblocks API expects to get the vault account ID and the asset ID (configured by the network in the config file) in order to initiate the transaction for the contract deployment from a specific wallet in your workspace.

I hope it sheds some light on your question :pray: