Up to date example of intercanister calls?

I was following the tutorial at Make inter-canister calls :: Internet Computer and getting an error of

Unknown version '0.6.22'.
Installed executable: 0.8.1

after I deploy.

If I change the dfx.json version value to 0.8.1, I get

The replica returned an HTTP Error: Http Error: status 500 Internal Server Error, content type "", content: Internal Server Error

Is there an updated version of intercanister calls or am I doing something wrong?
Also, how do you call a canister from a different project?

The error you’re getting may be solved by running dfx start --clean --background (only needed once to clear the replica state after your dfx version change there).

But… the dfx version used for the linkedup repo is from a while back, and you might have issues with the frontend it tries to deploy a little further down that tutorial (@kpeacock?).

I’d try a simple multi-canister setup first. There’s an example here:

The dfx.json’s canister entries for that example could look something like this:

"canisters": {
  "canister1": {
    "main": "src/canister1/main.mo",
    "type": "motoko"
  "canister2": {
    "main": "src/canister2/main.mo",
    "type": "motoko"

See that same thread for calling canisters from other projects using their deployed canister id, and this may help too: