---
title: "Returns consensus transactions with the given transaction hash."
method: GET
path: "/consensus/transactions/{tx_hash}"
---

# Returns consensus transactions with the given transaction hash.

`GET /consensus/transactions/{tx_hash}`

## Path parameters

- `tx_hash` string, required

## Response `200`

The requested consensus transaction(s).

- TransactionList — A list of consensus transactions.
  - `total_count` integer, required — The total number of records that match the query, i.e. the number of records the query would return with limit=infinity.
  - `is_total_count_clipped` boolean, required — Whether total_count is clipped for performance reasons.
  - `transactions` Transaction[], required
    - `block` integer, required — The block height at which this transaction was executed.
    - `index` integer, required — 0-based index of this transaction in its block
    - `timestamp` string, date-time, required — The second-granular consensus time of this tx's block, i.e. roughly when the [block was proposed](https://github.com/tendermint/tendermint/blob/v0.34.x/spec/core/data_structures.md#header).
    - `hash` string, required — The cryptographic hash of this transaction's encoding.
    - `sender` string, required — The address of who sent this transaction.
    - `nonce` integer, required — The nonce used with this transaction, to prevent replay.
    - `fee` string, bigint, required
    - `gas_limit` string, bigint, required
    - `method` 'beacon.PVSSCommit' | 'beacon.PVSSReveal' | 'beacon.VRFProve' | 'consensus.Meta' | 'governance.CastVote' | 'governance.SubmitProposal' | 'keymanager.PublishEphemeralSecret' | 'keymanager.PublishMasterSecret' | 'keymanager.UpdatePolicy' | 'registry.DeregisterEntity' | 'registry.ProveFreshness' | 'registry.RegisterEntity' | 'registry.RegisterNode' | 'registry.RegisterRuntime' | 'registry.UnfreezeNode' | 'roothash.Evidence' | 'roothash.ExecutorCommit' | 'roothash.ExecutorProposerTimeout' | 'roothash.SubmitMsg' | 'staking.AddEscrow' | 'staking.Allow' | 'staking.AmendCommissionSchedule' | 'staking.Burn' | 'staking.ReclaimEscrow' | 'staking.Transfer' | 'staking.Withdraw' | 'keymanager/churp.Apply' | 'keymanager/churp.Confirm' | 'keymanager/churp.Create' | 'keymanager/churp.Update' | 'vault.AuthorizeAction' | 'vault.CancelAction' | 'vault.Create', required
    - `body` object, required — The method call body. This spec does not encode the many possible types; instead, see [the Go API](https://pkg.go.dev/github.com/oasisprotocol/oasis-core/go) of oasis-core. This object will conform to one of the types passed to variable instantiations using `NewMethodName` two levels down the hierarchy, e.g. `MethodTransfer` from `oasis-core/go/staking/api` seen [here](https://pkg.go.dev/github.com/oasisprotocol/oasis-core/go@v0.2300.10/staking/api#pkg-variables).
    - `success` boolean, required — Whether this transaction successfully executed.
    - `error` TxError
      - `module` string — The module of a failed transaction.
      - `code` integer, required — The status code of a failed transaction.
      - `message` string — The message of a failed transaction. This field, like `code` and `module`, can represent an error that originated anywhere in the paratime, i.e. either inside or outside a smart contract. A common special case worth calling out: When the paratime is EVM-compatible (e.g. Emerald or Sapphire) and the error originates inside a smart contract (using `revert` in solidity), the following will be true: - `module` will be "evm" and `code` will be 8; see [here](https://github.com/oasisprotocol/oasis-sdk/blob/runtime-sdk/v0.8.3/runtime-sdk/modules/evm/src/lib.rs#L128) for other possible errors in the `evm` module. - `message` will contain the best-effort human-readable revert reason.
      - `revert_params` EvmAbiParam[] — The error parameters, as decoded using the contract abi. Present only when - the error originated from within a smart contract (e.g. via `revert` in Solidity), and - the contract is verified or the revert reason is a plain String. If this field is present, `message` will include the name of the error, e.g. 'InsufficientBalance'. Note that users should be cautious when evaluating error data since the data origin is not tracked and error information can be faked.
        - `name` string, required — The parameter name.
        - `evm_type` string, required — The solidity type of the parameter.
        - `value` unknown, required

## Other responses

- `400` — A human-readable error message.
- `404` — An empty response indicating that the requested resource was not found.
- `500` — A human-readable error message.

---

[API](https://skmtc.net/oasisprotocol/apis/oasis-nexus-api-v1.md) · [All operations](https://skmtc.net/oasisprotocol/apis/oasis-nexus-api-v1/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/oasisprotocol/oasis-nexus-api-v1/versions/a841981f8ee1/schema)
