Skip to main content
POST
/
v1
/
broadcast
Broadcast pre-signed transactions
curl --request POST \
  --url https://relayer.xoxno.com/v1/broadcast \
  --header 'Content-Type: application/json' \
  --data '
{
  "transactions": [
    {
      "nonce": 42,
      "value": "1000000000000000000",
      "receiver": "erd1qqqqqqqqqqqqqpgq5rf2unca5uen2eqkvlh3re25qk4trspk0n4sy8qlmc",
      "sender": "erd1qyu5wthldzr8wx5c9ucg8kjagg0jfs53s8nr3zpz3hypefsdd8ssycr6th",
      "gasPrice": 1000000000,
      "gasLimit": 50000,
      "data": "c3dhcEV4YWN0QW1vdW50SW4=",
      "chainID": "1",
      "version": 2,
      "signature": "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4"
    }
  ]
}
'
const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
transactions: [
{
nonce: 42,
value: '1000000000000000000',
receiver: 'erd1qqqqqqqqqqqqqpgq5rf2unca5uen2eqkvlh3re25qk4trspk0n4sy8qlmc',
sender: 'erd1qyu5wthldzr8wx5c9ucg8kjagg0jfs53s8nr3zpz3hypefsdd8ssycr6th',
gasPrice: 1000000000,
gasLimit: 50000,
data: 'c3dhcEV4YWN0QW1vdW50SW4=',
chainID: '1',
version: 2,
signature: 'a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4'
}
]
})
};

fetch('https://relayer.xoxno.com/v1/broadcast', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
import requests

url = "https://relayer.xoxno.com/v1/broadcast"

payload = { "transactions": [
{
"nonce": 42,
"value": "1000000000000000000",
"receiver": "erd1qqqqqqqqqqqqqpgq5rf2unca5uen2eqkvlh3re25qk4trspk0n4sy8qlmc",
"sender": "erd1qyu5wthldzr8wx5c9ucg8kjagg0jfs53s8nr3zpz3hypefsdd8ssycr6th",
"gasPrice": 1000000000,
"gasLimit": 50000,
"data": "c3dhcEV4YWN0QW1vdW50SW4=",
"chainID": "1",
"version": 2,
"signature": "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4"
}
] }
headers = {"Content-Type": "application/json"}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
false
{
  "hashes": [
    "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6abcd"
  ],
  "failed": []
}
{
"error": "transactions payload cannot be empty"
}

Body

application/json
transactions
object[]
required

Batch of fully signed transactions to broadcast via P2P gossipsub.

Minimum array length: 1

Response

Batch processed. Check failed array for per-transaction errors.

hashes
string[]

Transaction hashes for successfully broadcast transactions.

failed
object[]

Per-transaction errors for items that failed broadcast.