Skip to main content
Version: Next

eth_signTransaction

Returns an RLP encoded transaction signed by the specified account.

Parameters (by position)

Transaction object required

Transaction object generic to all types


Show Transaction object

Transaction fields

  • accessList array<object>

    EIP-2930 access list


    Show accessList object

    accessList fields

    EIP-2930 access list

    • address string required

      hex encoded address

      Match pattern: ^0x[0-9a-fA-F]{40}$


    • storageKeys array<string> required

      32 byte hex value

      Match pattern: ^0x[0-9a-f]{64}$


    • additionalProperties false


  • authorizationList array<object>

    EIP-7702 authorization list


    Show authorizationList object

    authorizationList fields

    EIP-7702 authorization list

    • address string required

      hex encoded address

      Match pattern: ^0x[0-9a-fA-F]{40}$


    • chainId string required

      Chain ID on which this transaction is valid

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • nonce string required

      nonce

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • r string required

      r

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]{0,63})$


    • s string required

      s

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]{0,63})$


    • yParity string required

      The parity (0 for even, 1 for odd) of the y-value of the secp256k1 signature

      Match pattern: ^0x[0-9a-f]{1,2}$


    • additionalProperties true


  • blobVersionedHashes array<string>

    List of versioned blob hashes associated with the transaction's EIP-4844 data blobs.

    Match pattern: ^0x[0-9a-f]{64}$


  • blobs array<string>

    Raw blob data.

    Match pattern: ^0x[0-9a-f]*$


  • chainId string

    Chain ID that this transaction is valid on.

    Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


  • commitments array<string>

    List of blob commitments as per EIP-4844.

    Match pattern: ^0x[0-9a-f]*$


  • from string

    from address

    Match pattern: ^0x[0-9a-fA-F]{40}$


  • gas string

    gas limit

    Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


  • gasPrice string

    The gas price willing to be paid by the sender in wei

    Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


  • input string

    input data

    Match pattern: ^0x[0-9a-f]*$


  • maxFeePerBlobGas string

    The maximum total fee per gas the sender is willing to pay for blob gas in wei

    Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


  • maxFeePerGas string

    The maximum total fee per gas the sender is willing to pay (includes the network / base fee and miner / priority fee) in wei

    Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


  • maxPriorityFeePerGas string

    Maximum fee per gas the sender is willing to pay to miners in wei

    Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


  • nonce string

    nonce

    Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


  • proofs array<string>

    List of blob proofs. Pre-PeerDAS this contains one KZG proof per blob (length == len(blobs)). Post-PeerDAS this contains cell proofs with length == 128 * len(blobs).

    Match pattern: ^0x[0-9a-f]*$


  • to null or string


    Show Option 1 Contract Creation (null) null

    Contract Creation (null) fields

    to null

    Contract Creation (null)


    Show Option 2 Address string

    Address fields

    to string

    Address

    Match pattern: ^0x[0-9a-fA-F]{40}$


  • type string

    type

    Match pattern: ^0x[0-9a-f]{1,2}$


  • value string

    value

    Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


  • additionalProperties false


Result

Transaction result object

Encoded and raw signed transaction object.


Show Transaction result object

