How can I remove "Insufficient permissions, code:-1" error when calling from Rust SDK?

When I make a transaction call with Rust SDK (ethers-fireblocks crate) I get an error 403 “Insufficient permissions, code:-1”. I am able to communicate with sandbox-api, i.e. a call signer.address() returns correct account hash. So it seems that read permissions are ok, but I do not have permissions to send transaction.

For a reference, I am using an api key associated with a sandbox user with role NCW admin.

Hi @peeech

Alec from Fireblocks here. To create a NCW transaction, the NCW Signer role must be used. Please see this page for a breakdown of NCW role permissions.

So maybe my question would be different: I have a Vault with ETH_TEST3 Wallet on Ethereum Goerli network. I wanted to send transactions from this wallet with use of Fireblocks API. What user shall I create to have permissions to create and sign transactions from this (ETH_TEST3) wallet? Is this wallet (ETH_TEST3) a Non Custodial Wallet?

I am asking, because I have tried sending transfers from aforementioned account using both NCW Signer and NCW Admin roles, both producing an error in the title.