createrawtransaction

Create a transaction spending the given inputs and creating new outputs.

Outputs can be addresses or data.

Returns hex-encoded raw transaction.

Note that the transactionโ€™s inputs are not signed, and it is not stored in the wallet or transmitted to the network.

Argument #1 - inputs

Type: json array, required

The inputs

[
  {                       (json object)
    "txid": "hex",        (string, required) The transaction id
    "vout": n,            (numeric, required) The output number
    "sequence": n,        (numeric, optional, default=depends on the value of the 'replaceable' and 'locktime' arguments) The sequence number
  },
  ...
]

Argument #2 - outputs

Type: json array, required

The outputs (key-value pairs), where none of the keys are duplicated.

That is, each address can only appear once and there can only be one โ€˜dataโ€™ object. For compatibility reasons, a dictionary, which holds the key-value pairs directly, is also accepted as second parameter.

[
  {                       (json object)
    "address": amount,    (numeric or string, required) A key-value pair. The key (string) is the bitcoin address, the value (float or string) is the amount in BTC
  },
  {                       (json object)
    "data": "hex",        (string, required) A key-value pair. The key must be "data", the value is hex-encoded data
  },
  ...
]

Argument #3 - locktime

Type: numeric, optional, default=0

Raw locktime. Non-0 value also locktime-activates inputs

Argument #4 - replaceable

Type: boolean, optional, default=false

Marks this transaction as BIP125-replaceable.

Allows this transaction to be replaced by a transaction with higher fees. If provided, it is an error if explicit sequence numbers are incompatible.

Result

Name

Type

Description

hex

string

hex string of the transaction

Request

curl --location --request POST 'https://btc.api.watchdata.io/node/jsonrpc?api_key=yor_api_key' \
--header 'x-api-key: your_api_key' \
--header 'Content-Type: application/json' \
--data-raw '{
    "jsonrpc": "1.0",
    "id": "curltest",
    "method": "createrawtransaction",
    "params": [
        "[{\"txid\":\"myid\",\"vout\":0}]",
        "[{\"address\":0.01}]"
    ]
}'

Last updated