What does the "relayed_by" field in the BlockCypher API represent? Is there a way to gather geographical data of transactions? The transaction data returned by the BlockCypher's API includes the "relayed_by" field, which the documentation describes as "Address of the peer that sent us this transaction". Is this the IP address of the original node that broadcasts the transaction?

In general, we're trying to gather geographical data of the transactions; is there a reliable way to do so?
It's the IP address of the node that first sent us the transaction. As transaction broadcast works a bit like gossip, it's not guaranteed to be the original node (it could be a node "in the middle"). However, as BlockCypher is connected to quite a few nodes on the network, so over multiple transactions you're highly likely to be able to identify the right originating IP.

This is not a bulletproof method, as a more sophisticated attacker could just use Tor for transactions broadcast. Practically this is the exception and quite frankly, simply using a web wallet with a good VPN is a much simpler way to achieve a similar level of anonimity.

So for most applications you can get a fairly accurate originating IP address using relayed_by over multiple transactions.

Full disclosure: I'm CTO and co-founder at BlockCypher.