> For the complete documentation index, see [llms.txt](https://docs.chainrpc.io/chainrpc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.chainrpc.io/chainrpc/networks/ethereum/json-rpc-methods/eth_sendrawtransaction.md).

# eth\_sendRawTransaction

Submits a pre-signed transaction for broadcast to the Ethereum network.

### REQUEST

```
POST https://<network>.chainrpc.io/v3/YOUR-API-KEY
```

#### HEADERS

```
Content-Type: application/json
```

#### REQUEST PAYLOAD

* `TRANSACTION DATA` *\[required]* - The signed transaction data.

#### EXAMPLE

```bash
## JSON-RPC over HTTPS POST
## Replace YOUR-API-KEY with an API key from your chainRPC Dashboard
## You can also replace mainnet with a different supported network

### The below code sample will fail with "nonce too low" - this is expected because the param represents old transaction data

curl https://eth.chainrpc.io/v3/YOUR-API-KEY \
    -X POST \
    -H "Content-Type: application/json" \
    -d '{"jsonrpc":"2.0","method":"eth_sendRawTransaction","params": ["0xf869018203e882520894f17f52151ebef6c7334fad080c5704d77216b732881bc16d674ec80000801ba02da1c48b670996dcb1f447ef9ef00b33033c48a4fe938f420bec3e56bfd24071a062e0aa78a81bf0290afbc3a9d8e9a068e6d74caa66c5e0fa8a46deaae96b0833"],"id":1}'

## JSON-RPC over WSS##
## Replace YOUR-API-KEY with an API key from your chainRPC Dashboard
## You can also replace mainnet with a different supported network
wscat -c wss://eth.chainrpc.io/v3/YOUR-API-KEY
>{"jsonrpc":"2.0","method":"eth_sendRawTransaction","params":["0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"],"id":1}
```

### RESPONSE

#### RESULT FIELDS

* `TRANSACTION HASH` - 32 Bytes - the transaction hash, or the zero hash if the transaction is not yet available

{% hint style="info" %}
Use `eth_getTransactionReceipt` to get the contract address, after the transaction was mined, when you created a contract.
{% endhint %}

#### BODY

```json
{
    "id": 1,
    "jsonrpc": "2.0",
    "result": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331"
}
```

On Mainnet, Rinkeby, Ropsten and Goerli, if this call causes the EVM to execute a `REVERT` operation, an error response of the following form is returned, with the revert reason pre-decoded as a string (not yet supported on Kovan):

```json
{
    "jsonrpc": "2.0",
    "id": 1,
    "error": {
        "code": 3,
        "message": "execution reverted: Dai/insufficient-balance",
        "data": "0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000184461692f696e73756666696369656e742d62616c616e63650000000000000000"
    }
}
```
