getrawtransaction JSON-RPC command
getrawtransaction "txid" ( verbosity "blockhash" patterns )
NOTE: By default this function only works for mempool transactions. If the -txindex option is
enabled, it also works for blockchain transactions. If the block which contains the transaction
is known, its hash can be provided even for nodes without -txindex. Note that if a blockhash is
provided, only that block will be searched and if the transaction is in the mempool or other
blocks, or if this node does not have the given block available, the transaction will not be found.
DEPRECATED: for now, it also works for transactions with unspent outputs.
Return the raw transaction data.
If verbose is 'false' or omitted, returns a string that is serialized, hex-encoded data for 'txid'.
If verbose is 'true', returns an Object with information about 'txid'.
If verbose is a numeric value, then it indicates the verbosity level
* Level 0: Same as verbose=false
* Level 1: Same as verbose=true
* Level 2: Input value and transaction fee data will be made available
- This operation will lookup the input transactions loading the data
from disk if necessary, which might be slow. Also, it might fail if
this data is not available (due to pruning or no -txindex enabled).
If patterns is true, then verbose outputs will additionally include a byteCodePattern object for
each script (scriptSig, prevout and output scriptPubKey). When used with verbosity=2 then inputs
spending from P2SH prevouts will additionally include a redeemScript object, with its own
byteCodePattern object nested inside.
Arguments
1. "txid" (string, required) The transaction id
2. verbosity (numeric, optional, default=false) If false or 0, return a string, otherwise return a json object
3. "blockhash" (string, optional) The block in which to look for the transaction, use "" to skip
4. patterns (boolean, optional, default=false) If true then byteCodePattern and redeemScript objects will be added
Result (if verbose is not set or set to false)
"data" (string) The serialized, hex-encoded data for 'txid'
Result (if verbose is set to true, or numeric value indicating verbosity level greater than 0)
{
"hex" : "data", (string) The serialized, hex-encoded data for 'txid'
"txid" : "id", (string) The transaction id (same as provided)
"hash" : "id", (string) The transaction hash
"size" : n, (numeric) The serialized transaction size
"version" : n, (numeric) The version
"locktime" : ttt, (numeric) The lock time
"vin" : [ (array of json objects)
{
"txid": "id", (string) The transaction id
"vout": n, (numeric)
"scriptSig": { (json object) The script
"asm": "asm", (string) asm
"hex": "hex", (string) hex
"byteCodePattern" : { (json object, optional) Only for patterns == true
"fingerprint" : "str", (string) Single SHA-256 hash of script pattern
"pattern" : "str", (string) Hex-encoded script pattern
"patternAsm" : "str", (string) Script pattern asm
"data" : [ (json array) Script data pushes
"hex", ... (string) Hex-encoded data push
],
"error": true (boolean, optional) Only if there was an error parsing the script (e.g. ending with an incomplete push)
},
"redeemScript" : { (json object, optional) Only for patterns == true and only for p2sh inputs
"asm" : "str", (string) The p2sh redeem script asm
"hex" : "str", (string) The p2sh redeem script hex
"byteCodePattern" : { (json object) Redeem script byte code pattern information
..., Same schema as for scriptSig.byteCodePattern above
"p2shType" : "str" (string) Either "p2sh20" or "p2sh32"
}
},
},
"value" : x.xxx, (numeric) The input value in BCH (available at verbosity level 2)
"scriptPubKey" : { (json object) The previous output's locking script (available at verbosity level 2)
"asm" : "str", (string) The asm
"hex" : "str", (string) The hex
"type" : "str", (string) The type (one of: nonstandard, pubkey, pubkeyhash, scripthash, multisig, nulldata)
"address" : "str", (string, optional) The Bitcoin Cash address (only if well-defined address exists)
"byteCodePattern" : {...} (json object, optional) Only for patterns == true; byte code pattern information
},
"tokenData" : { (json object, optional) CashToken data (verbosity level 2, only if the input contained a token)
"category" : "hex", (string) Token id
"amount" : "xxx", (string) Fungible amount (is a string to support >53-bit amounts)
"nft" : { (json object, optional) NFT data (only if the token has an NFT)
"capability" : "xxx", (string) One of "none", "mutable", "minting"
"commitment" : "hex" (string) NFT commitment formatted as hexadecimal
},
"sequence": n (numeric) The script sequence number
}
}
,...
],
"vout" : [ (array of json objects)
{
"value" : x.xxx, (numeric) The output value in BCH
"n" : n, (numeric) index
"scriptPubKey" : { (json object)
"asm" : "asm", (string) the asm
"hex" : "hex", (string) the hex
"reqSigs" : n, (numeric) The required sigs
"type" : "pubkeyhash", (string) The type, eg 'pubkeyhash'
"addresses" : [ (json array of string)
"address" (string) Bitcoin Cash address
,...
],
"byteCodePattern" : {...} (json object, optional) Only for patterns == true; byte code pattern information
},
"tokenData" : { (json object optional)
"category" : "hex", (string) token id
"amount" : "xxx", (string) fungible amount (is a string to support >53-bit amounts)
"nft" : { (json object optional)
"capability" : "xxx", (string) one of "none", "mutable", "minting"
"commitment" : "hex" (string) NFT commitment
}
}
}
,...
],
"fee" : x.xxx, (numeric) Transaction fee in BCH (available at verbosity level 2)
"blockhash" : "hash", (string) the block hash
"confirmations" : n, (numeric) The confirmations
"time" : ttt, (numeric) The transaction time in seconds since epoch (Jan 1 1970 GMT)
"blocktime" : ttt, (numeric) The block time in seconds since epoch (Jan 1 1970 GMT)
"in_active_chain": b (bool) Whether specified block is in the active chain or not (only presentwith explicit "blockhash" argument)
}
Examples
> bitcoin-cli getrawtransaction "mytxid"
> bitcoin-cli getrawtransaction "mytxid" true
> curl --user myusername --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getrawtransaction", "params": ["mytxid", true] }' -H 'content-type: text/plain;' http://127.0.0.1:8332/
> bitcoin-cli getrawtransaction "mytxid" 2
> bitcoin-cli getrawtransaction "mytxid" false "myblockhash"
> bitcoin-cli getrawtransaction "mytxid" true "myblockhash"
> bitcoin-cli getrawtransaction "mytxid" true "" true
Bitcoin Cash Node Daemon version v28.0.2-23b08f2
Documentation on docs.bitcoincashnode.org reflects the current master branch in Git, and may include API changes that are not yet present in the latest release.