Why do Algorand SDKs need an API key in order to interact with the blockchain?
other blockchains don’t need one
The API key is a way to control who have access to the node REST API.
Each request to the API comes with some cpu/disk/etc cost. Using a key allows the node operator to control who has access to the node.
Another use is to use it as part of a load balancer so a given client can be associated with a specific node.
The Algorand network itself does not use the REST API for communication. That protocol uses no keys/credentials, nor does it carry any account state information.
Last, you could always deploy your own node and expose the API using nginx, without the credentials.
Thanks, can you point me to a guide on how to run my own node?
if I run my own do I automatically get my own API keys?
Of course. Look at the developer documentation for detailed node installation instructions