Get input addresses of a transaction using electrum I am using the latest (3.2.3) command line version of Electrum. I want to find the inputs of a transaction by looking at the history. The previous version of Electrum (that I was using 8 months ago) had a field (array) called input_addresses in its history output.

The current version does not have it.

A sample output from history is something like this:

$ electrum --testnet history --show_addresses | tail -40
...
        {
            "balance": "xxx BTC",
            "confirmations": 1,
            "date": "2018-09-21 12:27",
            "height": 1413976,
            "inputs": [
                {
                    "prevout_hash": "c96274d67e095...74c1af",
                    "prevout_n": 1
                },
                {
                    "prevout_hash": "f7e443ade3f0e...fe1eb8",
                    "prevout_n": 0
                }
            ],
            "label": "",
            "outputs": [
                {
                    "address": "myAB...",
                    "value": "0.49794855 BTC"
                },
                {
                    "address": "2N25...",
                    "value": "5.000258 BTC"
                }
            ],
            "timestamp": 1537522037,
            "txid": "3404f9fb96...0d253c",
            "value": "-5.00233525 BTC"
        }
    ]
}


So I am left with something called inputs containing some hashes. I need to convert these hashes to input addresses from command line.

The GUI version of Electrum will show the input address on the right of the hashes, like this:

c96274d67e095...74c1af:1    mhAhgR...
f7e443ade3f0e...fe1eb8:0    mhAhgR...
The hashed refer to the previous tx the input is consuming, and its vout position in that tx.

You will need to use the electrum API to fetch that transaction's details, and look at the outputs[vin] value for the locking script, and then convert that to an address by encoding it for base58check/bech32.