Protocol Changes¶
This documents lists changes made by protocol version.
Version 1.1¶
Changes¶
- improved semantics of
server.version()
to aid protocol negotiation, and a changed return value.blockchain.transaction.get()
no longer takes the height argument that was ignored anyway.blockchain.transaction.broadcast()
returns errors like any other JSON RPC call. A transaction hash result is only returned on success.
New methods¶
Removed methods¶
Version 1.2¶
Changes¶
blockchain.transaction.get()
now has an optional parameter verbose.blockchain.headers.subscribe()
now has an optional parameter raw.server.version()
should not be used for “ping” functionality; use the newserver.ping()
method instead.
Deprecated methods¶
blockchain.block.get_chunk()
. Switch toblockchain.block.headers()
blockchain.address.get_balance()
. Switch toblockchain.scripthash.get_balance()
.blockchain.address.get_history()
. Switch toblockchain.scripthash.get_history()
.blockchain.address.get_mempool()
. Switch toblockchain.scripthash.get_mempool()
.blockchain.address.listunspent()
. Switch toblockchain.scripthash.listunspent()
.blockchain.address.subscribe()
. Switch toblockchain.scripthash.subscribe()
.blockchain.headers.subscribe()
with raw other thanTrue
.
Version 1.3¶
Changes¶
blockchain.headers.subscribe()
argument raw switches default toTrue
New methods¶
Removed methods¶
Deprecated methods¶
Version 1.4¶
This version removes all support for deserialized headers.
Changes¶
- Deserialized headers are no longer available, so removed argument raw from
blockchain.headers.subscribe()
.- Only the first
server.version()
message is accepted.- Optional cp_height argument added to
blockchain.block.header()
andblockchain.block.headers()
to return merkle proofs of the header to a given checkpoint.
New methods¶
blockchain.transaction.id_from_pos()
to return a transaction hash, and optionally a merkle proof, given a block height and position in the block.
Removed methods¶
Version 1.4.1¶
Changes¶
blockchain.block.header()
andblockchain.block.headers()
now truncate AuxPoW data (if using an AuxPoW chain) when cp_height is nonzero. AuxPoW data is still present when cp_height is zero. Non-AuxPoW chains are unaffected.
Version 1.4.2¶
server.features()
changed the requirement of key hosts from being MUST be present to RECOMMENDED. Note that ElectrumX will not peer with your server without this key.
Version 1.4.3¶
New methods¶
blockchain.address.get_balance()
was brought back after having been removed in 1.3.blockchain.address.get_history()
was brought back after having been removed in 1.3.blockchain.address.get_mempool()
was brought back after having been removed in 1.3.blockchain.address.get_scripthash()
to translate an address into a script hash.blockchain.address.listunspent()
was brought back after having been removed in 1.3.blockchain.address.subscribe()
was brought back after having been removed in 1.3.blockchain.address.unsubscribe()
to unsubscribe from an address.