createpsbt
The createpsbt method is utilized to create a transaction in the Partially Signed Transaction format, implementing the Creator role in the transaction process. This method is essential for initiati...
createpsbt
Overview
The 'createpsbt' method is utilized to create a transaction in the Partially Signed Transaction format, implementing the Creator role in the transaction process. This method is essential for initiating transactions within the Bitcoin network through CoinAPI.
Request
shell
wget --no-check-certificate --quiet \
--method POST \
--timeout=0 \
--header 'Content-Type: application/json' \
--header 'accept: application/json' \
--header 'X-CoinAPI-Key: 4303fb63-adec-42dc-b571-74bc2f2a5167' \
--body-data '{"jsonrpc":"2.0","id":1,"method":"createpsbt","params": [ ]}' \
'https://bitcoin-mainnet.node.coinapi.io'csharp
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://bitcoin-mainnet.node.coinapi.io");
request.Headers.Add("accept", "application/json");
request.Headers.Add("X-CoinAPI-Key", "73034021-THIS-IS-SAMPLE-KEY");
var content = new StringContent("{\r\n \"jsonrpc\": \"1.0\",\r\n \"id\": \"1\",\r\n \"method\": \"createpsbt\",\r\n \"params\": []\r\n}\r\n", null, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());php
<?php
$client = new Client();
$headers = [
'Content-Type' => 'application/json',
'accept' => 'application/json',
'X-CoinAPI-Key' => '73034021-THIS-IS-SAMPLE-KEY'
];
$body = '{
"jsonrpc": "1.0",
"id": "1",
"method": "createpsbt",
"params": []
}';
$request = new Request('POST', 'https://bitcoin-mainnet.node.coinapi.io', $headers, $body);
$res = $client->sendAsync($request)->wait();
echo $res->getBody();
?>python
import requests
import json
url = "https://bitcoin-mainnet.node.coinapi.io"
payload = json.dumps({
"jsonrpc": "1.0",
"id": "1",
"method": "createpsbt",
"params": []
})
headers = {
'Content-Type': 'application/json',
'accept': 'application/json',
'X-CoinAPI-Key': '73034021-THIS-IS-SAMPLE-KEY'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)javascript
var myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
myHeaders.append("accept", "application/json");
myHeaders.append("X-CoinAPI-Key", "73034021-THIS-IS-SAMPLE-KEY");
var raw = JSON.stringify({
"jsonrpc": "1.0",
"id": "1",
"method": "createpsbt",
"params": []
});
var requestOptions = {
method: 'POST',
headers: myHeaders,
body: raw,
redirect: 'follow'
};
fetch("https://bitcoin-mainnet.node.coinapi.io", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));go
package main
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://bitcoin-mainnet.node.coinapi.io"
method := "POST"
payload := strings.NewReader(`{`+"
"+`
"jsonrpc": "1.0",`+"
"+`
"id": "1",`+"
"+`
"method": "createpsbt",`+"
"+`
"params": []`+"
"+`
}`+"
"+`
`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Content-Type", "application/json")
req.Header.Add("accept", "application/json")
req.Header.Add("X-CoinAPI-Key", "73034021-THIS-IS-SAMPLE-KEY")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}ruby
require "uri"
require "json"
require "net/http"
url = URI("https://bitcoin-mainnet.node.coinapi.io")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request["accept"] = "application/json"
request["X-CoinAPI-Key"] = "73034021-THIS-IS-SAMPLE-KEY"
request.body = JSON.dump({
"jsonrpc": "1.0",
"id": "1",
"method": "createpsbt",
"params": []
})
response = https.request(request)
puts response.read_bodyjava
OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\r\n \"jsonrpc\": \"1.0\",\r\n \"id\": \"1\",\r\n \"method\": \"createpsbt\",\r\n \"params\": []\r\n}\r\n");
Request request = new Request.Builder()
.url("https://bitcoin-mainnet.node.coinapi.io")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.addHeader("accept", "application/json")
.addHeader("X-CoinAPI-Key", "73034021-THIS-IS-SAMPLE-KEY")
.build();
Response response = client.newCall(request).execute();Request Parameters
- Inputs: JSON array, required. Contains the JSON objects representing the transaction inputs.
- Outputs: JSON array, required. Contains the outputs as key-value pairs where none of the keys are duplicated. Each address can only appear once and there can only be one 'data' object.
- Locktime: Numeric, optional, default=0. Represents the raw locktime. A non-zero value also locktime-activates inputs.
- Replaceable: Boolean, optional, default=false. Marks the transaction as BIP125 replaceable, allowing it to be replaced by a transaction with higher fees.
Response
{
"id": 1,
"result": {
"str": "string",
"description": "The resulting raw transaction (base64-encoded string)"
},
"error": null,
"jsonrpc": "2.0"
}createmultisig
The createmultisig method creates a multi-signature address with n signature of m keys required.
createrawtransaction
The createrawtransaction method llows you to create a transaction by specifying the inputs and outputs. This method returns a hex-encoded raw transaction. Note that the transaction's inputs are not...