I am trying to write a script to audit the changing balance of an ETH address, but I cannot seem to figure out any way to find transactions where ETH has been sent to that address. I couldn't find an appropriate query in the Web3 docs and I couldn't find an appropriate endpoint on the Etherscan API. I would love to find out that I missed it though.
To be more precise, how could you find the transaction with hash 0x8c04e9c806fd7a3273d8a13b54239ab42a5f0b534520e760ccab920bc3d8d59c (https://etherscan.io/tx/0x8c04e9c806fd7a3273d8a13b54239ab42a5f0b534520e760ccab920bc3d8d59c) if you only had the recipient address 0xe81d6fce840ab873c7bccb6c2ab15e4b6daf92c7 and did not already have the transaction hash?
Note: I chose a plain ETH transfer transaction at random from the Etherscan homepage.
Ideally a solution wouldn't involve querying all transactions in a range and then filtering locally.
EDIT: this is slightly different from (How to get transactions by account using web3 js?) because I am OK with using tools outside of web3JS