Transaction result fields

  • raw string required

    raw

    Match pattern: ^0x[0-9a-f]*$


  • tx object or object or object or object or object required


    Show Option 1 Signed 7702 Transaction object

    Signed 7702 Transaction fields

    tx object required

    Signed 7702 Transaction


    Show tx object

    tx fields

    • accessList array<object> required

      EIP-2930 access lists


      Show accessList object

      accessList fields

      EIP-2930 access lists

      • address string required

        hex encoded address

        Match pattern: ^0x[0-9a-fA-F]{40}$


      • storageKeys array<string> required

        32 byte hex value

        Match pattern: ^0x[0-9a-f]{64}$


      • additionalProperties false


    • authorizationList array<object> required

      List of authorizations for the transaction


      Show authorizationList object

      authorizationList fields

      List of authorizations for the transaction

      • address string required

        hex encoded address

        Match pattern: ^0x[0-9a-fA-F]{40}$


      • chainId string required

        Chain ID on which this transaction is valid

        Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


      • nonce string required

        nonce

        Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


      • r string required

        r

        Match pattern: ^0x(0|[1-9a-f][0-9a-f]{0,63})$


      • s string required

        s

        Match pattern: ^0x(0|[1-9a-f][0-9a-f]{0,63})$


      • yParity string required

        The parity (0 for even, 1 for odd) of the y-value of the secp256k1 signature

        Match pattern: ^0x[0-9a-f]{1,2}$


      • additionalProperties true


    • chainId string required

      Chain ID that this transaction is valid on

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • gas string required

      gas limit

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • gasPrice string

      The effective gas price paid by the sender in wei. For transactions not yet included in a block, this value should be set equal to the max fee per gas. This field is DEPRECATED, please transition to using effectiveGasPrice in the receipt object going forward.

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • input string required

      input data

      Match pattern: ^0x[0-9a-f]*$


    • maxFeePerGas string required

      The maximum total fee per gas the sender is willing to pay (includes the network / base fee and miner / priority fee) in wei

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • maxPriorityFeePerGas string required

      Maximum fee per gas the sender is willing to pay to miners in wei

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • nonce string required

      nonce

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • r string required

      r

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • s string required

      s

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • to string required

      to address

      Match pattern: ^0x[0-9a-fA-F]{40}$


    • type string required

      type

      Match pattern: ^0x4$


    • v string

      For backwards compatibility, v is optionally provided as an alternative to yParity. This field is DEPRECATED and all use of it should migrate to yParity.

      Match pattern: ^0x[0-9a-f]{1,2}$


    • value string required

      value

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • yParity string required

      The parity (0 for even, 1 for odd) of the y-value of the secp256k1 signature.

      Match pattern: ^0x[0-9a-f]{1,2}$


    • additionalProperties true


    Show Option 2 Signed 4844 Transaction object

    Signed 4844 Transaction fields

    tx object required

    Signed 4844 Transaction


    Show tx object

    tx fields

    • accessList array<object> required

      EIP-2930 access list


      Show accessList object

      accessList fields

      EIP-2930 access list

      • address string required

        hex encoded address

        Match pattern: ^0x[0-9a-fA-F]{40}$


      • storageKeys array<string> required

        32 byte hex value

        Match pattern: ^0x[0-9a-f]{64}$


      • additionalProperties false


    • blobVersionedHashes array<string> required

      List of versioned blob hashes associated with the transaction's EIP-4844 data blobs

      Match pattern: ^0x[0-9a-f]{64}$


    • chainId string required

      Chain ID that this transaction is valid on

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • gas string required

      gas limit

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • gasPrice string

      The effective gas price paid by the sender in wei. For transactions not yet included in a block, this value should be set equal to the max fee per gas. This field is DEPRECATED, please transition to using effectiveGasPrice in the receipt object going forward.

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • input string required

      input data

      Match pattern: ^0x[0-9a-f]*$


    • maxFeePerBlobGas string required

      The maximum total fee per gas the sender is willing to pay for blob gas in wei

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • maxFeePerGas string required

      The maximum total fee per gas the sender is willing to pay (includes the network / base fee and miner / priority fee) in wei

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • maxPriorityFeePerGas string required

      Maximum fee per gas the sender is willing to pay to miners in wei

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • nonce string required

      nonce

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • r string required

      r

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • s string required

      s

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • to string required

      to address

      Match pattern: ^0x[0-9a-fA-F]{40}$


    • type string required

      type

      Match pattern: ^0x3$


    • v string

      For backwards compatibility, v is optionally provided as an alternative to yParity. This field is DEPRECATED and all use of it should migrate to yParity.

      Match pattern: ^0x[0-9a-f]{1,2}$


    • value string required

      value

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • yParity string required

      The parity (0 for even, 1 for odd) of the y-value of the secp256k1 signature.

      Match pattern: ^0x[0-9a-f]{1,2}$


    • additionalProperties true


    Show Option 3 Signed 1559 Transaction object

    Signed 1559 Transaction fields

    tx object required

    Signed 1559 Transaction


    Show tx object

    tx fields

    • accessList array<object> required

      EIP-2930 access list


      Show accessList object

      accessList fields

      EIP-2930 access list

      • address string required

        hex encoded address

        Match pattern: ^0x[0-9a-fA-F]{40}$


      • storageKeys array<string> required

        32 byte hex value

        Match pattern: ^0x[0-9a-f]{64}$


      • additionalProperties false


    • chainId string required

      Chain ID that this transaction is valid on.

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • gas string required

      gas limit

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • gasPrice string required

      The effective gas price paid by the sender in wei. For transactions not yet included in a block, this value should be set equal to the max fee per gas. This field is DEPRECATED, please transition to using effectiveGasPrice in the receipt object going forward.

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • input string required

      input data

      Match pattern: ^0x[0-9a-f]*$


    • maxFeePerGas string required

      The maximum total fee per gas the sender is willing to pay (includes the network / base fee and miner / priority fee) in wei

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • maxPriorityFeePerGas string required

      Maximum fee per gas the sender is willing to pay to miners in wei

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • nonce string required

      nonce

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • r string required

      r

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • s string required

      s

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • to null or string


      Show Option 1 Contract Creation (null) null

      Contract Creation (null) fields

      to null

      Contract Creation (null)


      Show Option 2 Address string

      Address fields

      to string

      Address

      Match pattern: ^0x[0-9a-fA-F]{40}$


    • type string required

      type

      Match pattern: ^0x2$


    • v string

      For backwards compatibility, v is optionally provided as an alternative to yParity. This field is DEPRECATED and all use of it should migrate to yParity.

      Match pattern: ^0x[0-9a-f]{1,2}$


    • value string required

      value

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • yParity string required

      The parity (0 for even, 1 for odd) of the y-value of the secp256k1 signature.

      Match pattern: ^0x[0-9a-f]{1,2}$


    • additionalProperties true


    Show Option 4 Signed 2930 Transaction object

    Signed 2930 Transaction fields

    tx object required

    Signed 2930 Transaction


    Show tx object

    tx fields

    • accessList array<object> required

      EIP-2930 access list


      Show accessList object

      accessList fields

      EIP-2930 access list

      • address string required

        hex encoded address

        Match pattern: ^0x[0-9a-fA-F]{40}$


      • storageKeys array<string> required

        32 byte hex value

        Match pattern: ^0x[0-9a-f]{64}$


      • additionalProperties false


    • chainId string required

      Chain ID that this transaction is valid on.

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • gas string required

      gas limit

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • gasPrice string required

      The gas price willing to be paid by the sender in wei

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • input string required

      input data

      Match pattern: ^0x[0-9a-f]*$


    • nonce string required

      nonce

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • r string required

      r

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • s string required

      s

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • to null or string


      Show Option 1 Contract Creation (null) null

      Contract Creation (null) fields

      to null

      Contract Creation (null)


      Show Option 2 Address string

      Address fields

      to string

      Address

      Match pattern: ^0x[0-9a-fA-F]{40}$


    • type string required

      type

      Match pattern: ^0x1$


    • v string

      For backwards compatibility, v is optionally provided as an alternative to yParity. This field is DEPRECATED and all use of it should migrate to yParity.

      Match pattern: ^0x[0-9a-f]{1,2}$


    • value string required

      value

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • yParity string required

      The parity (0 for even, 1 for odd) of the y-value of the secp256k1 signature.

      Match pattern: ^0x[0-9a-f]{1,2}$


    • additionalProperties true


    Show Option 5 Signed Legacy Transaction object

    Signed Legacy Transaction fields

    tx object required

    Signed Legacy Transaction


    Show tx object

    tx fields

    • chainId string

      Chain ID that this transaction is valid on.

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • gas string required

      gas limit

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • gasPrice string required

      The gas price willing to be paid by the sender in wei

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • input string required

      input data

      Match pattern: ^0x[0-9a-f]*$


    • nonce string required

      nonce

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • r string required

      r

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • s string required

      s

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • to null or string


      Show Option 1 Contract Creation (null) null

      Contract Creation (null) fields

      to null

      Contract Creation (null)


      Show Option 2 Address string

      Address fields

      to string

      Address

      Match pattern: ^0x[0-9a-fA-F]{40}$


    • type string required

      type

      Match pattern: ^0x0$


    • v string required

      v

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • value string required

      value

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


    • additionalProperties true


  • additionalProperties true


Examples

eth_signTransaction example

Request

{
"params": [
{
"from": "0x9d8a62f656a8d1615c1294fd71e9cfb3e4855a4f",
"gas": "0x76c0",
"gasPrice": "0x9184e72a000",
"input": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675",
"nonce": "0x9",
"to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567",
"value": "0x9184e72a"
}
]
}

Response

{
"raw": "0xf892098609184e72a0008276c094d46e8dd67c5d32be8058bb8eb970870f07244567849184e72aa9d46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f07244567526a0839ebaab7774ffdae60d418fc8b4192d2cb861ac31acbb5fef26027d1b8f10aea015396a78493395691c10fccc33ec13f2eeb96a3ba2b4ca1652c91bb2b348d12b",
"tx": {
"chainId": "0x1",
"gas": "0x76c0",
"gasPrice": "0x9184e72a000",
"input": "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675",
"nonce": "0x9",
"r": "0x839ebaab7774ffdae60d418fc8b4192d2cb861ac31acbb5fef26027d1b8f10ae",
"s": "0x15396a78493395691c10fccc33ec13f2eeb96a3ba2b4ca1652c91bb2b348d12b",
"to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567",
"type": "0x0",
"v": "0x26",
"value": "0x9184e72a"
}
}