eth_sendRawTransaction
Polygon / https://triport.io/polygon
Minimum tier: Free
Last updated:
eth_sendRawTransaction submits an already-signed transaction to Polygon
mainnet for inclusion in a block. You sign the transaction locally with your
private key, RLP-encode it, hex-encode the result, and pass that single
0x-prefixed hex string as the only parameter. Triport never sees or holds
your key — only the signed payload.
On success the method returns the transaction hash immediately. The hash is
returned as soon as the transaction is accepted into the mempool; it does
not mean the transaction has been mined. Polygon's Bor consensus produces
blocks roughly every ~2 seconds, so poll
eth_getTransactionReceipt — or
the transaction-by-hash lookups — with the returned hash to confirm inclusion
and read the final status.
This is the only state-changing method on the Polygon eth surface, and it
sits in its own polygon_send_tx rate-limit category with markedly lower
limits than read methods (3 rps on free vs. 15 rps for reads). Budget your
send rate accordingly and back off on -32003. The method is available from the
free tier upward — no paid tier is required to broadcast transactions.
Gotchas
- Use Polygon's chain ID. The transaction must be signed with EIP-155
replay protection using chain ID
0x89(137). A transaction signed for another chain (e.g. Ethereum mainnet,0x1) is rejected with-32000 invalid senderbefore it ever reaches the mempool, because the recovered signer does not match. - Replay protection is mandatory. Without EIP-155 binding to
0x89, a Polygon transaction could also be valid on other EVM chains — a replay-attack vector. Always sign with the correct chain ID. - Idempotent re-broadcast. Re-submitting the same signed transaction (same
hash) is safe. Depending on the upstream node it returns either the same hash
again or
-32000 already known. Treat both outcomes as success.
Parameters
This method takes no parameters.
Returns
| Field | Type |
|---|---|
| result | object |
Examples
curl https://triport.io/polygon \
-X POST -H 'Content-Type: application/json' \
-H 'Authorization: Bearer <api-key>' \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_sendRawTransaction","params":[]}'const res = await fetch("https://triport.io/polygon", {
method: "POST",
headers: { "Content-Type": "application/json", Authorization: "Bearer <api-key>" },
body: JSON.stringify({
"jsonrpc": "2.0",
"id": 1,
"method": "eth_sendRawTransaction",
"params": []
}),
});
const data = await res.json();import requests
resp = requests.post(
"https://triport.io/polygon",
headers={"Authorization": "Bearer <api-key>"},
json={"jsonrpc":"2.0","id":1,"method":"eth_sendRawTransaction","params":[]},
)
print(resp.json())Usage
- Transport: HTTP (JSON-RPC).
- Chain: Polygon.
- Clusters: mainnet.
- Credit cost: 5 per call.
FAQ
- What does eth_sendRawTransaction do?
- Broadcasts a signed, RLP-encoded transaction to the Polygon mempool and returns its transaction hash.
- How many credits does eth_sendRawTransaction cost?
- eth_sendRawTransaction costs 5 credit(s) per call on Triport by default.
- Is eth_sendRawTransaction available over WebSocket?
- eth_sendRawTransaction is an HTTP JSON-RPC method.