Error: The replica returned an HTTP Error: Http Error: status 403 Forbidden, content type "application/cbor", content: Requested canister rejected the message

Hello everyone,

currently I am trying to deploy on network some canisters but I am facing this kind of error:

Error: The replica returned an HTTP Error: Http Error: status 403 Forbidden, content type "application/cbor", content: Requested canister rejected the message

This error appears when installing canisters with the command:

dfx deploy --network ic

  1. I am using dfx 0.9.3
  2. In my cycles wallet my local identity is a controller (That principal is a controller on: https://wallet-id.raw.ic0.app/ link)

Am I missing something? Is there something that I should do before run deploy command?

Thank you!

Does it work if you do it with this command? dfx deploy --network ic --wallet <your- wallet-address>

3 Likes

Thank you!! That was the solution :slight_smile:

This means that your wallet is a controller of the canister, but not your own principal. If you want to add your principal as a controller (so you don’t always have to proxy through --wallet) you can add your principal to the controllers like this:

dfx canister --wallet "$(dfx identity get-wallet)" update-settings --all --add-controller "$(dfx identity get-principal)"

Thanks for the clarification

Added as controller of “develop_sandbox”: 5ztge-jkbea-irtf5-bw6hq-xl4xw-4bbrn-j5d2f-uydin-bcs5e-xul2u-qqe
Error: The invocation to the wallet call forward method failed with the error: An error happened during the call: 3: Canister qjdve-lqaaa-aaaaa-aaaeq-cai not found.

Getting error as above, what could be wrong ?

What I understand is this:

  • adding yourself as a controller worked for the canister “develop_sandbox”
  • since the command I recommended updates all configured canisters (--all), it tried to update the controllers of a second canister
  • for some reason an address is configured for a second canister, but the canister is deleted / not created. Therefore this second update call failed. (Not quite certain: could the canister be stopped as well or would that produce a different error message?)
  • deployments that only touch the “develop_sandbox” canister should from now on succeed, even when you don’t use --wallet <wallet id>

I don’t quite understand why that canister id would not succeed. Have you tried running the command a second time? The ic.rocks lookup for it certainly shows that something is there. Can you try and see what dfx canister --network ic status qjdve-lqaaa-aaaaa-aaaeq-cai returns? Maybe once with and once without --wallet <wallet id>.