In the documentation I can see the system API calls for canister_info and canister_status which can be called from a canister, but not from externally. How does dfx obtain this information? I can’t find anything in the gateway HTTP API spec regarding info or status.
Great. Thank you very much.
Do you also happen to have a js example that reads from the system state tree?
Ok, got it. I got initially confused by the signature here:
ic0.canister_status : () → i32
which has no arguments and made think that it wasn’t possible to call externally because there is no way to specify which canister to query about. But this is only the system API for wasm code. The management canister service looks like this
canister_status : (canister_status_args) -> (canister_status_result);
It’s clear now. Thank you.