I'm trying to implement a bitcoin full node while learning a new programming language, but I can't find the full set of public API that the full node has to expose. I assume the standard will be bitcoin core, but then again the closest I can get is the https://bitcoin.org/en/developer-reference . Where should I start from?
You can check this github page about btcd, one of the concurrent of bitcoin core where they talk about their API which is fully compatible with bitcoin
btcd provides a JSON-RPC API that is fully compatible with the original bitcoind/bitcoin-qt. There are a few key differences between btcd and bitcoind as far as how RPCs are serviced: