How to get a balance from the network directly? I was under the impression that I'd be able to get a balance from the network directly, not only by going through some http interface which wraps the server RPCs.
I am curious, is it possible to get a balance by hitting a node on the network directly? I've tried using curl to hit every node on the network already.
curl --data-binary '{&quot;jsonrpc&quot;: &quot;1.0&quot;, &quot;id&quot;:&quot;curltest&quot;, &quot;method&quot;: &quot;getbalance&quot;, &quot;params&quot;: [&quot;*&quot;, 6] }' -H 'content-type: text/plain;' http://${server}/

The documentation says to include the --user flag, so I believe this is why the calls fail.
If not, how is my Trezor able to operate independently? Does my Trezor depend on Trezor.com running a node?
Also, I am curious, some APIs must be open, for example a new node which wishes to sync must be able to fetch blocks from it's peers, but I see that getblock RPC also requires authorization, i.e. &quot;curl --user&quot;...
https://bitcoincore.org/en/doc/0.20.0/rpc/blockchain/getblock/
What APIs do nodes in the network expose directly? Any?
Thanks!
Bitcoin nodes have no idea of what a &quot;balance&quot; is, that's a concept that wallets have. The Bitcoin peer to peer network allows for the communication of transactions or blocks (neither of which contain &quot;balance&quot; information), and nothing else. There is also no portion of the private RPC API which will tell you the &quot;balance&quot; of an arbitrary address either (it can tell you detail about a locally running wallet with getbalance however), and these interfaces are never made public because they allow almost complete control of the nodes wallet and operation.

Does my Trezor depend on Trezor.com running a node?

With their software as supplied, absolutely. If you use it with another piece of software locally it is usually the case that you're trusting a remote party, but there's the possibility of setting it up in such a way that it does not. For example, Electrum, but only when connected to Personal Electrum Server, which runs locally as a middle man between a Bitcoin node you operate and Electrum.