> For the complete documentation index, see [llms.txt](https://docs.seismic.systems/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.seismic.systems/clients/python/api-reference/transaction-types/unsigned-seismic-tx.md).

# UnsignedSeismicTx

Complete unsigned Seismic transaction

All fields of a `TxSeismic` (type `0x4a`) transaction before signing.

## Definition

```python
@dataclass(frozen=True)
class UnsignedSeismicTx:
    chain_id: int
    nonce: int
    gas_price: int
    gas: int
    to: ChecksumAddress | None
    value: int
    data: HexBytes
    seismic: SeismicElements
    authorization_list: list[SignedAuthorization] = field(default_factory=list)
    gas_payment: GasPayment = field(default_factory=GasPayment.auto)
```

## Fields

| Field                | Type                                                                                     | Description                                                                                        |
| -------------------- | ---------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| `chain_id`           | `int`                                                                                    | Numeric chain identifier                                                                           |
| `nonce`              | `int`                                                                                    | Sender's transaction count                                                                         |
| `gas_price`          | `int`                                                                                    | Gas price in wei                                                                                   |
| `gas`                | `int`                                                                                    | Gas limit                                                                                          |
| `gas_payment`        | [`GasPayment`](/clients/python/api-reference/transaction-types/gas-payment.md)           | Resolved public signed selection; defaults to Auto during construction, always present on the wire |
| `authorization_list` | `list[SignedAuthorization]`                                                              | Authorization tuples, default empty; committed by the EIP-712 hash                                 |
| `to`                 | `ChecksumAddress \| None`                                                                | Recipient address, or `None` for contract creation                                                 |
| `value`              | `int`                                                                                    | Amount of wei to transfer                                                                          |
| `data`               | `HexBytes`                                                                               | **Encrypted** calldata (ciphertext)                                                                |
| `seismic`            | [`SeismicElements`](/clients/python/api-reference/transaction-types/seismic-elements.md) | Seismic-specific encryption and expiry fields                                                      |

## Example

```python
from seismic_web3 import sign_seismic_tx_eip712, PrivateKey

unsigned_tx = UnsignedSeismicTx(...)

signed_tx = sign_seismic_tx_eip712(unsigned_tx, PrivateKey(...))
tx_hash = w3.eth.send_raw_transaction(signed_tx)
```

## Notes

* The `data` field contains encrypted calldata — plaintext is not recoverable without the TEE's private key
* Created automatically by the SDK's write methods; visible in [`DebugWriteResult`](/clients/python/api-reference/transaction-types/debug-write-result.md) for inspection
* Compatible with both raw signing (`message_version=0`) and EIP-712 (`message_version=2`)

## See Also

* [SeismicElements](/clients/python/api-reference/transaction-types/seismic-elements.md) — Seismic-specific fields
* [sign\_seismic\_tx\_eip712](/clients/python/api-reference/eip712/sign-seismic-tx-eip712.md) — sign this transaction
* [DebugWriteResult](/clients/python/api-reference/transaction-types/debug-write-result.md) — contains UnsignedSeismicTx
* [build\_seismic\_typed\_data](/clients/python/api-reference/eip712/build-seismic-typed-data.md) — convert to EIP-712 dict


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.seismic.systems/clients/python/api-reference/transaction-types/unsigned-seismic-tx.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
