0
I am trying to request for information regarding a particular transaction in verbose mode from an ElectrumX server with protocol v1.2 and above.
I have checked the version via a server.version to ensure that the protocol is 1.2
{"method":"server.version","id":0,"params":["Test01","1.2"]}
With server replying:
{"result":["ElectrumX 1.4.3","1.2"],"id":0,"jsonrpc":"2.0"}
And it has a feature list of:
{"result":{"pruning":null,"protocol_max":"1.2","protocol_min":"1.0","genesis_hash":"000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f","hosts":{"electrum.poorcoding.com":{"tcp_port":50001,"ssl_port":50002},"ruuxwv74pjxms3ws.onion":{"tcp_port":50001,"ssl_port":10042}},"hash_function":"sha256","server_version":"ElectrumX 1.4.3"},"id":0,"jsonrpc":"2.0"}
I tried to issue the following JSON-RPC command:
{"method":"blockchain.transaction.get","id":0,"params":["fc992bd10bbcbd54ee2279de497ad4bd49ce6a64c27f2a2d3293f761d2a5a3a3"],"verbose":true}
The result wasn't the verbose mode I was expecting:
{"result":"020000000b2356969c58611df9ccbf4ebe064a33a63c71f0e04ab39ccb530331e45971cddf000000006a47304402201a9eb199f2fff91d8e9fe416e2fd8245a5e200a2aa3110691c24bc24aef42e6a022029355d6a9ab1e9e14a3a5729303c2c97143570b451803ec210a2def6a8a7e8e5012103638a747b2e4339a9aefe09b43b4b7f12bd044d0cfa158472199b9f9dfc1cb58dfeffffff2e126381ff3c7c0e30b17399f6a89056480f9063c1b807af3f2d6d1c18cba003000000006a47304402203d686197e00d7056052171af0a92a46ffffdf6be44ae6f18e44a1e5fcd9692e20220683d450e22ad809126decb916272543de0af257ea5d0d2210bb349f3e862fc4a012102e12564a5853be9f541d4887713e61645c2c67ccecef80b1c7dfd43b6b4d34cb6feffffff3c69858b6e56aa9167b6ece5308d73f739a779a5910ca392bbfca8aa890b0d97010000006a473044022019fb37069222a7f10fdf23be9a7c44c829029eb910595083e6660f556b55bf090220019b8fe7a970718f7f0dba481aa588b63b00d5981e896bc485c7e27366982b8b01210353a42fb6331646bb675bebec7feed6259bebac36080e01c9306478c0a1440e28feffffff43d5db04b65c6cbbc6a1ba94244b5ed769969dfa55b7a6bceb6e2b856ca69f7c000000006a47304402200bfb13afc5bcff8d1314395dd5b7a1c0b98c0974eca9468b84f9e2cd41e674bc02200eb8869ddcad81c2ba76ee4c29ebdf15a777f79acead35032cbe28fdb730cea4012102f5e23ab2d241967b8c94f71ad2caa439d2ddeb226dcfbf91b83ebf96d7e39deafeffffff8ec0499dbe894696ad85891f894195b43afc5423988fb82e387fb7084ef56394010000006a47304402204322bd70be2b69b134b54556642e2ba89ecec8c7fb4ebe89df002d9613e6e7de022057bb35ae64c864c30e6835b7184158b30c515bd79e4dcaf7c9228953d53211b201210304e2265d9f1a54166a7a69ac4441b5837ec5c337d6de50efb64314f500c14e7cfeffffffb491f4ca65f7fcd1ad41c2ddda2d4194c4682a1710cf3177d310294f5c5c6cd1010000006a473044022078e612c445732e8938422e8d27a82918684df5c4fc7b8a140771fe1b596e1e2802206f983b0f76f1c6f6158219dfc87c0832048861e0b1e3a7acff0c7364e57e1c4d012103367fd7df0cec3265141dba0d74d0e2dc07ecde54ec2d4a29eaf59efe09f05990feffffffbaf9790b819321f037e388bdcc1139ac6ac710b24497b0c4e546c7673e166677010000006b483045022100a74573768028d90643591dc5568ee10213599fdc0ffceb40a3a70553d541937102200c452638932694fec71d4ca96ae629bf21fde8c65c81e9442d88061c03d94f1901210286c4c51f0ed3a6557e4792faf272022c7a3ed65d19b8c59af1dd6fd8e7db5053feffffffcf2f37b6d4c373370c9d7e02f0c42b6b319655a5db01fd179c448b48a25e6047010000006a47304402202fc362704e2c0c6cfb9e43928c0ce7dcdbc9590b14481e13bd55702cfda6a682022066b2537ffcca3274ae4f34b6c76881004936481aa3e02e32659555fd6ba7a54601210387e001ccff8023655587386adf14ea44515edf9c5a2968d61c2ce2d77347fe42feffffffd077d21b7e3351cc97fdb791bec0201caa3eb0dfcf6431957d351f6f29bd8c59010000006a47304402204565364e236b884b3e1ef84733af01136f3fc7f70a6e10b8cd5aa8f2f0b47adf02200fd979321e7770fd7b44fbe325d41595ccbeeee3cfd090de9af5b727ce1be72c0121030140af643df18b4e01fe21f5b2801cf5072768a963f402532103e9d8e02bbddcfefffffff40b7483d185b5e0cba1b3996d80cb3d4895b4ae320ab18928aff80de1a89482010000006b483045022100b0ec6109bebcc4490b2ec909ca966681e15f63a29b138d468a13b4a94891ebdb022071645aff4b17f28b4ff7e754952d0da4ebf468e014cfcf0f08189153974d0faa012102613226d6cc0803a310c0ea9c79f95bad6546b5cc917d3a61c116980470fcf2e4fefffffff063056ef8112605847f620bd2cc9b682e0b5653a90df81c4e0c17d2e744b932850200006a473044022009ae6e6dbf70f38e1ec32ec64d9cd484179fd974277bd4a38209c7fd5e03942702201bb0244cd5da0858afb1f32f8eb8bf760a6aa537865e642ed1fd8233ba12638001210397adf156191c5c7947467d7b1d19a0f84d781c50efa24c32d8c4005a55851b7dfeffffff022e3f0e00000000001976a91425e789df00999740b6ed1a2cacf88ffbe8df8f4388ac209c7000000000001976a914c515337b8c81e8eb1b816426d45281a8aa65bbd388acbb050800","id":0,"jsonrpc":"2.0"}
The documentation page was lacking of sample on how to use the verbose mode:
https://electrumx.readthedocs.io/en/latest/protocol-methods.html#blockchain-transaction-get
I would assume the command I issued might have a problem or is the server simply issuing a 1.2 protocol but refusing to honor the verbose=true parameter which the documentation have specified ?
{"method":"blockchain.transaction.get","id":0,"params":["fc992bd10bbcbd54ee2279de497ad4bd49ce6a64c27f2a2d3293f761d2a5a3a3",{"verbose":true}]} was used and it yielded the same result. – thotheolh – 2018-06-03T12:30:02.843
You are still doing it the wrong way, please copy and paste what I've posted. – Adam – 2018-06-03T12:32:02.413
You don't have to set it into curly braces, remove them – Adam – 2018-06-03T12:33:18.957
Thanks. Got it. I also noticed that the server.version indicating a client supporting version 1.2 protocol and above before sending the above blockchain.transaction.get with verbose=true enabled for it to work. – thotheolh – 2018-06-03T14:29:52.670