For the complete documentation index, see llms.txt. This page is also available as Markdown.

createpsbt - Bitcoin

Example code for the createpsbt JSON-RPC method. Complete guide on how to use createpsbt JSON-RPC in GetBlock Web3 documentation.

This method creates an empty Partially Signed Bitcoin Transaction (PSBT) from a set of inputs and outputs, returning it as a base64 string.

Parameters

Parameter
Type
Required
Description

inputs

array

Yes

Inputs, each with a txid and vout

outputs

array

Yes

Outputs mapping addresses to amounts, or data outputs

locktime

number

No

Raw locktime (default: 0)

replaceable

boolean

No

Whether the transaction signals RBF (default: false)

Request

curl --location --request POST 'https://shared.eu-central-1.getblock.io/<ACCESS-TOKEN>/' \
--header 'Content-Type: application/json' \
--data-raw '{
    "jsonrpc": "2.0",
    "method": "createpsbt",
    "params": [[{"txid": "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b", "vout": 0}], [{"bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq": 6.24}]],
    "id": "getblock.io"
}'
example.js
const axios = require('axios');

const response = await axios.post('https://shared.eu-central-1.getblock.io/<ACCESS-TOKEN>/', {
    jsonrpc: '2.0',
    method: 'createpsbt',
    params: [[{"txid": "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b", "vout": 0}], [{"bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq": 6.24}]],
    id: 'getblock.io'
}, {
    headers: { 'Content-Type': 'application/json' }
});

console.log(response.data.result);
example.py
import requests

response = requests.post(
    'https://shared.eu-central-1.getblock.io/<ACCESS-TOKEN>/',
    headers={'Content-Type': 'application/json'},
    json={
        'jsonrpc': '2.0',
        'method': 'createpsbt',
        'params': [[{"txid": "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b", "vout": 0}], [{"bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq": 6.24}]],
        'id': 'getblock.io'
    }
)

print(response.json())

Response

Response Parameters

Parameter
Type
Description

jsonrpc

string

JSON-RPC protocol version ("2.0")

id

string

Request identifier matching the request

result

string

The base64-encoded PSBT

Use Cases

  • PSBT Workflows: Create a PSBT for multi-party signing

  • Hardware Wallets: Build a PSBT for device signing

  • Custody Systems: Prepare PSBTs for offline signers

  • Coordination: Start a collaborative transaction

Error Handling

Error Code
Message
Description

403

Forbidden

Missing or invalid ACCESS-TOKEN

-8

Invalid parameter

A parameter is out of range or malformed

-32601

Method not found

The method is not available on this endpoint

-32602

Invalid params

A parameter is missing or has the wrong type

Last updated

Was this helpful?