qn_broadcastRawTransaction RPC Method
Please note that this RPC method requires the Transaction Broadcast add-on enabled on your QuickNode endpoint.
Parameters
data
string
REQUIRED
The signed transaction (typically signed with a library, using your private key)
Returns
result
The transaction hash, or the zero hash if the transaction is not yet available
Request
curl https://docs-demo.matic.quiknode.pro/ \ -X POST \ -H "Content-Type: application/json" \ --data '{"jsonrpc":"2.0","method":"qn_broadcastRawTransaction","params":["SIGNED_TRANSACTION"],"id":1}'
require 'ethereum.rb' require 'eth' client = Ethereum::HttpClient.new('https://docs-demo.matic.quiknode.pro/') key = Eth::Key.new priv: "{your-key-here}" amount = 50000000000 payload = { chain_id: Eth::Chain::GOERLI, #replace with correct chain! nonce: 5, #replace with correct nonce! priority_fee: 3 * Eth::Unit::GWEI, max_gas_fee: 21 * Eth::Unit::GWEI, gas_limit: 69_420, to: "0xaC2d0226AdE52e6b4CCc97359359f01e34d50352", value: amount, } tx = Eth::Tx.new(payload) tx.sign(key) response = client.send_command('qn_broadcastRawTransaction', [tx.hex]) puts response
import { ethers } from "ethers"; (async () => { const provider = new ethers.JsonRpcProvider("https://docs-demo.matic.quiknode.pro/"); const wallet = new ethers.Wallet("{your-key-here}"); let tx = { to: "0xaC2d0226AdE52e6b4CCc97359359f01e34d50352", value: ethers.utils.parseEther("0.05"), gasLimit: 8000000, gasPrice: "0x07f9acf02", }; let signedTx = await wallet.signTransaction(tx); console.log(signedTx); let sentTx = await provider.send("qn_broadcastRawTransaction", [signedTx]); console.log(sentTx); })();
var myHeaders = new Headers(); myHeaders.append("Content-Type", "application/json"); var raw = JSON.stringify({ "jsonrpc": "2.0", "method": "qn_broadcastRawTransaction", "params": [ "SIGNED_TRANSACTION" ], "id": 1 }); var requestOptions = { method: 'POST', headers: myHeaders, body: raw, redirect: 'follow' }; fetch("https://docs-demo.matic.quiknode.pro/", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));
import requests import json url = "https://docs-demo.matic.quiknode.pro/" payload = json.dumps({ "jsonrpc": "2.0", "method": "qn_broadcastRawTransaction", "params": [ "SIGNED_TRANSACTION" ], "id": 1 }) headers = { 'Content-Type': 'application/json' } response = requests.request("POST", url, headers=headers, data=payload) print(response.text)
require "uri" require "json" require "net/http" url = URI("https://docs-demo.matic.quiknode.pro/") https = Net::HTTP.new(url.host, url.port) https.use_ssl = true request = Net::HTTP::Post.new(url) request["Content-Type"] = "application/json" request.body = JSON.dump({ "jsonrpc": "2.0", "method": "qn_broadcastRawTransaction", "params": [ "SIGNED_TRANSACTION" ], "id": 1 }) response = https.request(request) puts response.read_body
from web3 import Web3, HTTPProvider w3 = Web3(HTTPProvider('https://docs-demo.matic.quiknode.pro/')) signed_txn = w3.eth.account.sign_transaction(dict( nonce=w3.eth.get_transaction_count("{your-public-address-here}"), maxFeePerGas=3000000000, maxPriorityFeePerGas=2000000000, gas=100000, to='0xaC2d0226AdE52e6b4CCc97359359f01e34d50352', value=50000000000, data=b'', type=2, chainId=1, ), "{your-private-key-here}", ) txHash = w3.provider.make_request("qn_broadcastRawTransaction", [signed_txn.rawTransaction]) print(w3.toHex(txHash))
Don't have an account yet?
Create your QuickNode endpoint in seconds and start building
Get started for free