Enterprise feature. Submit a user-signed transaction that includes a shard-matched relayer address. The Relayer validates the shard assignment, co-signs with its Ed25519 key, and broadcasts via P2P gossipsub, covering the gas fee.
Gasless relaying is available to whitelisted enterprise applications. For standard transaction submission, use broadcast instead.
Endpoint
wss://relayer.xoxno.com/ws
Body
Echoed back in the response for client-side correlation.
A user-signed transaction with the relayer field set. Sender’s current account nonce.
EGLD value in atomic units. Use "0" for ESDT transfers.
Receiver address in bech32 format.
Sender address in bech32 format.
Gas price in atomic units.
Base64-encoded transaction payload.
"1" for mainnet, "D" for devnet.
Transaction version. Use 2.
User’s hex-encoded Ed25519 signature. Compute this after setting the relayer field.
Shard-matched relayer address. Must match the sender’s shard. Shard Address 0 erd1l0x0n5yxsfcy93gm0vyvx9m9f7cte9h9vuq4am33ugpw3d5r3hvqx6f59h1 erd12yxd5phejzw83gn8qh6jfz6q9a0ekyyhkfd3c49r03mxw25l3a5swq3nf72 erd13jxp0yjh7gjvzgrg5mj7e8rzhn5lzcye45l0p6e5996d543r7vrq9e50za
Response
"completed", "partial", or "failed".
Transaction hashes for successfully relayed transactions.
Failures, each with index and reason. Zero-based index of the failed transaction.
One of: missing relayer, shard mismatch: sender_shard=X, relayer_shard=Y, unconfigured relayer, signing capacity exceeded, try again later.
{
"action" : "relay" ,
"requestId" : "relay-001" ,
"tx" : {
"nonce" : 42 ,
"value" : "0" ,
"receiver" : "erd1qqqqqqqqqqqqqpgq..." ,
"sender" : "erd1spyavw0956vq68xj8y4tenjpq2wd5a9p2c6j8gsz7ztyrnpxrruqzu66jx" ,
"gasPrice" : 1000000000 ,
"gasLimit" : 50000000 ,
"data" : "c3dhcA==" ,
"chainID" : "1" ,
"version" : 2 ,
"signature" : "a1b2c3d4..." ,
"relayer" : "erd1l0x0n5yxsfcy93gm0vyvx9m9f7cte9h9vuq4am33ugpw3d5r3hvqx6f59h"
}
}
{
"action" : "relay" ,
"requestId" : "relay-001" ,
"status" : "completed" ,
"hashes" : [
"d5e8c9a1b3f7..."
],
"failed" : []
}
{
"action" : "relay" ,
"requestId" : "relay-001" ,
"status" : "failed" ,
"hashes" : [],
"failed" : [
{ "index" : 0 , "reason" : "shard mismatch: sender_shard=1, relayer_shard=0" }
]
}